pub struct Session {
pub id: SessionId,
pub actor: Actor,
pub state: SessionState,
pub change_id: String,
pub changes: Vec<SourceChange>,
pub working_copy: PathBuf,
pub instruction_summary: String,
pub instruction_run_ref: Option<String>,
pub opened_at_ms: i64,
}Expand description
One actor’s bounded run of work in a workspace: its own working copy, its own change, journal entries grouped under it.
Fields§
§id: SessionIdThe session’s identity.
actor: ActorWho the session belongs to.
state: SessionStateWhere the session stands.
change_id: StringThe stable identity of the session’s unit of work on the root — source zero; it survives rewrites — amended snapshots and the landing rebase.
changes: Vec<SourceChange>One change per source the session spans, root first then mounts in name order (ADR-0009).
working_copy: PathBufThe session’s editable directory, absolute, mirroring the
workspace’s shape: root files at its top, each mounted source’s
working copy at <mount>/. A real directory on disk: sessions
survive process restarts.
instruction_summary: StringThe instruction’s summary, as journaled at open.
instruction_run_ref: Option<String>The instruction’s run reference, when one was given.
opened_at_ms: i64When the session opened, in unix milliseconds.
Trait Implementations§
impl Eq for Session
impl StructuralPartialEq for Session
Auto Trait Implementations§
impl Freeze for Session
impl RefUnwindSafe for Session
impl Send for Session
impl Sync for Session
impl Unpin for Session
impl UnsafeUnpin for Session
impl UnwindSafe for Session
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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.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> ⓘ
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> ⓘ
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