pub trait PreparedExecutor: Send + Sync {
// Required methods
fn revalidate<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<(), ToolError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn execute<'async_trait>(
self: Box<Self>,
context: ToolExecutionContext,
) -> Pin<Box<dyn Future<Output = Result<ToolCompletion, ToolError>> + Send + 'async_trait>>
where Self: 'async_trait;
// Provided method
fn revalidate_for_execution<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<(), ToolError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait { ... }
}Required Methods§
fn revalidate<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<(), ToolError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn execute<'async_trait>(
self: Box<Self>,
context: ToolExecutionContext,
) -> Pin<Box<dyn Future<Output = Result<ToolCompletion, ToolError>> + Send + 'async_trait>>where
Self: 'async_trait,
Provided Methods§
Sourcefn revalidate_for_execution<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<(), ToolError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn revalidate_for_execution<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<(), ToolError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Revalidation performed under the per-target serialization lock immediately before execution. The default preserves the ordinary validation behavior.
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".