CsBinaryExpression Struct ReferenceBinary expression AST node.
More...
List of all members.
|
Public Member Functions |
| | CsBinaryExpression () |
| | CsBinaryExpression (CsExpression *lhs_, CsTokenType oper_, CsExpression *rhs_) |
| | CsBinaryExpression (LineInfo line_info) |
| | CsBinaryExpression (LineInfo line_info, CsNode *parent, CsExpression *lhs_, CsTokenType oper_) |
| | CsBinaryExpression (LineInfo line_info, CsExpression *lhs_, CsTokenType oper_, CsExpression *rhs_) |
| | CsBinaryExpression (LineInfo line_info, CsExpression *lhs_, CsTokenType oper_, CsExpression *rhs_, CsTokenIndex operator_token_, CsTokenIndex operator_token2_) |
| virtual | ~CsBinaryExpression () |
| virtual void | type_lookup (CsDisplay &display) |
| | Type Lookup - pass 3 (for internal purpose only).
|
| virtual void | member_lookup (CsDisplay &display) |
| | Member Lookup - pass 4 (for internal purpose only).
|
| virtual void | addTokensRecursive (CsTokenCollector &tokenCollector) |
| | Recusively collect token indexes in source code order.
|
| virtual void | addTokens (CsTokenCollector &tokenCollector) |
| | Collect token indexes associated with this AST node.
|
| virtual void | clearEntities () |
| | Clear all entity references (for internal purpose only).
|
Public Attributes |
| CsExpression * | lhs |
| | Left expression.
|
| CsTokenType | oper |
| | Binary operator (one of: tkSTAR, tkDIV, tkMOD, tkPLUS, tkMINUS, tkSHIFT_LEFT, tkSHIFT_RIGHT, tkLESS, tkGREATER, tkLESS_OR_EQUAL, tkGREATER_OR_EQUAL, tkEQUAL, tkNOT_EQ, tkBITAND, tkXOR, tkBITOR, tkAND, tkOR, tkQUESTION2).
|
| CsExpression * | rhs |
| | Right expression.
|
| CsTokenIndex | operator_token |
| CsTokenIndex | operator_token2 |
Detailed Description
Binary expression AST node.
EBNF grammar:
binary-expression:
expression "*" expression
expression "/" expression
expression "%" expression
expression "+" expression
expression "-" expression
expression "<<" expression
expression ">>" expression
expression "<" expression
expression ">" expression
expression "<=" expression
expression ">=" expression
expression "==" expression
expression "!=" expression
expression "&" expression
expression "^" expression
expression "|" expression
expression "&&" expression
expression "||" expression
expression "??" expression
Constructor & Destructor Documentation
| CsBinaryExpression::CsBinaryExpression |
( |
|
) |
[inline] |
| CsBinaryExpression::CsBinaryExpression |
( |
LineInfo |
line_info |
) |
[inline, explicit] |
| virtual CsBinaryExpression::~CsBinaryExpression |
( |
|
) |
[inline, virtual] |
Member Function Documentation
| virtual void CsBinaryExpression::type_lookup |
( |
CsDisplay & |
display |
) |
[virtual] |
Type Lookup - pass 3 (for internal purpose only).
Implements CsNode.
| virtual void CsBinaryExpression::member_lookup |
( |
CsDisplay & |
display |
) |
[virtual] |
Member Lookup - pass 4 (for internal purpose only).
Implements CsNode.
| virtual void CsBinaryExpression::addTokensRecursive |
( |
CsTokenCollector & |
tokenCollector |
) |
[virtual] |
Recusively collect token indexes in source code order.
Implements CsNode.
| virtual void CsBinaryExpression::addTokens |
( |
CsTokenCollector & |
tokenCollector |
) |
[virtual] |
Collect token indexes associated with this AST node.
Implements CsNode.
| virtual void CsBinaryExpression::clearEntities |
( |
|
) |
[virtual] |
Clear all entity references (for internal purpose only).
Reimplemented from CsExpression.
Member Data Documentation
Binary operator (one of: tkSTAR, tkDIV, tkMOD, tkPLUS, tkMINUS, tkSHIFT_LEFT, tkSHIFT_RIGHT, tkLESS, tkGREATER, tkLESS_OR_EQUAL, tkGREATER_OR_EQUAL, tkEQUAL, tkNOT_EQ, tkBITAND, tkXOR, tkBITOR, tkAND, tkOR, tkQUESTION2).
|