pub struct InvalidToolCallContext {
pub tool_name: String,
pub tool_call_id: Option<String>,
pub internal_call_id: Option<String>,
pub args: Option<String>,
pub available_tools: Vec<String>,
pub allowed_tools: Vec<String>,
pub tool_choice: Option<ToolChoice>,
pub chat_history: Vec<Message>,
pub is_streaming: bool,
}Expand description
Context passed to PromptHook::on_invalid_tool_call when the model emits a tool call
that Rig would reject before normal tool-call hooks or execution.
Fields§
§tool_name: StringTool name emitted by the model.
tool_call_id: Option<String>Provider-supplied tool call ID, when available.
internal_call_id: Option<String>Internal Rig call ID, when available.
args: Option<String>JSON arguments emitted for the tool call, when available.
available_tools: Vec<String>Executable Rig tools advertised to the provider for this turn.
allowed_tools: Vec<String>Tools allowed by the active ToolChoice for this turn.
tool_choice: Option<ToolChoice>Active tool choice for this turn.
chat_history: Vec<Message>Diagnostic chat history including the rejected model output when available.
is_streaming: boolWhether the rejected call came from the streaming path.
Trait Implementations§
Source§impl Clone for InvalidToolCallContext
impl Clone for InvalidToolCallContext
Source§fn clone(&self) -> InvalidToolCallContext
fn clone(&self) -> InvalidToolCallContext
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for InvalidToolCallContext
impl RefUnwindSafe for InvalidToolCallContext
impl Send for InvalidToolCallContext
impl Sync for InvalidToolCallContext
impl Unpin for InvalidToolCallContext
impl UnsafeUnpin for InvalidToolCallContext
impl UnwindSafe for InvalidToolCallContext
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> CloneDebuggableStorage for Twhere
T: DebuggableStorage + Clone,
impl<T> CloneDebuggableStorage for Twhere
T: DebuggableStorage + Clone,
fn clone_storage(&self) -> Box<dyn CloneDebuggableStorage>
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> CloneableStorage for T
impl<T> CloneableStorage for T
fn clone_storage(&self) -> Box<dyn CloneableStorage>
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> 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