pub struct StateSnapshot {
pub id: String,
pub session_id: String,
pub snapshot_type: SnapshotType,
pub state_data: Value,
pub parent_snapshot_id: Option<String>,
pub created_at: DateTime<Utc>,
pub description: Option<String>,
}Expand description
State snapshot for backtracking and state restoration.
Fields§
§id: StringUnique snapshot identifier.
session_id: StringParent session ID.
snapshot_type: SnapshotTypeType of snapshot (full, incremental, branch).
state_data: ValueSerialized state data.
parent_snapshot_id: Option<String>Parent snapshot ID for incremental snapshots.
created_at: DateTime<Utc>When the snapshot was created.
description: Option<String>Optional description of the snapshot state.
Implementations§
Source§impl StateSnapshot
impl StateSnapshot
Sourcepub fn new(session_id: impl Into<String>, state_data: Value) -> Self
pub fn new(session_id: impl Into<String>, state_data: Value) -> Self
Create a new state snapshot
Sourcepub fn with_type(self, snapshot_type: SnapshotType) -> Self
pub fn with_type(self, snapshot_type: SnapshotType) -> Self
Set snapshot type
Sourcepub fn with_parent(self, parent_id: impl Into<String>) -> Self
pub fn with_parent(self, parent_id: impl Into<String>) -> Self
Set parent snapshot
Sourcepub fn with_description(self, description: impl Into<String>) -> Self
pub fn with_description(self, description: impl Into<String>) -> Self
Set description
Trait Implementations§
Source§impl Clone for StateSnapshot
impl Clone for StateSnapshot
Source§fn clone(&self) -> StateSnapshot
fn clone(&self) -> StateSnapshot
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for StateSnapshot
impl Debug for StateSnapshot
Source§impl<'de> Deserialize<'de> for StateSnapshot
impl<'de> Deserialize<'de> for StateSnapshot
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 StateSnapshot
impl RefUnwindSafe for StateSnapshot
impl Send for StateSnapshot
impl Sync for StateSnapshot
impl Unpin for StateSnapshot
impl UnwindSafe for StateSnapshot
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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>
Converts
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>
Converts
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