pub enum MessageStreamEvent {
MessageStart {
message: Message,
},
MessageDelta {
delta: MessageDelta,
usage: MessageDeltaUsage,
},
MessageStop,
ContentBlockStart {
content_block: ContentBlock,
index: usize,
},
ContentBlockDelta {
delta: ContentBlockDelta,
index: usize,
},
ContentBlockStop {
index: usize,
},
}Expand description
Main stream event type that encompasses all possible streaming events.
This is the primary type you’ll work with when processing streaming responses. Each event represents a different stage of the message generation process.
Variants§
MessageStart
Initial event when a message starts being generated.
Contains the initial message structure with metadata but no content yet.
MessageDelta
Event when the message metadata is updated during generation.
Contains updates to stop reason, stop sequence, and usage information.
Fields
delta: MessageDeltaThe delta containing updated fields
usage: MessageDeltaUsageCurrent usage statistics
MessageStop
Final event when message generation is complete.
ContentBlockStart
Event when a new content block starts being generated.
This occurs when Claude begins generating a new piece of content (text, tool use, etc.).
Fields
content_block: ContentBlockThe content block being started
ContentBlockDelta
Event containing incremental updates to a content block.
This is where you’ll receive the actual text being generated, tool input being parsed, etc.
Fields
delta: ContentBlockDeltaThe incremental update
ContentBlockStop
Event when a content block finishes generation.
Trait Implementations§
Source§impl Clone for MessageStreamEvent
impl Clone for MessageStreamEvent
Source§fn clone(&self) -> MessageStreamEvent
fn clone(&self) -> MessageStreamEvent
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for MessageStreamEvent
impl Debug for MessageStreamEvent
Source§impl<'de> Deserialize<'de> for MessageStreamEvent
impl<'de> Deserialize<'de> for MessageStreamEvent
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>,
Source§impl PartialEq for MessageStreamEvent
impl PartialEq for MessageStreamEvent
Source§fn eq(&self, other: &MessageStreamEvent) -> bool
fn eq(&self, other: &MessageStreamEvent) -> bool
self and other values to be equal, and is used by ==.