pub struct StreamingToolCallParser { /* private fields */ }Expand description
State-machine streaming parser for XML tool calls
Implementations§
Source§impl StreamingToolCallParser
impl StreamingToolCallParser
pub fn new() -> Self
Sourcepub fn on_tool_call<F>(&mut self, callback: F)
pub fn on_tool_call<F>(&mut self, callback: F)
Register a callback fired when a complete tool call is parsed
Sourcepub fn feed(&mut self, chunk: &str) -> Vec<ParserEvent>
pub fn feed(&mut self, chunk: &str) -> Vec<ParserEvent>
Feed a chunk of streaming output. Returns emitted events.
Sourcepub fn end(&mut self) -> Vec<ParserEvent>
pub fn end(&mut self) -> Vec<ParserEvent>
Flush remaining content. Call when stream ends.
pub fn reset(&mut self)
Trait Implementations§
Auto Trait Implementations§
impl !RefUnwindSafe for StreamingToolCallParser
impl !UnwindSafe for StreamingToolCallParser
impl Freeze for StreamingToolCallParser
impl Send for StreamingToolCallParser
impl Sync for StreamingToolCallParser
impl Unpin for StreamingToolCallParser
impl UnsafeUnpin for StreamingToolCallParser
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
impl<A, B, T> HttpServerConnExec<A, B> for Twhere
B: Body,
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 more