1#![deny(missing_docs)]
4
5#[cfg(feature = "async")]
6pub mod async_runtime;
7pub mod async_util;
8pub mod columnar;
9pub mod compaction;
10pub mod dataframe;
11pub mod error;
12pub mod kv;
13pub mod log;
14pub mod lsm;
15pub mod obs;
16pub mod row_key_range;
17pub mod sql;
18pub mod storage;
19pub mod txn;
20pub mod types;
21pub mod vector;
22
23pub use async_util::{BoxFuture, BoxStream, MaybeSend};
24pub use columnar::encoding::{
25 decode_column, encode_column, Column, Compression, Encoding, LogicalType,
26};
27pub use columnar::segment::{write_segment, ChunkIter, SegmentMeta, SegmentReader};
28#[cfg(feature = "tokio")]
29pub use columnar::AsyncColumnarReaderAdapter;
30#[cfg(feature = "async")]
31pub use columnar::{AsyncColumnarReader, ColumnId, RowBatch, Segment, SegmentId};
32pub use error::{Error, Result};
33#[cfg(feature = "test-hooks")]
34pub use kv::hooks::{CrashOperation, CrashPoint, CrashSimulator, CrashTiming, IoHooks};
35pub use kv::memory::{MemoryKV, MemoryStats, MemoryTransaction, MemoryTxnManager};
36pub use kv::storage::{StorageFactory, StorageMode};
37#[cfg(feature = "async")]
38pub use kv::{AsyncKVStore, AsyncKVTransaction};
39#[cfg(feature = "tokio")]
40pub use kv::{AsyncKVStoreAdapter, AsyncKVTransactionAdapter};
41pub use kv::{KVStore, KVTransaction, ReadAtCapability, ReadAtError, ReadAtPoint, ReadAtResult};
42#[cfg(feature = "s3")]
43pub use kv::{S3Config, S3KV};
44pub use row_key_range::{CanonicalRowKey, EncodedRowKeyRange, RowKeyRange, RowKeyRangeError};
45pub use storage::large_value::{
46 LargeValueChunkInfo, LargeValueKind, LargeValueMeta, LargeValueReader, LargeValueWriter,
47 DEFAULT_CHUNK_SIZE,
48};
49pub use txn::TxnManager;
50pub use types::{Key, TxnId, TxnMode, Value};
51pub use vector::columnar::{
52 AppendResult, EncodedColumn, SearchStats, VectorSearchParams, VectorSearchResult,
53 VectorSegment, VectorStoreConfig, VectorStoreManager,
54};
55pub use vector::flat::{search_flat, ScoredItem};
56pub use vector::hnsw::{HnswConfig, HnswIndex, HnswSearchResult, HnswStats};
57pub use vector::simd::{select_kernel, DistanceKernel, ScalarKernel};
58#[cfg(feature = "tokio")]
59pub use vector::AsyncVectorStoreAdapter;
60pub use vector::{score, validate_dimensions, Metric, VectorType};
61#[cfg(feature = "async")]
62pub use vector::{AsyncHnswIndex, AsyncVectorStore};