#[non_exhaustive]pub struct Reasoning {
pub id: Option<String>,
pub content: Vec<ReasoningContent>,
}Expand description
Assistant reasoning payload with an optional provider-supplied identifier.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.id: Option<String>Provider reasoning identifier, when supplied by the upstream API.
content: Vec<ReasoningContent>Ordered reasoning content blocks.
Implementations§
Source§impl Reasoning
impl Reasoning
Sourcepub fn new_with_signature(input: &str, signature: Option<String>) -> Reasoning
pub fn new_with_signature(input: &str, signature: Option<String>) -> Reasoning
Create a new reasoning item from a single text item and optional signature.
Sourcepub fn optional_id(self, id: Option<String>) -> Reasoning
pub fn optional_id(self, id: Option<String>) -> Reasoning
Set or clear the provider reasoning ID.
Sourcepub fn multi(input: Vec<String>) -> Reasoning
pub fn multi(input: Vec<String>) -> Reasoning
Create reasoning content from multiple text blocks.
Sourcepub fn summaries(input: Vec<String>) -> Reasoning
pub fn summaries(input: Vec<String>) -> Reasoning
Create one reasoning block containing summary items.
Sourcepub fn display_text(&self) -> String
pub fn display_text(&self) -> String
Render reasoning as displayable text by joining text-like blocks with newlines.
Sourcepub fn first_text(&self) -> Option<&str>
pub fn first_text(&self) -> Option<&str>
Return the first text reasoning block, if present.
Sourcepub fn first_signature(&self) -> Option<&str>
pub fn first_signature(&self) -> Option<&str>
Return the first signature from text reasoning, if present.
Sourcepub fn encrypted_content(&self) -> Option<&str>
pub fn encrypted_content(&self) -> Option<&str>
Return the first encrypted reasoning payload, if present.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Reasoning
impl<'de> Deserialize<'de> for Reasoning
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<Reasoning, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<Reasoning, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Serialize for Reasoning
impl Serialize for Reasoning
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Serialize this value into the given Serde serializer. Read more
impl StructuralPartialEq for Reasoning
Auto Trait Implementations§
impl Freeze for Reasoning
impl RefUnwindSafe for Reasoning
impl Send for Reasoning
impl Sync for Reasoning
impl Unpin for Reasoning
impl UnsafeUnpin for Reasoning
impl UnwindSafe for Reasoning
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
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>
impl<T> DebuggableStorage for T
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
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> IntoToolOutput for Twhere
T: Serialize + 'static,
impl<T> IntoToolOutput for Twhere
T: Serialize + 'static,
Source§fn into_tool_output(self) -> Result<ToolOutput, ToolExecutionError>
fn into_tool_output(self) -> Result<ToolOutput, ToolExecutionError>
Convert this value without routing structured data through a string.