1pub mod storage;
16pub mod vector;
17pub mod query;
18pub mod types;
19
20pub use storage::{Storage, StorageEngine};
21pub use types::{Value, Schema, Column, ColumnType};
22pub use vector::{VectorCollection, Vector, DistanceMetric, VectorStore};
23
24use thiserror::Error;
25
26#[derive(Error, Debug)]
27pub enum SqlRsError {
28 #[error("IO error: {0}")]
29 Io(#[from] std::io::Error),
30
31 #[error("Serialization error: {0}")]
32 Serialization(String),
33
34 #[error("Storage error: {0}")]
35 Storage(String),
36
37 #[error("Query error: {0}")]
38 Query(String),
39
40 #[error("Vector error: {0}")]
41 Vector(String),
42
43 #[error("Not found: {0}")]
44 NotFound(String),
45
46 #[error("Invalid operation: {0}")]
47 InvalidOperation(String),
48}
49
50pub type Result<T> = std::result::Result<T, SqlRsError>;