pub struct ExitLoopTool;Available on crate feature
tools only.Implementations§
Source§impl ExitLoopTool
impl ExitLoopTool
pub fn new() -> ExitLoopTool
Trait Implementations§
Source§impl Default for ExitLoopTool
impl Default for ExitLoopTool
Source§fn default() -> ExitLoopTool
fn default() -> ExitLoopTool
Returns the “default value” for a type. Read more
Source§impl Tool for ExitLoopTool
impl Tool for ExitLoopTool
fn name(&self) -> &str
fn description(&self) -> &str
fn execute<'life0, 'async_trait>(
&'life0 self,
ctx: Arc<dyn ToolContext>,
_args: Value,
) -> Pin<Box<dyn Future<Output = Result<Value, AdkError>> + Send + 'async_trait>>where
'life0: 'async_trait,
ExitLoopTool: 'async_trait,
Source§fn declaration(&self) -> Value
fn declaration(&self) -> Value
Returns the tool declaration that should be exposed to model providers. Read more
Source§fn enhanced_description(&self) -> String
fn enhanced_description(&self) -> String
Returns an enhanced description that may include additional notes.
For long-running tools, this includes a warning not to call the tool
again if it has already returned a pending status.
Default implementation returns the base description.
Source§fn is_long_running(&self) -> bool
fn is_long_running(&self) -> bool
Indicates whether the tool is a long-running operation.
Long-running tools typically return a task ID immediately and
complete the operation asynchronously.
Source§fn is_builtin(&self) -> bool
fn is_builtin(&self) -> bool
Indicates whether this tool is a built-in server-side tool (e.g.,
google_search, url_context). Read morefn parameters_schema(&self) -> Option<Value>
fn response_schema(&self) -> Option<Value>
Source§fn required_scopes(&self) -> &[&str]
fn required_scopes(&self) -> &[&str]
Returns the scopes required to execute this tool. Read more
Source§fn is_read_only(&self) -> bool
fn is_read_only(&self) -> bool
Indicates whether this tool performs no side effects.
Read-only tools may be executed concurrently in Auto mode.
Source§fn is_concurrency_safe(&self) -> bool
fn is_concurrency_safe(&self) -> bool
Indicates whether this tool is safe for concurrent execution.
Used by the Parallel strategy to validate dispatch safety.
Auto Trait Implementations§
impl Freeze for ExitLoopTool
impl RefUnwindSafe for ExitLoopTool
impl Send for ExitLoopTool
impl Sync for ExitLoopTool
impl Unpin for ExitLoopTool
impl UnsafeUnpin for ExitLoopTool
impl UnwindSafe for ExitLoopTool
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> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
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 moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::RequestCreates a shared type from an unshared type.
Source§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<T> ScopeToolExt for Twhere
T: Tool,
impl<T> ScopeToolExt for Twhere
T: Tool,
Source§fn with_scope_guard(
self,
resolver: impl ScopeResolver + 'static,
) -> ScopedTool<Self>
fn with_scope_guard( self, resolver: impl ScopeResolver + 'static, ) -> ScopedTool<Self>
Wrap this tool with scope enforcement using the given resolver.
Source§impl<T> ToolExt for Twhere
T: Tool,
impl<T> ToolExt for Twhere
T: Tool,
Source§fn with_access_control(self, ac: Arc<AccessControl>) -> ProtectedTool<Self>
fn with_access_control(self, ac: Arc<AccessControl>) -> ProtectedTool<Self>
Wrap this tool with access control.
Source§fn with_access_control_and_audit(
self,
ac: Arc<AccessControl>,
audit: Arc<dyn AuditSink>,
) -> ProtectedTool<Self>
fn with_access_control_and_audit( self, ac: Arc<AccessControl>, audit: Arc<dyn AuditSink>, ) -> ProtectedTool<Self>
Wrap this tool with access control and audit logging.