pub enum Part {
Show 13 variants
Text {
id: Option<String>,
text: String,
synthetic: Option<bool>,
ignored: Option<bool>,
metadata: Option<Value>,
},
File {
id: Option<String>,
mime: String,
url: String,
filename: Option<String>,
source: Option<FilePartSource>,
},
Tool {
id: Option<String>,
call_id: String,
tool: String,
input: Value,
state: Option<ToolState>,
metadata: Option<Value>,
},
Reasoning {
id: Option<String>,
text: String,
metadata: Option<Value>,
},
StepStart {
id: Option<String>,
snapshot: Option<String>,
},
StepFinish {
id: Option<String>,
reason: String,
snapshot: Option<String>,
cost: f64,
tokens: Option<TokenUsage>,
},
Snapshot {
id: Option<String>,
snapshot: String,
},
Patch {
id: Option<String>,
hash: String,
files: Vec<String>,
},
Agent {
id: Option<String>,
name: String,
source: Option<AgentSource>,
},
Retry {
id: Option<String>,
attempt: u32,
error: Option<APIError>,
},
Compaction {
id: Option<String>,
auto: bool,
},
Subtask {
id: Option<String>,
prompt: String,
description: String,
agent: String,
command: Option<String>,
},
Unknown,
}Expand description
A content part within a message (12 variants).
Variants§
Text
Text content.
Fields
File
File attachment.
Fields
§
source: Option<FilePartSource>File source info.
Tool
Tool invocation.
Fields
Reasoning
Reasoning/thinking content.
Fields
StepStart
Step start marker.
StepFinish
Step finish marker.
Fields
§
tokens: Option<TokenUsage>Token usage.
Snapshot
Snapshot marker.
Patch
Patch information.
Fields
Agent
Agent delegation.
Fields
§
source: Option<AgentSource>Agent source info.
Retry
Retry marker.
Fields
Compaction
Compaction marker.
Subtask
Subtask delegation.
Fields
Unknown
Unknown part type (forward compatibility).
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Part
impl<'de> Deserialize<'de> for Part
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
Auto Trait Implementations§
impl Freeze for Part
impl RefUnwindSafe for Part
impl Send for Part
impl Sync for Part
impl Unpin for Part
impl UnwindSafe for Part
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