#![cfg_attr(
any(feature = "crawl", feature = "fs", feature = "http", feature = "oauth"),
feature(impl_trait_in_assoc_type)
)]
#![forbid(unsafe_code)] #![deny(
missing_docs,
missing_debug_implementations,
rust_2018_idioms,
unreachable_pub
)]
#![warn(clippy::all, clippy::pedantic, clippy::cargo)]
#![allow(
clippy::module_name_repetitions,
clippy::missing_errors_doc,
clippy::missing_panics_doc,
clippy::multiple_crate_versions,
// This crate is a byte-format + scoring engine: document counts, dimensions,
// and lengths are bounded by `u32`/`usize` by construction, and float scores
// are intentionally lossy. These casts are deliberate, so the pedantic cast
// family would only add noise.
clippy::cast_possible_truncation,
clippy::cast_precision_loss,
clippy::cast_sign_loss,
clippy::cast_possible_wrap
)]
pub mod auth;
#[cfg(feature = "graph")]
pub mod bridge;
pub mod embed;
pub mod error;
pub mod extract;
#[cfg(feature = "crawl")]
pub mod facade;
pub mod fetch;
pub mod index;
#[cfg(feature = "kb")]
pub mod kb;
pub mod metric;
pub mod payload;
pub mod query;
#[cfg(feature = "remote")]
pub mod remote;
pub mod resource;
pub mod source;
pub mod text;
pub mod url_key;
pub use auth::{AnonymousAuth, AuthProvider, Credential, DynAuthProvider, StaticTokenAuth};
pub use embed::{Embedder, EmbedderId, HashEmbedder};
pub use error::{Error, Result};
pub use extract::{AutoExtractor, Descriptor, Extractor};
pub use fetch::{FetchMeta, FetchOptions, Fetched, Fetcher};
pub use index::{DocMeta, Document, Filter, Index, IndexBuilder, UpsertOutcome};
pub use metric::Metric;
pub use payload::{ByteStream, DocPayload, MmapView};
pub use query::{Fusion, Hit, Hits, PreparedQuery, RankParams};
pub use resource::{DocId, Page, Resource, ResourceKind, SourceRef};
pub use source::Source;
pub use url_key::{canonicalize, UrlKey, UrlKeyExt};
pub use url::Url;
#[cfg(all(feature = "crawl", feature = "github"))]
pub use facade::GithubUpdateBuilder;
#[cfg(feature = "crawl")]
pub use facade::{LinkIndex, SearchResult, UpdateReport};
#[cfg(feature = "http")]
pub use fetch::HttpFetcher;
#[cfg(feature = "fs")]
pub use source::FsSource;
#[cfg(feature = "crawl")]
pub use source::{CrawlConfig, CrawlScope, CrawlSource};
#[cfg(feature = "github")]
pub use source::{GitHubSource, GithubAuth, GithubSpec};
pub mod prelude {
pub use crate::error::{Error, Result};
pub use crate::index::{Document, Filter, Index, IndexBuilder, UpsertOutcome};
pub use crate::query::{Hit, Hits, PreparedQuery, RankParams};
pub use crate::resource::{Resource, ResourceKind, SourceRef};
pub use crate::url_key::{UrlKey, UrlKeyExt};
#[cfg(feature = "crawl")]
pub use crate::facade::{LinkIndex, SearchResult, UpdateReport};
#[cfg(feature = "crawl")]
pub use crate::source::CrawlScope;
}