#[non_exhaustive]pub enum Projection {
Identity(Value),
Capability(Value),
Flow(Value),
Economic(Value),
}Expand description
One projection of a session into a verifiable record.
Adjacently tagged for wire compatibility with in-toto and SLSA
predicates. non_exhaustive so new projection kinds can be
added in minor releases without breaking external matchers.
Each variant’s body is currently a serde_json::Value because
the concrete type per kind lives in a lifter crate (see
nucleus-identity-projection, nucleus-flow-projection,
nucleus-mechanism-vcg, etc.). substrate-core stays dep-light;
lifters narrow the JSON to their typed shape.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Identity(Value)
Identity functor — a JWT-SVID + delegation-chain record.
Lifter: nucleus-identity-projection.
Capability(Value)
Capability functor — a point in the Portcullis quotient
lattice. Lifter: nucleus-capability-projection.
Flow(Value)
Flow functor — a FlowTracker DAG snapshot (Denning lattice).
Lifter: nucleus-flow-projection.
Economic(Value)
Economic functor — a bid+match record with Clarke-pivot
payments. Lifter: nucleus-mechanism-vcg.
Implementations§
Trait Implementations§
Source§impl Clone for Projection
impl Clone for Projection
Source§fn clone(&self) -> Projection
fn clone(&self) -> Projection
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for Projection
impl Debug for Projection
Source§impl<'de> Deserialize<'de> for Projection
impl<'de> Deserialize<'de> for Projection
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>,
Source§impl PartialEq for Projection
impl PartialEq for Projection
Source§fn eq(&self, other: &Projection) -> bool
fn eq(&self, other: &Projection) -> bool
self and other values to be equal, and is used by ==.