pub struct ToolDescriptor {Show 21 fields
pub name: String,
pub version: String,
pub description: Option<String>,
pub backend_kind: ToolBackendKind,
pub input_schema: Value,
pub output_mode: ToolOutputMode,
pub read_only: bool,
pub side_effect_class: ToolSideEffectClass,
pub idempotency_class: ToolIdempotencyClass,
pub approval_kind: ToolApprovalKind,
pub timeout_ms: u64,
pub concurrency_key: Option<String>,
pub cache_ttl_ms: Option<u64>,
pub exposure_mode: ToolExposureMode,
pub mcp_surface_kind: McpSurfaceKind,
pub exposure_policy: ToolExposurePolicy,
pub receipt_persistence: ToolReceiptPersistence,
pub effect_target: EffectTargetSpec,
pub output_size_limit_bytes: Option<usize>,
pub provider_payload: Option<Value>,
pub rollback_contract: Option<Arc<dyn CompensatingAction + Send + Sync>>,
}Fields§
§name: String§version: String§description: Option<String>§backend_kind: ToolBackendKind§input_schema: Value§output_mode: ToolOutputMode§read_only: bool§side_effect_class: ToolSideEffectClass§idempotency_class: ToolIdempotencyClass§approval_kind: ToolApprovalKind§timeout_ms: u64§concurrency_key: Option<String>§cache_ttl_ms: Option<u64>§exposure_mode: ToolExposureMode§mcp_surface_kind: McpSurfaceKind§exposure_policy: ToolExposurePolicy§receipt_persistence: ToolReceiptPersistence§effect_target: EffectTargetSpec§output_size_limit_bytes: Option<usize>§provider_payload: Option<Value>§rollback_contract: Option<Arc<dyn CompensatingAction + Send + Sync>>Implementations§
Source§impl ToolDescriptor
impl ToolDescriptor
Sourcepub fn supports_local_dispatch(&self) -> bool
pub fn supports_local_dispatch(&self) -> bool
Returns true when this descriptor can be dispatched through a local function bridge.
Sourcepub fn method_digest(&self) -> ContentDigest
pub fn method_digest(&self) -> ContentDigest
Returns the stable digest identifying this tool method and version.
Sourcepub fn describe_effect(&self, args: &Value) -> Result<EffectIntent, ToolError>
pub fn describe_effect(&self, args: &Value) -> Result<EffectIntent, ToolError>
Converts provider arguments into a typed, canonical effect intent.
Trait Implementations§
Source§impl Clone for ToolDescriptor
impl Clone for ToolDescriptor
Source§fn clone(&self) -> ToolDescriptor
fn clone(&self) -> ToolDescriptor
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for ToolDescriptor
impl Debug for ToolDescriptor
Source§impl<'de> Deserialize<'de> for ToolDescriptor
impl<'de> Deserialize<'de> for ToolDescriptor
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl !RefUnwindSafe for ToolDescriptor
impl !UnwindSafe for ToolDescriptor
impl Freeze for ToolDescriptor
impl Send for ToolDescriptor
impl Sync for ToolDescriptor
impl Unpin for ToolDescriptor
impl UnsafeUnpin for ToolDescriptor
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