1#![doc(html_root_url = "https://docs.rs/rbt-datalake/0.4.0")]
34
35pub mod core;
36pub mod engine;
37pub mod json;
38pub mod materializer;
39pub mod scan;
40pub mod testing;
41
42pub use core::{
45 model_has_test_contract, parse_select_spec, resolve_scan_path, scan_path_exists,
46 BronzeCheckMode, BronzeDiagnostic, BronzeValidationReport, ColumnMeta, DependencyRef,
47 DiagnosticSeverity, IcebergConfig, IcebergWriteMode, Materialization, MaterializeConfig,
48 MaterializeMode, ModelDag, ModelLayer, ModelNode, ModelTests, OutputFormat, PathGlobSet,
49 RbtProjectConfig, RbtTemplateEngine, RefBackend, RefStrategy, ScanConfig, SelectMode,
50 SelectToken, SourceFormat, SqlModelParser, StagingFrontmatter, DEFAULT_MAX_ROW_GROUP_BYTES,
51 DEFAULT_MAX_ROW_GROUP_ROWS, DEFAULT_MEMTABLE_MAX_ROWS, DEFAULT_PROTOBUF_MAX_PAYLOAD_BYTES,
52};
53
54pub use engine::{
55 register_bronze_for_model, register_bronze_sources_for_dag, BronzeRegistrationMode,
56 BronzeSourceMeta, BronzeTableProvider, DagExecutionSummary, PreviewResult, RbtEngineBuilder,
57 TransformationEngine,
58};
59
60pub use materializer::{
61 materialize_stream, sibling_iceberg_dir, verify_iceberg_catalog_table,
62 write_iceberg_catalog_batches, write_iceberg_fs_table, write_parquet_stream,
63 IcebergCatalogOptions, IcebergCatalogWriteStats, MaterializeWriteOptions, MultiFormatWriter,
64 StreamWriteStats, WapMaterializer, WapStatus,
65};
66
67pub use json::{JShiftExtractor, JsonExtractSpec};
68pub use scan::{parse_hive_partitions, LakeScanner, ScanRequest};
69
70pub use testing::{
71 assertions_from_model_tests, Assertion, RecordBatchValidator, StreamingAssertionRunner,
72 UniqueKeyTracker, ValidationResult,
73};
74
75pub const VERSION: &str = env!("CARGO_PKG_VERSION");