pub mod compression;
pub mod directories;
pub mod dsl;
pub mod error;
pub mod index;
pub mod merge;
pub mod query;
pub mod segment;
pub mod structures;
pub mod tokenizer;
pub use dsl::{
BinaryDenseVectorConfig, Document, Field, FieldDef, FieldEntry, FieldType, FieldValue,
IndexDef, QueryLanguageParser, Schema, SchemaBuilder, SdlParser, parse_sdl, parse_single_index,
};
pub use structures::{
AsyncSSTableReader, BlockPostingList, HorizontalBP128Iterator, HorizontalBP128PostingList,
PostingList, PostingListIterator, SSTableValue, TERMINATED, TermInfo,
};
#[cfg(feature = "native")]
pub use directories::FsDirectory;
#[cfg(feature = "http")]
pub use directories::HttpDirectory;
#[cfg(feature = "native")]
pub use directories::MmapDirectory;
pub use directories::{
CachingDirectory, Directory, DirectoryWriter, FileHandle, OwnedBytes, RamDirectory,
SliceCacheStats, SliceCachingDirectory,
};
#[cfg(feature = "native")]
pub type DefaultDirectory = MmapDirectory;
pub use segment::{AsyncStoreReader, FieldStats, SegmentId, SegmentMeta, SegmentReader};
#[cfg(any(feature = "native", feature = "wasm"))]
pub use segment::{SegmentBuilder, SegmentBuilderConfig, SegmentBuilderStats};
pub use query::{
BinaryDenseVectorQuery, Bm25Params, BooleanQuery, BoostQuery, MaxScoreExecutor, PrefixQuery,
Query, ScoredDoc, Scorer, SearchHit, SearchResponse, SearchResult, TermQuery, TopKCollector,
};
pub use tokenizer::{
BoxedTokenizer, Language, LanguageAwareTokenizer, MultiLanguageStemmer, RawCiTokenizer,
RawTokenizer, SimpleTokenizer, StemmerTokenizer, Token, Tokenizer, TokenizerRegistry,
parse_language,
};
pub use directories::SLICE_CACHE_EXTENSION;
pub use error::{Error, Result};
pub use index::Searcher;
#[cfg(all(feature = "wasm", not(feature = "native")))]
pub use index::WasmIndexWriter;
#[cfg(feature = "native")]
pub use index::{Index, IndexReader, IndexWriter};
pub use index::{IndexConfig, IndexMetadata, SLICE_CACHE_FILENAME};
#[cfg(feature = "native")]
pub use index::{
IndexingStats, SchemaConfig, SchemaFieldConfig, create_index_at_path, create_index_from_sdl,
index_documents_from_reader, index_json_document, parse_schema,
};
#[cfg(feature = "native")]
pub use merge::SegmentManager;
pub use merge::{MergeCandidate, MergePolicy, NoMergePolicy, SegmentInfo, TieredMergePolicy};
pub type DocId = u32;
pub type TermFreq = u32;
pub type Score = f32;
#[cfg(feature = "native")]
pub fn default_indexing_threads() -> usize {
(num_cpus::get() / 4).max(1)
}
#[cfg(feature = "native")]
pub fn default_compression_threads() -> usize {
(num_cpus::get() / 4).max(1)
}