|
| const FDecimalNumberFormattingRules & | GetLocalizedNumberFormattingRules () |
| |
| TOptional< FStringToken > | ParseNumberWithFallback (const FTokenStream &InStream, const FDecimalNumberFormattingRules &InPrimaryFormattingRules, const FDecimalNumberFormattingRules &InFallbackFormattingRules, FStringToken *Accumulate, double *OutValue) |
| |
| TOptional< FStringToken > | ParseNumberWithRules (const FTokenStream &InStream, const FDecimalNumberFormattingRules &InFormattingRules, FStringToken *Accumulate, double *OutValue) |
| |
| TOptional< FStringToken > | ParseLocalizedNumberWithAgnosticFallback (const FTokenStream &InStream, FStringToken *Accumulate, double *OutValue) |
| |
| TOptional< FStringToken > | ParseLocalizedNumber (const FTokenStream &InStream, FStringToken *Accumulate, double *OutValue) |
| |
| TOptional< FStringToken > | ParseNumber (const FTokenStream &InStream, FStringToken *Accumulate, double *OutValue) |
| |
| TOptional< FExpressionError > | ConsumeNumberWithRules (FExpressionTokenConsumer &Consumer, const FDecimalNumberFormattingRules &InFormattingRules) |
| |
| TOptional< FExpressionError > | ConsumeLocalizedNumberWithAgnosticFallback (FExpressionTokenConsumer &Consumer) |
| |
| TOptional< FExpressionError > | ConsumeLocalizedNumber (FExpressionTokenConsumer &Consumer) |
| |
| TOptional< FExpressionError > | ConsumeNumber (FExpressionTokenConsumer &Consumer) |
| |
| template<typename CharType > |
| TLexResultType< CharType > | Lex (const CharType *InExpression, const TTokenDefinitions< CharType > &TokenDefinitions) |
| |
| template<typename CharType > |
| TCompileResultType< CharType > | Compile (const CharType *InExpression, const TTokenDefinitions< CharType > &InTokenDefinitions, const FExpressionGrammar &InGrammar) |
| |
| template<typename CharType > |
| TCompileResultType< CharType > | Compile (TArray< TExpressionToken< CharType > > InTokens, const FExpressionGrammar &InGrammar) |
| |
| template<typename CharType > |
| FExpressionResult | Evaluate (const CharType *InExpression, const TTokenDefinitions< CharType > &InTokenDefinitions, const FExpressionGrammar &InGrammar, const TIOperatorEvaluationEnvironment< CharType > &InEnvironment) |
| |
| template<typename CharType > |
| FExpressionResult | Evaluate (const TArray< TCompiledToken< CharType > > &CompiledTokens, const TIOperatorEvaluationEnvironment< CharType > &InEnvironment) |
| |
| template CORE_API TLexResultType< ANSICHAR > | Lex< ANSICHAR > (const ANSICHAR *InExpression, const TTokenDefinitions< ANSICHAR > &TokenDefinitions) |
| |
| template CORE_API TLexResultType< UTF8CHAR > | Lex< UTF8CHAR > (const UTF8CHAR *InExpression, const TTokenDefinitions< UTF8CHAR > &TokenDefinitions) |
| |
| template CORE_API TLexResultType< WIDECHAR > | Lex< WIDECHAR > (const WIDECHAR *InExpression, const TTokenDefinitions< WIDECHAR > &TokenDefinitions) |
| |
| template CORE_API TCompileResultType< ANSICHAR > | Compile< ANSICHAR > (const ANSICHAR *InExpression, const TTokenDefinitions< ANSICHAR > &TokenDefinitions, const FExpressionGrammar &InGrammar) |
| |
| template CORE_API TCompileResultType< UTF8CHAR > | Compile< UTF8CHAR > (const UTF8CHAR *InExpression, const TTokenDefinitions< UTF8CHAR > &TokenDefinitions, const FExpressionGrammar &InGrammar) |
| |
| template CORE_API TCompileResultType< WIDECHAR > | Compile< WIDECHAR > (const WIDECHAR *InExpression, const TTokenDefinitions< WIDECHAR > &TokenDefinitions, const FExpressionGrammar &InGrammar) |
| |
| template CORE_API TCompileResultType< ANSICHAR > | Compile< ANSICHAR > (TArray< TExpressionToken< ANSICHAR > > InTokens, const FExpressionGrammar &InGrammar) |
| |
| template CORE_API TCompileResultType< UTF8CHAR > | Compile< UTF8CHAR > (TArray< TExpressionToken< UTF8CHAR > > InTokens, const FExpressionGrammar &InGrammar) |
| |
| template CORE_API TCompileResultType< WIDECHAR > | Compile< WIDECHAR > (TArray< TExpressionToken< WIDECHAR > > InTokens, const FExpressionGrammar &InGrammar) |
| |
| template CORE_API FExpressionResult | Evaluate< ANSICHAR > (const ANSICHAR *InExpression, const TTokenDefinitions< ANSICHAR > &InTokenDefinitions, const FExpressionGrammar &InGrammar, const TIOperatorEvaluationEnvironment< ANSICHAR > &InEnvironment) |
| |
| template CORE_API FExpressionResult | Evaluate< UTF8CHAR > (const UTF8CHAR *InExpression, const TTokenDefinitions< UTF8CHAR > &InTokenDefinitions, const FExpressionGrammar &InGrammar, const TIOperatorEvaluationEnvironment< UTF8CHAR > &InEnvironment) |
| |
| template CORE_API FExpressionResult | Evaluate< WIDECHAR > (const WIDECHAR *InExpression, const TTokenDefinitions< WIDECHAR > &InTokenDefinitions, const FExpressionGrammar &InGrammar, const TIOperatorEvaluationEnvironment< WIDECHAR > &InEnvironment) |
| |
| template CORE_API FExpressionResult | Evaluate< ANSICHAR > (const TArray< TCompiledToken< ANSICHAR > > &CompiledTokens, const TIOperatorEvaluationEnvironment< ANSICHAR > &InEnvironment) |
| |
| template CORE_API FExpressionResult | Evaluate< UTF8CHAR > (const TArray< TCompiledToken< UTF8CHAR > > &CompiledTokens, const TIOperatorEvaluationEnvironment< UTF8CHAR > &InEnvironment) |
| |
| template CORE_API FExpressionResult | Evaluate< WIDECHAR > (const TArray< TCompiledToken< WIDECHAR > > &CompiledTokens, const TIOperatorEvaluationEnvironment< WIDECHAR > &InEnvironment) |
| |
| template<typename TSymbol > |
| TOptional< FExpressionError > | ConsumeSymbol (FExpressionTokenConsumer &Consumer) |
| |
| template<typename CharType > |
| CORE_API TLexResultType< CharType > | Lex (const CharType *InExpression, const TTokenDefinitions< CharType > &TokenDefinitions) |
| |
| template<typename CharType > |
| CORE_API TCompileResultType< CharType > | Compile (const CharType *InExpression, const TTokenDefinitions< CharType > &TokenDefinitions, const FExpressionGrammar &InGrammar) |
| |
| template<typename CharType > |
| CORE_API TCompileResultType< CharType > | Compile (TArray< TExpressionToken< CharType > > InTokens, const FExpressionGrammar &InGrammar) |
| |
| template<typename CharType > |
| CORE_API FExpressionResult | Evaluate (const CharType *InExpression, const TTokenDefinitions< CharType > &InTokenDefinitions, const FExpressionGrammar &InGrammar, const TIOperatorEvaluationEnvironment< CharType > &InEnvironment) |
| |
| template<typename CharType > |
| CORE_API FExpressionResult | Evaluate (const TArray< TCompiledToken< CharType > > &CompiledTokens, const TIOperatorEvaluationEnvironment< CharType > &InEnvironment) |
| |
| template<typename CharType , typename ContextType > |
| FExpressionResult | Evaluate (const CharType *InExpression, const TTokenDefinitions< CharType > &InTokenDefinitions, const FExpressionGrammar &InGrammar, const TOperatorJumpTable< ContextType > &InJumpTable, const ContextType *InContext=nullptr) |
| |
| template<typename ContextType > |
| FExpressionResult | Evaluate (const TArray< FCompiledToken > &CompiledTokens, const TOperatorJumpTable< ContextType > &InJumpTable, const ContextType *InContext=nullptr) |
| |
Define some expression types for basic arithmetic
An expression parser, responsible for lexing, compiling, and evaluating expressions. The parser supports 3 functions:
- Lexing the expression into a set of user defined tokens,
- Compiling the tokenized expression to an efficient reverse-polish execution order,
- Evaluating the compiled tokens
See ExpressionParserExamples.cpp for example usage.