Sign in Join
FPDoc Onlineexperiment

TFPEqualOperation class

In unit fpExprPars

Internally used class for equality comparison operations

Declaration

pascal
TFPEqualOperation = class(TFPBooleanResultOperation)

Inheritance

  1. TFPEqualOperation
  2. TFPBooleanResultOperation
  3. TFPBinaryOperation
  4. TFPExprNode
  5. TObject

Descends from it: TFPUnequalOperation

Description

The TFPEqualOperation class implements the equality comparison operation (=) between two operands of compatible types. It extends TFPBooleanResultOperation to provide equality-specific comparison logic.

The operation compares two values and returns True if they are equal, False otherwise. It handles different data types appropriately, using numeric equality for numbers, string comparison for strings, and boolean comparison for boolean values.

Type conversion is performed when necessary to compare values of different but compatible types (e.g., comparing an integer with a float).

This class is used internally by the TFPExpressionParser class to construct an AST (Abstract Syntax Tree). There is normally no need for you to use or instantiate this class directly.

See also

Methods

GetNodeValueprotected
AsStringpublicGet string representation of equality operation

Inherited

From TFPBooleanResultOperation (2)

Check NodeType

From TFPBinaryOperation (8)

CheckSameNodeTypes Create Destroy HasAggregate InitAggregate left Right UpdateAggregate

From TFPExprNode (3)

CheckNodeType IsAggregate NodeValue

From TObject (40)

AfterConstruction BeforeDestruction 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 SafeCallException StringMessageTable SystemHasExtendedRTTI ToString UnitName

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