@@ -507,7 +507,7 @@ mod _const_schema {
507
507
}
508
508
509
509
/// Entry in a manifest list.
510
- #[ derive( Debug , PartialEq , Clone ) ]
510
+ #[ derive( Debug , PartialEq , Clone , Eq , Hash ) ]
511
511
pub struct ManifestFile {
512
512
/// field: 500
513
513
///
@@ -590,14 +590,19 @@ impl ManifestFile {
590
590
self . added_files_count . is_none ( ) || self . added_files_count . unwrap ( ) > 0
591
591
}
592
592
593
+ /// Checks whether this manifest contains entries with DELETED status.
594
+ pub fn has_deleted_files ( & self ) -> bool {
595
+ self . deleted_files_count . is_none ( ) || self . deleted_files_count . unwrap ( ) > 0
596
+ }
597
+
593
598
/// Checks if the manifest file has any existed files.
594
599
pub fn has_existing_files ( & self ) -> bool {
595
600
self . existing_files_count . is_none ( ) || self . existing_files_count . unwrap ( ) > 0
596
601
}
597
602
}
598
603
599
604
/// The type of files tracked by the manifest, either data or delete files; Data(0) for all v1 manifests
600
- #[ derive( Debug , PartialEq , Clone , Copy , Eq ) ]
605
+ #[ derive( Debug , PartialEq , Clone , Copy , Eq , Hash ) ]
601
606
pub enum ManifestContentType {
602
607
/// The manifest content is data.
603
608
Data = 0 ,
@@ -668,7 +673,7 @@ impl ManifestFile {
668
673
/// Field summary for partition field in the spec.
669
674
///
670
675
/// Each field in the list corresponds to a field in the manifest file’s partition spec.
671
- #[ derive( Debug , PartialEq , Eq , Clone , Default ) ]
676
+ #[ derive( Debug , PartialEq , Eq , Clone , Default , Hash ) ]
672
677
pub struct FieldSummary {
673
678
/// field: 509
674
679
///
0 commit comments