pub struct ToolDefinition {Show 13 fields
pub name: String,
pub provider: String,
pub max_results: Option<i64>,
pub filter_expr: String,
pub timeout: String,
pub runtime: String,
pub sandbox: Option<bool>,
pub effects: Option<EffectRow>,
pub parameters: Vec<Parameter>,
pub output_type: Option<String>,
pub loc: Loc,
pub leading_trivia: Vec<Trivia>,
pub trailing_trivia: Vec<Trivia>,
}Fields§
§name: String§provider: String§max_results: Option<i64>§filter_expr: String§timeout: String§runtime: String§sandbox: Option<bool>§effects: Option<EffectRow>§parameters: Vec<Parameter>§Fase 58.a — the tool’s typed INPUT SCHEMA (W2: the caller↔tool
contract). Each entry is a named, typed parameter that the canonical
use Tool(k = v, …) invocation binds against and the type-checker
validates the caller’s args against (CT-2 caller blame, pre-HTTP).
Empty for a schema-less tool — the legacy single-on <arg> form still
applies (§58 D5 back-compat). Reuses Parameter (same TypeExpr
grammar as flow params).
output_type: Option<String>§Fase 58.a — the tool’s declared OUTPUT type, so a tool-step’s result
is referenceable as ${Step.output} with a real type (§58 D8). Flat
string (mirrors step output:); None when undeclared.
loc: Loc§leading_trivia: Vec<Trivia>Fase 14.b — leading comment trivia attached to this declaration (comments preceding the declaration’s first token, since the previous declaration or file start). Empty by default.
trailing_trivia: Vec<Trivia>Fase 14.b — trailing comment trivia (same line as the declaration’s last effective token). Empty by default.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for ToolDefinition
impl RefUnwindSafe for ToolDefinition
impl Send for ToolDefinition
impl Sync for ToolDefinition
impl Unpin for ToolDefinition
impl UnsafeUnpin for ToolDefinition
impl UnwindSafe for ToolDefinition
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
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>
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>
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