pub struct FilteredToolset { /* private fields */ }Expand description
A toolset wrapper that filters tools from an inner toolset using a predicate.
Works with any Toolset implementation. Tools that do not satisfy the
predicate are excluded from the resolved tool list.
§Example
ⓘ
use adk_tool::toolset::{FilteredToolset, string_predicate};
let browser = BrowserToolset::new(session);
let filtered = FilteredToolset::new(
Arc::new(browser),
string_predicate(vec!["navigate".into(), "click".into()]),
);
// Only "navigate" and "click" tools will be exposedImplementations§
Source§impl FilteredToolset
impl FilteredToolset
Sourcepub fn new(inner: Arc<dyn Toolset>, predicate: ToolPredicate) -> Self
pub fn new(inner: Arc<dyn Toolset>, predicate: ToolPredicate) -> Self
Wrap inner and keep only tools that satisfy predicate.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for FilteredToolset
impl !RefUnwindSafe for FilteredToolset
impl Send for FilteredToolset
impl Sync for FilteredToolset
impl Unpin for FilteredToolset
impl UnsafeUnpin for FilteredToolset
impl !UnwindSafe for FilteredToolset
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> 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::Request