pub struct Stream {
pub text: Option<String>,
pub thinking: Option<String>,
pub last_delta: Option<Delta>,
}Expand description
What one read of the latest step’s response.json says (§5.1 #10, #28b) —
every fact off one pass, so they cannot describe two different mid-write
states of the same file.
Fields§
§text: Option<String>The accumulated answer text: Some once at least one text_delta
has landed, None while the file is absent, empty, or carries only
deltas that are not answer text.
thinking: Option<String>The accumulated reasoning text, on the same terms — Some once a
thinking_delta has landed. Held apart from text
because they are two different things being said and the transcript
paints them as two rows, exactly as a committed model entry’s
Block::Thinking and Block::Text already are.
last_delta: Option<Delta>The kind of the last content delta seen. None means the stream
has produced nothing yet — which, under an open response.json fd
(§5.1 #9), is exactly “waiting for the API”.
Trait Implementations§
impl Eq for Stream
impl StructuralPartialEq for Stream
Auto Trait Implementations§
impl Freeze for Stream
impl RefUnwindSafe for Stream
impl Send for Stream
impl Sync for Stream
impl Unpin for Stream
impl UnsafeUnpin for Stream
impl UnwindSafe for Stream
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.