#[non_exhaustive]pub enum EngineInvariant {
Show 15 variants
I1 = 1,
I2 = 2,
I3 = 3,
I4 = 4,
I5 = 5,
I6 = 6,
I7 = 7,
I8 = 8,
I9 = 9,
I10 = 10,
I11 = 11,
I12 = 12,
I13 = 13,
I14 = 14,
I15 = 15,
}Expand description
Stable engine invariant identifier in the frozen data contract.
The numeric value matches the I{N} naming in the vyre specification.
These numbers are permanent: new invariants add new variants, while
existing variants never change meaning. Example: EngineInvariant::I4
identifies the IR wire-format round-trip invariant.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
I1 = 1
I1 Determinism.
I2 = 2
I2 Composition commutativity with lowering.
I3 = 3
I3 Backend equivalence.
I4 = 4
I4 IR wire-format round-trip.
I5 = 5
I5 Validation soundness.
I6 = 6
I6 Validation completeness, partial.
I7 = 7
I7 Law monotonicity under composition.
I8 = 8
I8 Reference agreement.
I9 = 9
I9 Law falsifiability.
I10 = 10
I10 Bounded allocation.
I11 = 11
I11 No panic.
I12 = 12
I12 No undefined behaviour.
I13 = 13
I13 Userspace stability.
I14 = 14
I14 Non-exhaustive discipline.
I15 = 15
I15 Certificate stability.
Implementations§
Trait Implementations§
Source§impl Clone for EngineInvariant
impl Clone for EngineInvariant
Source§fn clone(&self) -> EngineInvariant
fn clone(&self) -> EngineInvariant
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 EngineInvariant
impl Debug for EngineInvariant
Source§impl Display for EngineInvariant
impl Display for EngineInvariant
Source§impl Hash for EngineInvariant
impl Hash for EngineInvariant
Source§impl Ord for EngineInvariant
impl Ord for EngineInvariant
Source§fn cmp(&self, other: &EngineInvariant) -> Ordering
fn cmp(&self, other: &EngineInvariant) -> Ordering
1.21.0 · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more
Source§impl PartialEq for EngineInvariant
impl PartialEq for EngineInvariant
Source§impl PartialOrd for EngineInvariant
impl PartialOrd for EngineInvariant
impl Copy for EngineInvariant
impl Eq for EngineInvariant
impl StructuralPartialEq for EngineInvariant
Auto Trait Implementations§
impl Freeze for EngineInvariant
impl RefUnwindSafe for EngineInvariant
impl Send for EngineInvariant
impl Sync for EngineInvariant
impl Unpin for EngineInvariant
impl UnsafeUnpin for EngineInvariant
impl UnwindSafe for EngineInvariant
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