pub enum RecordFieldStructure {
Open,
Closed(Vec<RecordFieldStructureDef>),
}Expand description
Inline, recursively-nestable closed/typed RECORD field-type structure carried on
the WAL change stream (postcard). This is the serde/WAL counterpart of the rkyv
snapshot-side selene_graph::graph_types::RecordFieldTypes; the two carry the same
structure and must round-trip into each other.
Record structure is inlined on PropertyDef::record_fields rather than on
ValueType::record (a RecordTypeRef by-ID that cannot hold inline structure),
symmetric to how LIST inlines its element type.
Variants§
Open
Open/bare RECORD — no declared field types; any record value conforms (GV47).
Closed(Vec<RecordFieldStructureDef>)
Closed/typed RECORD{..} — the declared field-type list (GV46/GV48).
Trait Implementations§
Source§impl Clone for RecordFieldStructure
impl Clone for RecordFieldStructure
Source§fn clone(&self) -> RecordFieldStructure
fn clone(&self) -> RecordFieldStructure
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 RecordFieldStructure
impl Debug for RecordFieldStructure
Source§impl<'de> Deserialize<'de> for RecordFieldStructure
impl<'de> Deserialize<'de> for RecordFieldStructure
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 RecordFieldStructure
Source§impl Hash for RecordFieldStructure
impl Hash for RecordFieldStructure
Source§impl PartialEq for RecordFieldStructure
impl PartialEq for RecordFieldStructure
Source§fn eq(&self, other: &RecordFieldStructure) -> bool
fn eq(&self, other: &RecordFieldStructure) -> bool
Tests for
self and other values to be equal, and is used by ==.Source§impl Serialize for RecordFieldStructure
impl Serialize for RecordFieldStructure
impl StructuralPartialEq for RecordFieldStructure
Auto Trait Implementations§
impl Freeze for RecordFieldStructure
impl RefUnwindSafe for RecordFieldStructure
impl Send for RecordFieldStructure
impl Sync for RecordFieldStructure
impl Unpin for RecordFieldStructure
impl UnsafeUnpin for RecordFieldStructure
impl UnwindSafe for RecordFieldStructure
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
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<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
Source§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Returns the layout of the type.
Source§impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
Source§unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
Returns whether the given value has been niched. Read more
Source§fn resolve_niched(out: Place<NichedOption<T, N1>>)
fn resolve_niched(out: Place<NichedOption<T, N1>>)
Writes data to
out indicating that a T is niched.