#![deny(unsafe_code)]
#![warn(missing_docs)]
#![cfg_attr(
test,
allow(
clippy::unwrap_used,
clippy::expect_used,
clippy::panic,
clippy::missing_panics_doc
)
)]
pub mod anchor;
pub mod attribute;
pub mod audit;
pub mod builder;
pub mod canonical_keys;
pub mod capabilities;
pub mod codec;
pub mod content;
pub mod context;
pub mod embedder;
pub mod error;
pub mod event;
pub mod evolve;
pub mod graph;
pub mod handle;
pub mod index;
pub mod link;
pub mod memory;
pub mod metadata;
pub mod migrate;
pub mod ops;
pub mod opts;
pub mod partition;
pub mod query;
pub mod regen;
mod regen_ops;
pub mod reranker;
pub mod search;
pub mod snapshot;
pub mod storage;
pub mod summarizer;
pub mod summary;
pub mod tenancy;
pub mod tenant;
pub mod util;
pub use crate::attribute::{AttributeValue, kind_str as attribute_kind_str};
pub use crate::builder::Builder;
pub use crate::capabilities::{
EmbedderCapabilities, MetadataCapabilities, Plugin as CapabilityPlugin, StorageCapabilities,
};
pub use crate::codec::Codec;
pub use crate::content::{Content, ContentHash, ContentKind};
pub use crate::context::{ContextBlock, ContextDiff, ContextKind, ContextOpts, ContextOrdering};
pub use crate::embedder::{CALLER_PROVIDED_EMBEDDER_ID, EmbedRole, Embedder, EmbedderRegistry};
pub use crate::error::{Error, Result};
pub use crate::event::{DEFAULT_EVENT_CAPACITY, MemoryEvent};
pub use crate::evolve::{
EvolutionApplied, EvolutionOps, EvolutionReport, MemoryAttributeOp, SummaryAttributeOp,
};
pub use crate::graph::{EdgeKind, EdgeKindTag, Graph, GraphEdge, GraphNode, NodeRef, TraverseOpts};
pub use crate::handle::{Memory, MemoryView};
pub use crate::link::{Edge, Link, LinkKind};
pub use crate::memory::{MemoryId, MemoryKind, MemoryRecord, MemoryRecordWire, MemoryRef};
pub use crate::metadata::{MetadataStore, PartitionInfo, SnapshotRow, SqliteMetadata};
pub use crate::migrate::{MigrationOpts, MigrationReport, SchemeMapper};
pub use crate::ops::{BackupReport, CheckpointReport, VacuumOpts, VacuumReport};
pub use crate::opts::{AppendOpts, AttachSummaryOpts, DeleteOpts, LinksOpts, ListOpts, Page};
pub use crate::partition::{PartitionPath, PartitionScheme, Partitions};
pub use crate::query::{Query, QueryMode, SearchHit};
pub use crate::regen::{GcOpts, GcReport, RegenReport, RegenSubjectOpts, ReindexReport};
pub use crate::reranker::Reranker;
pub use crate::snapshot::{
RestoreOpts, RestoreReport, SnapshotAttribute, SnapshotId, SnapshotManifest, SnapshotOpts,
SnapshotRef,
};
pub use crate::storage::{InMemoryBackend, LocalFsBackend, Storage};
pub use crate::summarizer::{
SummarizeOpts, Summarizer, SummarizerCapabilities, SummarizerRegistry, SummaryStyle,
};
pub use crate::summary::content::{
DataPointRef, PartitionRef, SummaryBlock, SummaryContent, SummaryInputRange,
};
pub use crate::summary::{Scope, StaleKind, SummaryId, SummaryRecord, SummaryRef, SummarySubject};
pub use crate::tenant::TenantId;
pub const VERSION: &str = env!("CARGO_PKG_VERSION");
#[cfg(test)]
mod sync_send_asserts {
use static_assertions::assert_impl_all;
use super::*;
assert_impl_all!(Memory: Send, Sync, Clone);
assert_impl_all!(MemoryView: Send, Sync);
assert_impl_all!(MemoryRecord: Send, Sync, Unpin);
assert_impl_all!(MemoryRef: Send, Sync, Unpin);
assert_impl_all!(MemoryId: Send, Sync, Unpin, Copy);
assert_impl_all!(AppendOpts: Send, Sync, Unpin);
assert_impl_all!(ListOpts: Send, Sync, Unpin);
assert_impl_all!(DeleteOpts: Send, Sync, Unpin);
assert_impl_all!(Query: Send, Sync, Unpin);
assert_impl_all!(snapshot::SnapshotOpts: Send, Sync);
assert_impl_all!(snapshot::RestoreOpts: Send, Sync);
assert_impl_all!(MemoryEvent: Send, Sync, Clone);
assert_impl_all!(snapshot::SnapshotManifest: Send, Sync);
assert_impl_all!(snapshot::SnapshotRef: Send, Sync);
assert_impl_all!(regen::RegenReport: Send, Sync);
assert_impl_all!(regen::ReindexReport: Send, Sync);
assert_impl_all!(regen::GcReport: Send, Sync);
assert_impl_all!(migrate::MigrationReport: Send, Sync);
assert_impl_all!(SummaryRecord: Send, Sync);
assert_impl_all!(SummaryRef: Send, Sync);
assert_impl_all!(summary::SummarySubject: Send, Sync);
assert_impl_all!(summary::content::SummaryContent: Send, Sync);
assert_impl_all!(attribute::AttributeValue: Send, Sync);
assert_impl_all!(Error: Send, Sync);
fn _assert_object_safe(
_s: &dyn storage::Storage,
_m: &dyn metadata::MetadataStore,
_e: &dyn embedder::Embedder,
_sm: &dyn summarizer::Summarizer,
_r: &dyn reranker::Reranker,
_c: &dyn codec::Codec,
) {
}
}