Inheritance diagram for CCM::FloatExpr:
Public Types | |
enum | Op { LITERAL, ID, CALL, NEG, ADD, SUB, MUL, DIV, ASSIGN, ELEMENT, SETELEMENT } |
Possible operations. More... | |
Public Member Functions | |
FloatExpr (double lit) | |
Create a literal expression with given value. | |
FloatExpr (Ref id) | |
Create a variable / stub property reference expression. | |
FloatExpr (Ref id, Expr e) | |
Create assignment expression. | |
FloatExpr (Ref method, List args) | |
Create method call expression to method(args). | |
FloatExpr (ArrayExpr array, IntExpr index) | |
Create array element access expression to array[index]. | |
FloatExpr (ArrayExpr array, IntExpr index, Expr value) | |
Create array element assignment expression: array[index] = value. | |
FloatExpr (Op op, Expr e) | |
Create unary expression. | |
FloatExpr (Op op, Expr e1, Expr e2) | |
Create binary expression. | |
override Type | type () |
Return the expression type. | |
override Object | eval () |
Evaluate expression and return its value. | |
override Expr | makeElementAssign (Expr value) |
Return an expression that assigns value to the element if called on an array element access expression. | |
override string | ToString () |
Private Attributes | |
Op | op |
double | value |
|
Possible operations.
|
|
Create a literal expression with given value.
|
|
Create a variable / stub property reference expression.
|
|
Create assignment expression.
|
|
Create method call expression to method(args).
|
|
Create array element access expression to array[index].
|
|
Create array element assignment expression: array[index] = value.
|
|
Create unary expression.
|
|
Create binary expression.
|
|
Evaluate expression and return its value. Stub access expressions add transitions to the currently evaluated process. Implements CCM::Expr. |
|
Return an expression that assigns value to the element if called on an array element access expression.
Implements CCM::Expr. |
|
|
|
Return the expression type. This is generally the type of the expression value, not of the Expr itself (e. g. "int", not "IntExpr"). Implements CCM::Expr. |
|
|
|
|