BinaryExpr is used for binary expressions with a left hand side and a right hand side including assignment. Note that many common binary operations are actually modeled as ShortcutExpr to enable method based operator overloading.
Slots
- isStmtSource
-
override Bool isStmt()Overrides compiler::Expr.isStmt
Doc inherited from compiler::Expr.isStmt
Does this expression make up a complete statement. If you override this to true, then you must make sure the expr is popped in CodeAsm.
- lhsSource
-
Expr lhs - makeSource
- makeAssignSource
- opTokenSource
-
Token opToken - rhsSource
-
Expr rhs - serializeSource
-
override Str serialize()Overrides compiler::Expr.serialize
Doc inherited from compiler::Expr.serialize
Return this expression as serialization text or throw exception if not serializable.
- tempVarSource
-
MethodVar tempVar - toStrSource
-
override Str toStr()Overrides compiler::Expr.toStr
Doc inherited from sys::Obj.toStr
Return a string representation of this object.
- walkChildrenSource
-
override Void walkChildren(Visitor v)Overrides compiler::Expr.walkChildren