TExprBuiltInManager¶
Class for managing built-in functions and variables in expressions
Declaration¶
Source position: fpexprpars.pp line 804
type
TExprBuiltInManager = class(TComponent)
public
constructor Create;
destructor Destroy;
function IndexOfIdentifier : Integer;
function FindIdentifier : TFPBuiltInExprIdentifierDef;
function IdentifierByName : TFPBuiltInExprIdentifierDef;
function AddVariable : TFPBuiltInExprIdentifierDef;
function AddBooleanVariable : TFPBuiltInExprIdentifierDef;
function AddIntegerVariable : TFPBuiltInExprIdentifierDef;
function AddFloatVariable : TFPBuiltInExprIdentifierDef;
function AddCurrencyVariable : TFPBuiltInExprIdentifierDef;
function AddStringVariable : TFPBuiltInExprIdentifierDef;
function AddDateTimeVariable : TFPBuiltInExprIdentifierDef;
function AddFunction(const ACategory: TBuiltInCategory;
const AName: ShortString;
const AResultType: AnsiChar;
const AParamTypes: AnsiString;
ACallBack: TFPExprFunctionCallBack)
: TFPBuiltInExprIdentifierDef;
function AddFunction(const ACategory: TBuiltInCategory;
const AName: ShortString;
const AResultType: AnsiChar;
const AParamTypes: AnsiString;
ACallBack: TFPExprFunctionEvent)
: TFPBuiltInExprIdentifierDef;
function AddFunction(const ACategory: TBuiltInCategory;
const AName: ShortString;
const AResultType: AnsiChar;
const AParamTypes: AnsiString;
ANodeClass: TFPExprFunctionClass)
: TFPBuiltInExprIdentifierDef;
procedure Delete;
function Remove : Integer;
property IdentifierCount: Integer; {r}
property Identifiers[AIndex : Integer]: TFPBuiltInExprIdentifierDef; {r}
end;
Inheritance¶
Description¶
The TExprBuiltInManager class serves as a manager for built-in functions and predefined variables that can be used within expressions. It provides a centralized registry where built-in mathematical functions, string functions, date/time functions, and system variables are registered and made available to the expression parser.
The manager handles the registration, lookup, and instantiation of built-in functions when they are encountered during expression parsing. It also maintains predefined variables such as system constants that can be referenced in expressions.
The TExprBuiltInManager class allows for extensibility by enabling the registration of custom built-in functions and variables that should be available across all expression evaluations.
Properties¶
| Member | Visibility | Description |
|---|---|---|
| IdentifierCount read only | public | Number of built-in identifiers |
| Identifiers read only | public | Array access to built-in identifiers |
Methods¶
| Member | Visibility | Description |
|---|---|---|
| AddBooleanVariable | public | Add boolean variable to built-in collection |
| AddCurrencyVariable | public | Add currency variable to built-in collection |
| AddDateTimeVariable | public | Add datetime variable to built-in collection |
| AddFloatVariable | public | Add float variable to built-in collection |
| AddFunction | public | Add function to built-in collection |
| AddIntegerVariable | public | Add integer variable to built-in collection |
| AddStringVariable | public | Add string variable to built-in collection |
| AddVariable | public | Add variable to built-in collection |
| Create | public | Create built-in manager instance |
| Delete | public | |
| Destroy | public | Destroy built-in manager instance |
| FindIdentifier | public | Find built-in identifier by name |
| IdentifierByName | public | Get identifier by name with exception on not found |
| IndexOfIdentifier | public | Find index of built-in identifier |
| Remove | public |
See also¶
| Name | Description |
|---|---|
| TFPExpressionParser | Class for parsing and evaluating mathematical expressions |