Enum cairo_lang_lowering::lower::context::LoweredExpr
source · pub enum LoweredExpr {
AtVariable(VarUsage),
Tuple {
exprs: Vec<LoweredExpr>,
location: LocationId,
},
ExternEnum(LoweredExprExternEnum),
Member(ExprVarMemberPath, LocationId),
Snapshot {
expr: Box<LoweredExpr>,
location: LocationId,
},
}
Expand description
Representation of the value of a computed expression.
Variants§
AtVariable(VarUsage)
The expression value lies in a variable.
Tuple
The expression value is a tuple.
ExternEnum(LoweredExprExternEnum)
The expression value is an enum result from an extern call.
Member(ExprVarMemberPath, LocationId)
Snapshot
Implementations§
source§impl LoweredExpr
impl LoweredExpr
pub fn as_var_usage( self, ctx: &mut LoweringContext<'_, '_>, builder: &mut BlockBuilder ) -> Result<VarUsage, LoweringFlowError>
pub fn ty(&self, ctx: &mut LoweringContext<'_, '_>) -> TypeId
pub fn location(&self) -> LocationId
Trait Implementations§
source§impl Clone for LoweredExpr
impl Clone for LoweredExpr
source§fn clone(&self) -> LoweredExpr
fn clone(&self) -> LoweredExpr
Returns a copy 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 moreAuto Trait Implementations§
impl RefUnwindSafe for LoweredExpr
impl Send for LoweredExpr
impl Sync for LoweredExpr
impl Unpin for LoweredExpr
impl UnwindSafe for LoweredExpr
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