pub enum CatalogEditV1 {
CreateDatabase((DatabaseId, DatabaseSchema)),
CreateTable((TableId, TableSchema)),
CreateType((TypeId, StructSchema)),
CreateEnum((TypeId, EnumSchema)),
Snapshot(Vec<CatalogEdit>),
}Expand description
The set of mutations that can be applied to the catalog in format version 1.
Each variant represents a single atomic, semantic change to the catalog state. Implementation details like ID allocation are never recorded as edits. IDs are derived from the edits themselves during replay.
Variants§
CreateDatabase((DatabaseId, DatabaseSchema))
Registers a new database with its assigned DatabaseId.
CreateTable((TableId, TableSchema))
Registers a new table with its assigned TableId.
CreateType((TypeId, StructSchema))
Registers a new struct type with its assigned TypeId.
CreateEnum((TypeId, EnumSchema))
Registers a new enum type with its assigned TypeId.
Snapshot(Vec<CatalogEdit>)
A point-in-time snapshot of the full catalog state, written on journal rotation. Contains only live entries - dropped tables and databases are omitted, collapsing any create/drop history into the current state.
Trait Implementations§
Source§impl Clone for CatalogEditV1
impl Clone for CatalogEditV1
Source§fn clone(&self) -> CatalogEditV1
fn clone(&self) -> CatalogEditV1
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 CatalogEditV1
impl Debug for CatalogEditV1
Source§impl<'de> Deserialize<'de> for CatalogEditV1
impl<'de> Deserialize<'de> for CatalogEditV1
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 CatalogEditV1
impl RefUnwindSafe for CatalogEditV1
impl Send for CatalogEditV1
impl Sync for CatalogEditV1
impl Unpin for CatalogEditV1
impl UnsafeUnpin for CatalogEditV1
impl UnwindSafe for CatalogEditV1
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