struct BrowserTool {
spec: ToolSpec,
facade: Arc<dyn BrowserFacade>,
slot: SessionSlot,
}Expand description
One registered tool: upstream’s spec, plus the caller it acts for.
Fields§
§spec: ToolSpec§facade: Arc<dyn BrowserFacade>§slot: SessionSlotImplementations§
Source§impl BrowserTool
impl BrowserTool
Sourceasync fn hand_off(&self, args: Value) -> Result<Vec<BrowserPart>, String>
async fn hand_off(&self, args: Value) -> Result<Vec<BrowserPart>, String>
The one tool whose logic is the core’s own. Every other tool
forwards to the host because a target ref only means something in
the client’s page state; the hand-off parks on the person, and the
wait - with no timeout - is the answer.
Trait Implementations§
Auto Trait Implementations§
impl !RefUnwindSafe for BrowserTool
impl !UnwindSafe for BrowserTool
impl Freeze for BrowserTool
impl Send for BrowserTool
impl Sync for BrowserTool
impl Unpin for BrowserTool
impl UnsafeUnpin for BrowserTool
Blanket Implementations§
§impl<T> AnySync for T
impl<T> AnySync for T
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
impl<S, T> Duplex<S> for Twhere
T: FromSample<S> + ToSample<S>,
§impl<S> FromSample<S> for S
impl<S> FromSample<S> for S
fn from_sample_(s: S) -> S
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> 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 more