pub struct Metadata {
pub cardinality: CardinalityClass,
pub index_addressable: Option<IndexFn>,
pub natural_order: NaturalOrder,
pub materialization: Materialization,
}Expand description
The metadata bundle carried by every well-formed AST node.
Computed bottom-up; never mutated after propagation. Each field is a closed enum or a closed-form descriptor — no callbacks, no fail-able analyses.
Fields§
§cardinality: CardinalityClassCardinality class per spec §6.1.
index_addressable: Option<IndexFn>Closed-form bijection from 0..|c| to the node’s
dispensed tuples. None when the node has no
addressable index space (raw filter output, dependent
cartesian, non-Lex order output at the AST level).
natural_order: NaturalOrderHow this node enumerates by default.
materialization: MaterializationStreaming-vs-barrier classification per spec §6.2.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Metadata
impl<'de> Deserialize<'de> for Metadata
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 StructuralPartialEq for Metadata
Auto Trait Implementations§
impl Freeze for Metadata
impl RefUnwindSafe for Metadata
impl Send for Metadata
impl Sync for Metadata
impl Unpin for Metadata
impl UnsafeUnpin for Metadata
impl UnwindSafe for Metadata
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