Skip to main content

KnowledgePack

Trait KnowledgePack 

Source
pub trait KnowledgePack: Send + Sync {
    // Required methods
    fn manifest(&self) -> &dyn KnowledgePackManifest;
    fn doc_content(
        &self,
        manifest: &KnowledgeDocManifest,
    ) -> Option<Cow<'_, str>>;

    // Provided methods
    fn list_docs(
        &self,
        filter: KnowledgeDocFilter,
    ) -> Vec<&KnowledgeDocManifest> { ... }
    fn read_manifest(&self, path: &str) -> Option<&KnowledgeDocManifest> { ... }
    fn read_doc(&self, path: &str) -> Option<KnowledgeDocRead> { ... }
    fn search(
        &self,
        query: &str,
        filter: KnowledgeDocFilter,
    ) -> Vec<KnowledgeDocSearchHit> { ... }
    fn neighbors(
        &self,
        path: &str,
        edge_type: Option<KnowledgeDocEdgeType>,
    ) -> Option<KnowledgeDocNeighbor> { ... }
}
Expand description

Runtime access to a knowledge pack’s metadata and lazy document content.

Required Methods§

Provided Methods§

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§