pub struct StorageContainer {
pub version: u32,
pub session_id: String,
pub created_at: DateTime<Utc>,
pub modified_at: DateTime<Utc>,
pub entries: Vec<MemoryEntry>,
}Expand description
Versioned storage container for migration support
Fields§
§version: u32Format version number
session_id: StringSession ID that created this storage
created_at: DateTime<Utc>Creation timestamp
modified_at: DateTime<Utc>Last modified timestamp
entries: Vec<MemoryEntry>Memory entries
Implementations§
Source§impl StorageContainer
impl StorageContainer
Sourcepub fn new(session_id: impl Into<String>, entries: Vec<MemoryEntry>) -> Self
pub fn new(session_id: impl Into<String>, entries: Vec<MemoryEntry>) -> Self
Create a new storage container
Sourcepub fn migrate_from(value: Value) -> Layer3Result<Self>
pub fn migrate_from(value: Value) -> Layer3Result<Self>
Migrate from older version if needed
Trait Implementations§
Source§impl Clone for StorageContainer
impl Clone for StorageContainer
Source§fn clone(&self) -> StorageContainer
fn clone(&self) -> StorageContainer
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · 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 StorageContainer
impl Debug for StorageContainer
Source§impl Default for StorageContainer
impl Default for StorageContainer
Source§impl<'de> Deserialize<'de> for StorageContainer
impl<'de> Deserialize<'de> for StorageContainer
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 StorageContainer
impl RefUnwindSafe for StorageContainer
impl Send for StorageContainer
impl Sync for StorageContainer
impl Unpin for StorageContainer
impl UnsafeUnpin for StorageContainer
impl UnwindSafe for StorageContainer
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,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
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