1#![allow(clippy::module_inception)]
9#![recursion_limit = "2048"]
10
11pub mod auth;
12pub mod auth_state;
13pub mod be_tree;
14pub mod cache;
15pub mod catalog;
16pub mod columnar;
17pub mod compaction;
18pub mod constraint;
19pub mod cursor;
20pub mod database;
21pub mod encryption;
22pub mod engine;
23pub mod epoch;
24pub mod error;
25pub mod external_table;
26pub mod gc;
27pub mod global_idx;
28pub mod index;
29pub mod manifest;
30pub mod memtable;
31pub mod mutable_run;
32pub mod page;
33pub mod pma;
34pub mod procedure;
35pub mod query;
36pub mod reservoir;
37pub mod retention;
38pub(crate) mod row_id_set;
39pub mod rowid;
40pub mod schema;
41pub mod sorted_run;
42pub mod trace;
43pub mod trigger;
44pub mod tsv;
45pub mod txn;
46pub mod wal;
47
48pub use auth::{hash_password, verify_password, Permission, Principal, RoleEntry, UserEntry};
49pub use be_tree::BeTree;
50pub use cache::PageCache;
51pub use columnar::{decode_column, encode_column};
52pub use cursor::{drain_cursor_to_columns, Cursor, MultiRunCursor, NativePageCursor};
53pub use database::{
54 CheckIssue, Database, ExternalTriggerBaseWrite, ExternalTriggerBridge, ExternalTriggerWrite,
55 ExternalTriggerWriteResult,
56};
57pub use encryption::{Cipher, PlaintextCipher};
58pub use engine::{
59 AggState, ApproxAgg, ApproxResult, CachedAgg, ColumnStat, IncrementalAggResult,
60 IndexBuildPolicy, NativeAgg, NativeAggResult, Table,
61};
62pub use epoch::{Epoch, EpochAuthority, EpochClock, Snapshot};
63pub use error::{MongrelError, Result};
64pub use external_table::{
65 ExternalTableDefinition, ExternalTableEntry, ModuleArg, ModuleCapabilities,
66};
67pub use gc::{CheckReport, DoctorReport, GcReport};
68pub use index::{
69 AnnIndex, BitmapIndex, ColumnLearnedRange, FmIndex, HotIndex, LearnedIndex, SparseIndex,
70};
71pub use memtable::{Memtable, Row, Value};
72pub use mutable_run::MutableRun;
73pub use page::{CachedPage, Encoding, PageStat};
74pub use procedure::{
75 ProcedureBody, ProcedureCallOutput, ProcedureCallResult, ProcedureCallRow, ProcedureCondition,
76 ProcedureEntry, ProcedureMode, ProcedureParam, ProcedureStep, ProcedureValue, StoredProcedure,
77};
78pub use query::{Condition, Query};
79pub use reservoir::Reservoir;
80pub use retention::{OwnedSnapshotGuard, SnapshotGuard, SnapshotRegistry};
81pub use rowid::{RowId, RowIdAllocator};
82pub use schema::{AlterColumn, ColumnDef, ColumnFlags, IndexDef, IndexKind, Schema, TypeId};
83pub use sorted_run::{
84 read_column_dir, read_header, write_run, write_run_with, ColumnPayload, RunHeader, RunReader,
85 RunSpec, RunWriter,
86};
87pub use trace::{IndexRebuild, QueryTrace, ScanMode};
88pub use trigger::{
89 StoredTrigger, TriggerCell, TriggerCondition, TriggerConfig, TriggerDefinition, TriggerEntry,
90 TriggerEvent, TriggerExpr, TriggerProgram, TriggerRaiseAction, TriggerStep, TriggerTarget,
91 TriggerTiming, TriggerValue,
92};
93pub use txn::{IsolationLevel, OwnedRow, PutResult, UpsertAction, UpsertActionKind, UpsertResult};
94pub use wal::{AddedRun, DdlOp, Op, Record, SharedWal, Wal, WalReader, SYSTEM_TXN_ID};
95
96#[cfg(feature = "encryption")]
97pub use encryption::{AesCipher, ColumnKeyDescriptor, EncryptionDescriptor, Kek};