Ark Server API (ASA) - Wiki
|
#include <ExpressionParserTypes.h>
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.