pub struct SchemaSnapshot {
pub version_hash: String,
pub created_at: String,
pub tables: HashMap<String, TableSnapshot>,
pub views: HashMap<String, ViewSnapshot>,
pub functions: HashMap<String, FunctionSnapshot>,
pub types: HashMap<String, TypeSnapshot>,
}Expand description
A normalized snapshot of a database schema
This structure is database-agnostic and represents the logical structure of a schema, not the database-specific SQL.
Snapshots are deterministic: the same schema always produces the same snapshot (order-independent where possible).
Fields§
§version_hash: StringUnique identifier for this snapshot (deterministic hash)
created_at: StringTimestamp when snapshot was created (ISO 8601 string)
tables: HashMap<String, TableSnapshot>Tables in this schema
views: HashMap<String, ViewSnapshot>Views in this schema
functions: HashMap<String, FunctionSnapshot>Functions/procedures in this schema
types: HashMap<String, TypeSnapshot>Extensions/enums/types in this schema
Trait Implementations§
Source§impl Clone for SchemaSnapshot
impl Clone for SchemaSnapshot
Source§fn clone(&self) -> SchemaSnapshot
fn clone(&self) -> SchemaSnapshot
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 SchemaSnapshot
impl Debug for SchemaSnapshot
Source§impl<'de> Deserialize<'de> for SchemaSnapshot
impl<'de> Deserialize<'de> for SchemaSnapshot
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
impl Eq for SchemaSnapshot
Source§impl PartialEq for SchemaSnapshot
impl PartialEq for SchemaSnapshot
Source§fn eq(&self, other: &SchemaSnapshot) -> bool
fn eq(&self, other: &SchemaSnapshot) -> bool
Tests for
self and other values to be equal, and is used by ==.Source§impl Serialize for SchemaSnapshot
impl Serialize for SchemaSnapshot
impl StructuralPartialEq for SchemaSnapshot
Auto Trait Implementations§
impl Freeze for SchemaSnapshot
impl RefUnwindSafe for SchemaSnapshot
impl Send for SchemaSnapshot
impl Sync for SchemaSnapshot
impl Unpin for SchemaSnapshot
impl UnsafeUnpin for SchemaSnapshot
impl UnwindSafe for SchemaSnapshot
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