UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
FTextFilterExpressionEvaluator Class Reference

#include <TextFilterExpressionEvaluator.h>

Public Member Functions

CORE_API FTextFilterExpressionEvaluator (const ETextFilterExpressionEvaluatorMode InMode)
 
CORE_API FTextFilterExpressionEvaluator (const FTextFilterExpressionEvaluator &Other)
 
CORE_API FTextFilterExpressionEvaluatoroperator= (const FTextFilterExpressionEvaluator &Other)
 
virtual CORE_API ~FTextFilterExpressionEvaluator ()
 
CORE_API ETextFilterExpressionType GetFilterType () const
 
CORE_API FText GetFilterText () const
 
CORE_API bool SetFilterText (const FText &InFilterText)
 
CORE_API FText GetFilterErrorText () const
 
CORE_API const TArray< FExpressionToken > & GetFilterExpressionTokens () const
 
CORE_API bool TestTextFilter (const ITextFilterExpressionContext &InContext) const
 
CORE_API void AddFunctionTokenCallback (FString InFunctionName, FTokenFunctionHandler InCallback)
 

Protected Member Functions

CORE_API void SetupGrammar ()
 
virtual CORE_API void ConstructExpressionParser ()
 
virtual CORE_API bool EvaluateCompiledExpression (const ExpressionParser::CompileResultType &InCompiledResult, const ITextFilterExpressionContext &InContext, FText *OutErrorText) const
 

Protected Attributes

ETextFilterExpressionEvaluatorMode ExpressionEvaluatorMode
 
ETextFilterExpressionType FilterType
 
FText FilterText
 
FText FilterErrorText
 
TArray< FExpressionTokenExpressionTokens
 
TOptional< ExpressionParser::CompileResultTypeCompiledFilter
 
TOptional< TextFilterExpressionParser::FTextToken > CompiledFilterSingleBasicStringTextToken
 
TMap< FString, FTokenFunctionHandlerTokenFunctionHandlers
 
FTokenDefinitions TokenDefinitions
 
FExpressionGrammar Grammar
 
TOperatorJumpTable< ITextFilterExpressionContextJumpTable
 

Detailed Description

Defines an expression evaluator that can be used to perform complex text filter queries

Constructor & Destructor Documentation

◆ FTextFilterExpressionEvaluator() [1/2]

FTextFilterExpressionEvaluator::FTextFilterExpressionEvaluator ( const ETextFilterExpressionEvaluatorMode  InMode)

Construction and assignment

◆ FTextFilterExpressionEvaluator() [2/2]

FTextFilterExpressionEvaluator::FTextFilterExpressionEvaluator ( const FTextFilterExpressionEvaluator Other)

◆ ~FTextFilterExpressionEvaluator()

FTextFilterExpressionEvaluator::~FTextFilterExpressionEvaluator ( )
virtualdefault

Member Function Documentation

◆ AddFunctionTokenCallback()

void FTextFilterExpressionEvaluator::AddFunctionTokenCallback ( FString  InFunctionName,
FTokenFunctionHandler  InCallback 
)

Helper function to add callbacks for function tokens

◆ ConstructExpressionParser()

void FTextFilterExpressionEvaluator::ConstructExpressionParser ( )
protectedvirtual

Common function to construct the expression parser

◆ EvaluateCompiledExpression()

bool FTextFilterExpressionEvaluator::EvaluateCompiledExpression ( const ExpressionParser::CompileResultType InCompiledResult,
const ITextFilterExpressionContext InContext,
FText OutErrorText 
) const
protectedvirtual

Evaluate the given compiled result, and optionally populate OutErrorText with any error information

◆ GetFilterErrorText()

FText FTextFilterExpressionEvaluator::GetFilterErrorText ( ) const

Get the last error returned from lexing or compiling the current filter text

◆ GetFilterExpressionTokens()

const TArray< FExpressionToken > & FTextFilterExpressionEvaluator::GetFilterExpressionTokens ( ) const

Get the filter expression tokens created from the current filter text

◆ GetFilterText()

FText FTextFilterExpressionEvaluator::GetFilterText ( ) const

Get the filter terms that we're currently using

◆ GetFilterType()

ETextFilterExpressionType FTextFilterExpressionEvaluator::GetFilterType ( ) const

Get the complexity of the current filter terms

◆ operator=()

FTextFilterExpressionEvaluator & FTextFilterExpressionEvaluator::operator= ( const FTextFilterExpressionEvaluator Other)

◆ SetFilterText()

bool FTextFilterExpressionEvaluator::SetFilterText ( const FText InFilterText)

Set the filter terms to be compiled for evaluation later. Returns true if the filter was actually changed

◆ SetupGrammar()

void FTextFilterExpressionEvaluator::SetupGrammar ( )
protected

Sets up grammar used for evaluation

◆ TestTextFilter()

bool FTextFilterExpressionEvaluator::TestTextFilter ( const ITextFilterExpressionContext InContext) const

Test our compiled filter using the given context

Member Data Documentation

◆ CompiledFilter

TOptional<ExpressionParser::CompileResultType> FTextFilterExpressionEvaluator::CompiledFilter
protected

The compiled filter created from the current filter text (compiled from FilterText)

◆ CompiledFilterSingleBasicStringTextToken

TOptional<TextFilterExpressionParser::FTextToken> FTextFilterExpressionEvaluator::CompiledFilterSingleBasicStringTextToken
protected

If there is only one token that is basic string it will be stored here to avoid recompile per item compared.

◆ ExpressionEvaluatorMode

ETextFilterExpressionEvaluatorMode FTextFilterExpressionEvaluator::ExpressionEvaluatorMode
protected

Defines whether or not the expression parser can evaluate complex expressions

◆ ExpressionTokens

TArray<FExpressionToken> FTextFilterExpressionEvaluator::ExpressionTokens
protected

The filter expression tokens created from the current filter text (lexed from FilterText)

◆ FilterErrorText

FText FTextFilterExpressionEvaluator::FilterErrorText
protected

The last error returned from lexing or compiling the current filter text

◆ FilterText

FText FTextFilterExpressionEvaluator::FilterText
protected

The the filter terms that we're currently using (compiled into CompiledFilter)

◆ FilterType

ETextFilterExpressionType FTextFilterExpressionEvaluator::FilterType
protected

The cached complexity of the current filter terms

◆ Grammar

FExpressionGrammar FTextFilterExpressionEvaluator::Grammar
protected

◆ JumpTable

TOperatorJumpTable<ITextFilterExpressionContext> FTextFilterExpressionEvaluator::JumpTable
protected

◆ TokenDefinitions

FTokenDefinitions FTextFilterExpressionEvaluator::TokenDefinitions
protected

Expression parser

◆ TokenFunctionHandlers

TMap<FString, FTokenFunctionHandler> FTextFilterExpressionEvaluator::TokenFunctionHandlers
protected

Mapping of function names to their callbacks


The documentation for this class was generated from the following files: