1#![forbid(unsafe_code)]
33
34pub mod catalog;
35pub mod constants;
36pub mod constraints;
37pub mod ddl;
38pub mod diagnostics;
40pub mod gather;
41pub mod metadata;
42mod planner;
43pub mod reserved;
44pub mod resolvers;
45pub mod schema_ext;
46mod sys_catalog;
47pub mod view;
48pub mod expr {
49 pub use llkv_expr::expr::*;
50}
51
52pub mod table;
53pub mod types;
54
55pub mod stream;
56
57pub use catalog::{CatalogManager, CreateTableResult, FieldResolver, TableCatalogSnapshot};
58pub use catalog::{SingleColumnIndexDescriptor, SingleColumnIndexRegistration};
59pub use constraints::{
60 CheckConstraint, ConstraintColumnInfo, ConstraintEnforcementMode, ConstraintExpressionRef,
61 ConstraintId, ConstraintKind, ConstraintRecord, ConstraintService, ConstraintState,
62 ForeignKeyAction, ForeignKeyChildRowsFetch, ForeignKeyColumn, ForeignKeyConstraint,
63 ForeignKeyParentRowsFetch, ForeignKeyRowFetch, ForeignKeyTableInfo, InsertColumnConstraint,
64 InsertMultiColumnUnique, InsertUniqueColumn, PrimaryKeyConstraint, UniqueConstraint, UniqueKey,
65 ValidatedForeignKey, build_composite_unique_key, column_in_foreign_keys,
66 column_in_multi_column_unique, column_in_primary_or_unique, decode_constraint_row_id,
67 encode_constraint_row_id, ensure_multi_column_unique, ensure_primary_key,
68 ensure_single_column_unique, unique_key_component, validate_alter_table_operation,
69 validate_check_constraints, validate_foreign_key_rows, validate_foreign_keys,
70};
71pub use ddl::CatalogDdl;
72pub use ddl::{ObjectNameExt, OrderCreateTablesExt, TableConstraintExt};
73pub use diagnostics::{TablePagerIngestionDiagnostics, TablePagerIngestionSample};
74pub use llkv_compute::compute_binary;
75pub use llkv_compute::eval::{AffineExpr, ScalarEvaluator as NumericKernels};
76pub use metadata::MultiColumnUniqueRegistration;
77pub use metadata::{ForeignKeyDescriptor, MetadataManager};
78pub use reserved::{
79 CATALOG_TABLE_ID, INFORMATION_SCHEMA_TABLE_ID_START, TEMPORARY_TABLE_ID_START,
80 is_information_schema_table,
81};
82pub use resolvers::{canonical_table_name, resolve_table_name};
83pub use stream::{ColumnStream, ColumnStreamBatch};
84pub type NumericArrayMap = llkv_compute::eval::NumericArrayMap<FieldId>;
85pub use sys_catalog::{
86 ColMeta, CustomTypeMeta, MultiColumnIndexEntryMeta, SingleColumnIndexEntryMeta, SysCatalog,
87 TableMeta, TableMultiColumnIndexMeta, TableSingleColumnIndexMeta, TableTriggerMeta,
88 TriggerEntryMeta, TriggerEventMeta, TriggerTimingMeta,
89};
90pub use table::Table;
91pub use types::{FieldId, ROW_ID_FIELD_ID, RowId, TableColumn, TableId};
92pub use view::{ForeignKeyView, TableConstraintSummaryView, TableView};
93
94pub use planner::plan_graph::{
95 PLAN_GRAPH_VERSION, PlanAnnotations, PlanEdge, PlanEdgeMetadata, PlanExpression, PlanField,
96 PlanGraph, PlanGraphBuilder, PlanGraphError, PlanGraphResult, PlanGraphVersion, PlanInput,
97 PlanNode, PlanNodeId, PlanOperator,
98};