mod collection;
mod index;
mod metadata;
mod query;
pub use collection::*;
pub use index::*;
use metadata::*;
pub use query::*;
#[cfg(test)]
mod test;
pub use anondb_kv::*;
pub use anondb_macros::AnonDB;
pub use anondb_macros::Document;
pub use anyhow;
pub trait Queryable {
type DocumentQuery: Default;
type DocumentPhantom;
fn query() -> Self::DocumentQuery {
Self::DocumentQuery::default()
}
fn matches(&self, query: &Self::DocumentQuery) -> bool;
}
#[cfg(test)]
pub fn rand_utf8(len: usize) -> String {
vec![char::default(); len]
.into_iter()
.map(|_| rand::random::<char>())
.collect()
}