pub struct LuaTool { /* private fields */ }Expand description
A Tool implementation backed by a Lua function registered with
imp.register_tool().
Trait Implementations§
Source§impl Tool for LuaTool
impl Tool for LuaTool
Source§fn description(&self) -> &str
fn description(&self) -> &str
Description shown to the LLM.
Source§fn parameters(&self) -> Value
fn parameters(&self) -> Value
JSON Schema for parameters.
Source§fn is_readonly(&self) -> bool
fn is_readonly(&self) -> bool
Whether this tool only reads (no side effects).
Source§fn execute<'life0, 'life1, 'async_trait>(
&'life0 self,
call_id: &'life1 str,
params: Value,
ctx: ToolContext,
) -> Pin<Box<dyn Future<Output = Result<ToolOutput>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn execute<'life0, 'life1, 'async_trait>(
&'life0 self,
call_id: &'life1 str,
params: Value,
ctx: ToolContext,
) -> Pin<Box<dyn Future<Output = Result<ToolOutput>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Execute the tool.
Source§fn policy_metadata(&self) -> ToolMetadata
fn policy_metadata(&self) -> ToolMetadata
Metadata used by the runtime reference monitor.
Auto Trait Implementations§
impl Freeze for LuaTool
impl RefUnwindSafe for LuaTool
impl Send for LuaTool
impl Sync for LuaTool
impl Unpin for LuaTool
impl UnsafeUnpin for LuaTool
impl UnwindSafe for LuaTool
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more