Skip to main content

SkillLibrary

Trait SkillLibrary 

Source
pub trait SkillLibrary: Send + Sync {
    // Required methods
    fn relevant(&self, ctx: &str, limit: usize) -> Vec<Skill>;
    fn add(&self, skill: Skill) -> Result<()>;
    fn all(&self) -> Vec<Skill>;
    fn curate(&self) -> Result<()>;
    fn prune(&self, min_score: f64) -> Result<usize>;
    fn get(&self, name: &str) -> Option<Skill>;
    fn invoke(&self, name: &str) -> Result<Option<SkillInvocation>>;
    fn remove(&self, name: &str) -> Result<bool>;
}

Required Methods§

Source

fn relevant(&self, ctx: &str, limit: usize) -> Vec<Skill>

Source

fn add(&self, skill: Skill) -> Result<()>

Source

fn all(&self) -> Vec<Skill>

Source

fn curate(&self) -> Result<()>

Source

fn prune(&self, min_score: f64) -> Result<usize>

Source

fn get(&self, name: &str) -> Option<Skill>

Source

fn invoke(&self, name: &str) -> Result<Option<SkillInvocation>>

Source

fn remove(&self, name: &str) -> Result<bool>

Remove a skill by name (any kind). Returns true if it existed.

Dyn Compatibility§

This trait is dyn compatible.

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

Implementors§