Sign in Join
FPDoc Onlineexperiment

TExprBuiltInManager class

In unit fpExprPars

Class for managing built-in functions and variables in expressions

Declaration

pascal
TExprBuiltInManager = class(TComponent)

Inheritance

  1. TExprBuiltInManager
  2. TComponent
  3. TPersistent
  4. TObject

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.

See also

Properties

Defsprotected
IdentifierCountpublicNumber of built-in identifiers
IdentifierspublicArray access to built-in identifiers

Methods

CreatepublicCreate built-in manager instance
DestroypublicDestroy built-in manager instance
IndexOfIdentifierpublicFind index of built-in identifier
FindIdentifierpublicFind built-in identifier by name
IdentifierByNamepublicGet identifier by name with exception on not found
AddVariablepublicAdd variable to built-in collection
AddBooleanVariablepublicAdd boolean variable to built-in collection
AddIntegerVariablepublicAdd integer variable to built-in collection
AddFloatVariablepublicAdd float variable to built-in collection
AddCurrencyVariablepublicAdd currency variable to built-in collection
AddStringVariablepublicAdd string variable to built-in collection
AddDateTimeVariablepublicAdd datetime variable to built-in collection
AddFunctionpublicAdd function to built-in collection
Deletepublic
Removepublic

Inherited

From TComponent (74)

_AddRef _Release BeforeDestruction CanObserve ChangeName ComObject ComponentCount ComponentIndex Components ComponentState ComponentStyle DefineProperties DesignInfo DestroyComponents Destroying ExecuteAction FindComponent FreeNotification FreeOnRelease GetChildOwner GetChildParent GetChildren GetDeltaStreams GetEnumerator GetIDsOfNames GetNamePath GetObservers GetOwner GetParentComponent GetTypeInfo GetTypeInfoCount HasParent iicrGetComponent InsertComponent Invoke IsImplementorOf Loaded Loading Name Notification ObserverAdded Observers OnGetDeltaStreams Owner PaletteCreated QueryInterface ReadDeltaState ReadDeltaStream ReadState ReferenceInterface RemoveComponent RemoveFreeNotification RemoveFreeNotifications SafeCallException SetAncestor SetChildOrder SetDesigning SetDesignInstance SetInline SetName SetParentComponent SetSubComponent Tag ToString TToStringNameMode UpdateAction Updated UpdateRegistry Updating ValidateContainer ValidateInsert ValidateRename VCLComObject WriteState

From TPersistent (5)

Assign AssignTo FPOAttachObserver FPODetachObserver FPONotifyObservers

From TObject (37)

AfterConstruction CheckDisposed ClassInfo ClassName ClassNameIs ClassParent ClassType CleanupInstance DefaultHandler DefaultHandlerStr Dispatch DispatchStr Disposed DisposeOf Equals FieldAddress Free FreeInstance GetDisposed GetHashCode GetInterface GetInterfaceByStr GetInterfaceEntry GetInterfaceEntryByStr GetInterfaceTable GetInterfaceWeak GetLastCastErrorInfo InheritsFrom InitInstance InstanceSize MethodAddress MethodName newinstance QualifiedClassName StringMessageTable SystemHasExtendedRTTI UnitName

An experiment, built from development snapshots. Not the official Free Pascal or Lazarus documentation.