pub enum ConstValue {
Lit(LcnfLit),
Ctor(String, u32, Vec<LcnfArg>),
Unknown,
}Expand description
A known constant value discovered during analysis.
This forms a simple two-level lattice: Unknown (top – we know nothing) | Lit / Ctor (known concrete value)
Variants§
Lit(LcnfLit)
A literal constant (nat or string).
Ctor(String, u32, Vec<LcnfArg>)
A fully applied constructor with known tag and arguments.
Unknown
Value is not statically known.
Implementations§
Source§impl ConstValue
impl ConstValue
Trait Implementations§
Source§impl Clone for ConstValue
impl Clone for ConstValue
Source§fn clone(&self) -> ConstValue
fn clone(&self) -> ConstValue
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 ConstValue
impl Debug for ConstValue
Source§impl Display for ConstValue
impl Display for ConstValue
Source§impl PartialEq for ConstValue
impl PartialEq for ConstValue
impl Eq for ConstValue
impl StructuralPartialEq for ConstValue
Auto Trait Implementations§
impl Freeze for ConstValue
impl RefUnwindSafe for ConstValue
impl Send for ConstValue
impl Sync for ConstValue
impl Unpin for ConstValue
impl UnsafeUnpin for ConstValue
impl UnwindSafe for ConstValue
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