pub enum ResolvedExpression {
Show 44 variants
FieldAccess(Rc<ResolvedStructTypeField>),
VariableAccess(Rc<ResolvedVariable>),
InternalFunctionAccess(Rc<ResolvedInternalFunctionDefinition>),
ExternalFunctionAccess(Rc<ResolvedExternalFunctionDefinition>),
MutRef(Rc<ResolvedMutVariable>),
Option(Option<Box<ResolvedExpression>>),
ArrayAccess(Rc<ResolvedArrayItem>),
MapIndexAccess(ResolvedMapIndexLookup),
InitializeVariable(ResolvedVariableAssignment),
ReassignVariable(ResolvedVariableAssignment),
VariableCompoundAssignment(ResolvedVariableCompoundAssignment),
FieldCompoundAssignment(ResolvedFieldCompoundAssignment),
ArrayExtend(Rc<ResolvedVariable>, Box<ResolvedExpression>),
ArrayPush(Rc<ResolvedVariable>, Box<ResolvedExpression>),
ArrayAssignment(ResolvedMutArray, ResolvedIndexType, Box<ResolvedExpression>),
MapAssignment(ResolvedMutMap, ResolvedIndexType, Box<ResolvedExpression>),
StructFieldAssignment(Rc<ResolvedMutStructTypeField>, Box<ResolvedExpression>),
BinaryOp(ResolvedBinaryOperator),
UnaryOp(ResolvedUnaryOperator),
PostfixOp(ResolvedPostfixOperator),
CoerceOptionToBool(Box<ResolvedExpression>),
FunctionInternalCall(ResolvedInternalFunctionCall),
FunctionExternalCall(ResolvedExternalFunctionCall),
StaticCall(ResolvedStaticCall),
StaticCallGeneric(ResolvedStaticCallGeneric),
MutMemberCall(Rc<MutMember>, Vec<ResolvedExpression>),
MemberCall(ResolvedMemberCall),
Block(Vec<ResolvedStatement>),
InterpolatedString(Rc<ResolvedStringType>, Vec<ResolvedStringPart>),
StructInstantiation(ResolvedStructInstantiation),
Array(ResolvedArrayInstantiation),
Tuple(Vec<ResolvedExpression>),
Literal(ResolvedLiteral),
ExclusiveRange(Rc<ResolvedExclusiveRangeType>, Box<ResolvedExpression>, Box<ResolvedExpression>),
IfElse(Box<ResolvedBooleanExpression>, Box<ResolvedExpression>, Box<ResolvedExpression>),
IfElseOnlyVariable {
variable: Rc<ResolvedVariable>,
optional_expr: Box<ResolvedExpression>,
true_block: Box<ResolvedExpression>,
false_block: Box<ResolvedExpression>,
},
IfElseAssignExpression {
variable: Rc<ResolvedVariable>,
optional_expr: Box<ResolvedExpression>,
true_block: Box<ResolvedExpression>,
false_block: Box<ResolvedExpression>,
},
Match(ResolvedMatch),
LetVar(Rc<ResolvedVariable>, Box<ResolvedExpression>),
ArrayRemoveIndex(Rc<ResolvedVariable>, Box<ResolvedExpression>),
ArrayClear(Rc<ResolvedVariable>),
SparseAdd(Box<ResolvedExpression>, Box<ResolvedExpression>),
SparseRemove(Box<ResolvedExpression>, Box<ResolvedExpression>),
SparseNew(Rc<ResolvedRustType>, ResolvedType),
}
Variants§
FieldAccess(Rc<ResolvedStructTypeField>)
VariableAccess(Rc<ResolvedVariable>)
InternalFunctionAccess(Rc<ResolvedInternalFunctionDefinition>)
ExternalFunctionAccess(Rc<ResolvedExternalFunctionDefinition>)
MutRef(Rc<ResolvedMutVariable>)
Option(Option<Box<ResolvedExpression>>)
ArrayAccess(Rc<ResolvedArrayItem>)
MapIndexAccess(ResolvedMapIndexLookup)
InitializeVariable(ResolvedVariableAssignment)
ReassignVariable(ResolvedVariableAssignment)
VariableCompoundAssignment(ResolvedVariableCompoundAssignment)
FieldCompoundAssignment(ResolvedFieldCompoundAssignment)
ArrayExtend(Rc<ResolvedVariable>, Box<ResolvedExpression>)
ArrayPush(Rc<ResolvedVariable>, Box<ResolvedExpression>)
ArrayAssignment(ResolvedMutArray, ResolvedIndexType, Box<ResolvedExpression>)
MapAssignment(ResolvedMutMap, ResolvedIndexType, Box<ResolvedExpression>)
StructFieldAssignment(Rc<ResolvedMutStructTypeField>, Box<ResolvedExpression>)
BinaryOp(ResolvedBinaryOperator)
UnaryOp(ResolvedUnaryOperator)
PostfixOp(ResolvedPostfixOperator)
CoerceOptionToBool(Box<ResolvedExpression>)
FunctionInternalCall(ResolvedInternalFunctionCall)
FunctionExternalCall(ResolvedExternalFunctionCall)
StaticCall(ResolvedStaticCall)
StaticCallGeneric(ResolvedStaticCallGeneric)
MutMemberCall(Rc<MutMember>, Vec<ResolvedExpression>)
MemberCall(ResolvedMemberCall)
Block(Vec<ResolvedStatement>)
InterpolatedString(Rc<ResolvedStringType>, Vec<ResolvedStringPart>)
StructInstantiation(ResolvedStructInstantiation)
Array(ResolvedArrayInstantiation)
Tuple(Vec<ResolvedExpression>)
Literal(ResolvedLiteral)
ExclusiveRange(Rc<ResolvedExclusiveRangeType>, Box<ResolvedExpression>, Box<ResolvedExpression>)
IfElse(Box<ResolvedBooleanExpression>, Box<ResolvedExpression>, Box<ResolvedExpression>)
IfElseOnlyVariable
Fields
§
variable: Rc<ResolvedVariable>
§
optional_expr: Box<ResolvedExpression>
§
true_block: Box<ResolvedExpression>
§
false_block: Box<ResolvedExpression>
IfElseAssignExpression
Fields
§
variable: Rc<ResolvedVariable>
§
optional_expr: Box<ResolvedExpression>
§
true_block: Box<ResolvedExpression>
§
false_block: Box<ResolvedExpression>
Match(ResolvedMatch)
LetVar(Rc<ResolvedVariable>, Box<ResolvedExpression>)
ArrayRemoveIndex(Rc<ResolvedVariable>, Box<ResolvedExpression>)
ArrayClear(Rc<ResolvedVariable>)
SparseAdd(Box<ResolvedExpression>, Box<ResolvedExpression>)
SparseRemove(Box<ResolvedExpression>, Box<ResolvedExpression>)
SparseNew(Rc<ResolvedRustType>, 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