Skip to main content

ToolRegistryProvider

Trait ToolRegistryProvider 

Source
pub trait ToolRegistryProvider {
    // Required methods
    fn registered_tools(&self) -> Vec<SupportedTool>;
    fn definitions_for(
        &self,
        enabled_tools: &[SupportedTool],
        include_local: bool,
    ) -> Vec<ToolDefinition>;
    fn render_title(
        &self,
        descriptor: ToolDescriptor,
        function_name: &str,
        args: &Value,
    ) -> String;
    fn lookup(&self, function_name: &str) -> Option<ToolDescriptor>;
    fn has_local_tools(&self) -> bool;
}

Required Methods§

Source

fn registered_tools(&self) -> Vec<SupportedTool>

Source

fn definitions_for( &self, enabled_tools: &[SupportedTool], include_local: bool, ) -> Vec<ToolDefinition>

Source

fn render_title( &self, descriptor: ToolDescriptor, function_name: &str, args: &Value, ) -> String

Source

fn lookup(&self, function_name: &str) -> Option<ToolDescriptor>

Source

fn has_local_tools(&self) -> bool

Dyn Compatibility§

This trait is dyn compatible.

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

Implementations on Foreign Types§

Source§

impl<T> ToolRegistryProvider for Rc<T>

Source§

fn registered_tools(&self) -> Vec<SupportedTool>

Source§

fn definitions_for( &self, enabled_tools: &[SupportedTool], include_local: bool, ) -> Vec<ToolDefinition>

Source§

fn render_title( &self, descriptor: ToolDescriptor, function_name: &str, args: &Value, ) -> String

Source§

fn lookup(&self, function_name: &str) -> Option<ToolDescriptor>

Source§

fn has_local_tools(&self) -> bool

Implementors§