![]() |
Ark Server API (ASA) - Wiki
|
#include <ExpressionParserTypes.h>
Collaboration diagram for FExpressionGrammar:Public Member Functions | |
| template<typename TStartGroup , typename TEndGroup > | |
| void | DefineGrouping () |
| template<typename TExpressionNode > | |
| void | DefinePreUnaryOperator () |
| template<typename TExpressionNode > | |
| void | DefinePostUnaryOperator () |
| template<typename TExpressionNode > | |
| void | DefineBinaryOperator (int32 InPrecedence, EAssociativity InAssociativity=EAssociativity::RightToLeft, bool bCanShortCircuit=false) |
| const FGuid * | GetGrouping (const FGuid &TypeId) const |
| bool | HasPreUnaryOperator (const FGuid &TypeId) const |
| bool | HasPostUnaryOperator (const FGuid &TypeId) const |
| const FOpParameters * | GetBinaryOperatorDefParameters (const FGuid &TypeId) const |
Private Attributes | |
| TMap< FGuid, FGuid > | Groupings |
| TSet< FGuid > | PreUnaryOperators |
| TSet< FGuid > | PostUnaryOperators |
| TMap< FGuid, FOpParameters > | BinaryOperators |
A lexical gammer defining how to parse an expression. Clients must define the tokens and operators to be interpreted by the parser.
Definition at line 520 of file ExpressionParserTypes.h.
|
inline |
Define a binary operator for the specified symbol, with the specified precedence and associativity NOTE: Associativity defaults to RightToLeft for legacy reasons.
| InPrecedence | The precedence (priority of execution) this operator should have |
| InAssociativity | With operators of the same precedence, determines whether they execute left to right, or right to left |
Definition at line 543 of file ExpressionParserTypes.h.
|
inline |
Define a grouping operator from two expression node types
Definition at line 525 of file ExpressionParserTypes.h.
|
inline |
Define a post-unary operator for the specified symbol
Definition at line 533 of file ExpressionParserTypes.h.
|
inline |
Define a pre-unary operator for the specified symbol
Definition at line 529 of file ExpressionParserTypes.h.
| const FOpParameters * FExpressionGrammar::GetBinaryOperatorDefParameters | ( | const FGuid & | TypeId | ) | const |
Get the binary operator precedence and associativity parameters, for the specified symbol, if any
Retrieve the corresponding grouping token for the specified open group type, or nullptr if it's not a group token
Check if this grammar defines a post-unary operator for the specified symbol
Check if this grammar defines a pre-unary operator for the specified symbol
|
private |
Definition at line 580 of file ExpressionParserTypes.h.
Definition at line 577 of file ExpressionParserTypes.h.
Definition at line 579 of file ExpressionParserTypes.h.
Definition at line 578 of file ExpressionParserTypes.h.