pub enum ResolvedExpression {
Show 44 variants
FieldAccess(ResolvedStructTypeFieldRef),
VariableAccess(ResolvedVariableRef),
InternalFunctionAccess(ResolvedInternalFunctionDefinitionRef),
ExternalFunctionAccess(ResolvedExternalFunctionDefinitionRef),
MutRef(Rc<ResolvedMutVariable>),
Option(Option<Box<ResolvedExpression>>),
ArrayAccess(ResolvedArrayItemRef),
MapIndexAccess(ResolvedMapIndexLookup),
InitializeVariable(ResolvedVariableAssignment),
ReassignVariable(ResolvedVariableAssignment),
VariableCompoundAssignment(ResolvedVariableCompoundAssignment),
FieldCompoundAssignment(ResolvedFieldCompoundAssignment),
ArrayExtend(ResolvedVariableRef, Box<ResolvedExpression>),
ArrayPush(ResolvedVariableRef, Box<ResolvedExpression>),
ArrayAssignment(ResolvedMutArray, ResolvedIndexType, Box<ResolvedExpression>),
MapAssignment(ResolvedMutMap, ResolvedIndexType, Box<ResolvedExpression>),
StructFieldAssignment(ResolvedMutStructTypeFieldRef, Box<ResolvedExpression>),
BinaryOp(ResolvedBinaryOperator),
UnaryOp(ResolvedUnaryOperator),
PostfixOp(ResolvedPostfixOperator),
CoerceOptionToBool(Box<ResolvedExpression>),
FunctionInternalCall(ResolvedInternalFunctionCall),
FunctionExternalCall(ResolvedExternalFunctionCall),
StaticCall(ResolvedStaticCall),
StaticCallGeneric(ResolvedStaticCallGeneric),
MutMemberCall(MutMemberRef, Vec<ResolvedExpression>),
MemberCall(ResolvedMemberCall),
Block(Vec<ResolvedStatement>),
InterpolatedString(ResolvedStringTypeRef, Vec<ResolvedStringPart>),
StructInstantiation(ResolvedStructInstantiation),
Array(ResolvedArrayInstantiation),
Tuple(Vec<ResolvedExpression>),
Literal(ResolvedLiteral),
ExclusiveRange(ResolvedExclusiveRangeTypeRef, Box<ResolvedExpression>, Box<ResolvedExpression>),
IfElse(Box<ResolvedBooleanExpression>, Box<ResolvedExpression>, Box<ResolvedExpression>),
IfElseOnlyVariable {
variable: ResolvedVariableRef,
optional_expr: Box<ResolvedExpression>,
true_block: Box<ResolvedExpression>,
false_block: Box<ResolvedExpression>,
},
IfElseAssignExpression {
variable: ResolvedVariableRef,
optional_expr: Box<ResolvedExpression>,
true_block: Box<ResolvedExpression>,
false_block: Box<ResolvedExpression>,
},
Match(ResolvedMatch),
LetVar(ResolvedVariableRef, Box<ResolvedExpression>),
ArrayRemoveIndex(ResolvedVariableRef, Box<ResolvedExpression>),
ArrayClear(ResolvedVariableRef),
SparseAdd(Box<ResolvedExpression>, Box<ResolvedExpression>),
SparseRemove(Box<ResolvedExpression>, Box<ResolvedExpression>),
SparseNew(ResolvedRustTypeRef, ResolvedType),
}
Variants§
FieldAccess(ResolvedStructTypeFieldRef)
VariableAccess(ResolvedVariableRef)
InternalFunctionAccess(ResolvedInternalFunctionDefinitionRef)
ExternalFunctionAccess(ResolvedExternalFunctionDefinitionRef)
MutRef(Rc<ResolvedMutVariable>)
Option(Option<Box<ResolvedExpression>>)
ArrayAccess(ResolvedArrayItemRef)
MapIndexAccess(ResolvedMapIndexLookup)
InitializeVariable(ResolvedVariableAssignment)
ReassignVariable(ResolvedVariableAssignment)
VariableCompoundAssignment(ResolvedVariableCompoundAssignment)
FieldCompoundAssignment(ResolvedFieldCompoundAssignment)
ArrayExtend(ResolvedVariableRef, Box<ResolvedExpression>)
ArrayPush(ResolvedVariableRef, Box<ResolvedExpression>)
ArrayAssignment(ResolvedMutArray, ResolvedIndexType, Box<ResolvedExpression>)
MapAssignment(ResolvedMutMap, ResolvedIndexType, Box<ResolvedExpression>)
StructFieldAssignment(ResolvedMutStructTypeFieldRef, Box<ResolvedExpression>)
BinaryOp(ResolvedBinaryOperator)
UnaryOp(ResolvedUnaryOperator)
PostfixOp(ResolvedPostfixOperator)
CoerceOptionToBool(Box<ResolvedExpression>)
FunctionInternalCall(ResolvedInternalFunctionCall)
FunctionExternalCall(ResolvedExternalFunctionCall)
StaticCall(ResolvedStaticCall)
StaticCallGeneric(ResolvedStaticCallGeneric)
MutMemberCall(MutMemberRef, Vec<ResolvedExpression>)
MemberCall(ResolvedMemberCall)
Block(Vec<ResolvedStatement>)
InterpolatedString(ResolvedStringTypeRef, Vec<ResolvedStringPart>)
StructInstantiation(ResolvedStructInstantiation)
Array(ResolvedArrayInstantiation)
Tuple(Vec<ResolvedExpression>)
Literal(ResolvedLiteral)
ExclusiveRange(ResolvedExclusiveRangeTypeRef, Box<ResolvedExpression>, Box<ResolvedExpression>)
IfElse(Box<ResolvedBooleanExpression>, Box<ResolvedExpression>, Box<ResolvedExpression>)
IfElseOnlyVariable
Fields
§
variable: ResolvedVariableRef
§
optional_expr: Box<ResolvedExpression>
§
true_block: Box<ResolvedExpression>
§
false_block: Box<ResolvedExpression>
IfElseAssignExpression
Fields
§
variable: ResolvedVariableRef
§
optional_expr: Box<ResolvedExpression>
§
true_block: Box<ResolvedExpression>
§
false_block: Box<ResolvedExpression>
Match(ResolvedMatch)
LetVar(ResolvedVariableRef, Box<ResolvedExpression>)
ArrayRemoveIndex(ResolvedVariableRef, Box<ResolvedExpression>)
ArrayClear(ResolvedVariableRef)
SparseAdd(Box<ResolvedExpression>, Box<ResolvedExpression>)
SparseRemove(Box<ResolvedExpression>, Box<ResolvedExpression>)
SparseNew(ResolvedRustTypeRef, ResolvedType)
Trait Implementations§
Source§impl Debug for ResolvedExpression
impl Debug for ResolvedExpression
Auto Trait Implementations§
impl Freeze for ResolvedExpression
impl !RefUnwindSafe for ResolvedExpression
impl !Send for ResolvedExpression
impl !Sync for ResolvedExpression
impl Unpin for ResolvedExpression
impl !UnwindSafe for ResolvedExpression
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