#[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>) -> Self
pub fn new_with_signature(input: &str, signature: Option<String>) -> Self
Create a new reasoning item from a single text item and optional signature.
Sourcepub fn optional_id(self, id: Option<String>) -> Self
pub fn optional_id(self, id: Option<String>) -> Self
Set or clear the provider reasoning ID.
pub fn with_signature(self, signature: Option<String>) -> Self
👎Deprecated: Use
new_with_signature or content-level signature handling insteadSourcepub fn summaries(input: Vec<String>) -> Self
pub fn summaries(input: Vec<String>) -> Self
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<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. 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
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