pub struct Turn {
pub role: Role,
pub timestamp: Timestamp,
pub model: Option<String>,
pub content: Content,
pub is_sidechain: bool,
pub is_meta: bool,
}Expand description
A conversation turn, with the role lifted out of the JSONL’s type tag.
Fields§
§role: Role§timestamp: Timestamp§model: Option<String>§content: Content§is_sidechain: boolTrue for turns belonging to a subagent running inside this session.
is_meta: boolTrue for turns the harness injected rather than the user typing them.
Implementations§
Source§impl Turn
impl Turn
Sourcepub fn is_tool_response(&self) -> bool
pub fn is_tool_response(&self) -> bool
True when a user-role turn carries only tool results: the harness
returning tool output, not the user typing. These read as a
continuation of the assistant’s turn, not a message of their own.
Sourcepub fn is_clear_command(&self) -> bool
pub fn is_clear_command(&self) -> bool
True when this turn is the /clear slash command, which resets the
context: a session boundary the harness records as a user turn, with
no conversation of its own worth showing.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Turn
impl RefUnwindSafe for Turn
impl Send for Turn
impl Sync for Turn
impl Unpin for Turn
impl UnsafeUnpin for Turn
impl UnwindSafe for Turn
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