From 38b69578a25b21909be03f4aa956eb4f3a9f8295 Mon Sep 17 00:00:00 2001 From: Li Feiyang Date: Thu, 21 Aug 2025 11:57:53 +0800 Subject: [PATCH 1/2] refactor: enhance forward declarations in type_fwd.h to reduce compile dependencies --- src/iceberg/type_fwd.h | 23 ++++++++++++++++++----- 1 file changed, 18 insertions(+), 5 deletions(-) diff --git a/src/iceberg/type_fwd.h b/src/iceberg/type_fwd.h index 0135422c1..7eb3681ec 100644 --- a/src/iceberg/type_fwd.h +++ b/src/iceberg/type_fwd.h @@ -127,16 +127,29 @@ struct ManifestList; class ManifestReader; class ManifestListReader; +class ManifestWriter; +class ManifestListWriter; -/// ---------------------------------------------------------------------------- -/// TODO: Forward declarations below are not added yet. -/// ---------------------------------------------------------------------------- +class Reader; +class Writer; -class StructLike; +class Avro; + +class ScanTask; +class DataTableScan; + +class Literal; + +class IcebergError; +class True; +class False; +class And; +class Or; + +class StructLike; class MetadataUpdate; class UpdateRequirement; - class AppendFiles; } // namespace iceberg From fc2a13b1d39a7145205686d8a16ca3161e1ad3d2 Mon Sep 17 00:00:00 2001 From: Li Feiyang Date: Thu, 21 Aug 2025 14:51:52 +0800 Subject: [PATCH 2/2] complete --- src/iceberg/type_fwd.h | 21 +++++---------------- 1 file changed, 5 insertions(+), 16 deletions(-) diff --git a/src/iceberg/type_fwd.h b/src/iceberg/type_fwd.h index 7eb3681ec..09d836e8e 100644 --- a/src/iceberg/type_fwd.h +++ b/src/iceberg/type_fwd.h @@ -115,8 +115,11 @@ enum class SnapshotRefType; enum class TransformType; class Expression; +class Literal; +class DataTableScan; class FileScanTask; +class ScanTask; class TableScan; class TableScanBuilder; @@ -125,28 +128,14 @@ struct ManifestEntry; struct ManifestFile; struct ManifestList; -class ManifestReader; class ManifestListReader; -class ManifestWriter; class ManifestListWriter; +class ManifestReader; +class ManifestWriter; class Reader; class Writer; -class Avro; - -class ScanTask; -class DataTableScan; - -class Literal; - -class IcebergError; - -class True; -class False; -class And; -class Or; - class StructLike; class MetadataUpdate; class UpdateRequirement;