Skip to content

InvalidCustomVariantType

Handler for invalid custom variants.

Declaration

Source position: variants.pp line 297

var
  InvalidCustomVariantType: type

  TCustomVariantType = class(TObject, IInterface)
  public
    constructor Create;  overload; overload;
    constructor Create(RequestedVarType: tvartype);  overload; overload;
    destructor Destroy;  override;
    function IsClear(const V: tvardata) : Boolean;  virtual;
    procedure Cast(var Dest: tvardata; const Source: tvardata);  virtual;
    procedure CastTo(var Dest: tvardata; const Source: tvardata; 
                const aVarType: tvartype);  virtual;
    procedure CastToOle(var Dest: tvardata; const Source: tvardata)
                   ;  virtual;
    procedure Clear(var V: tvardata);  virtual;  abstract;
    procedure Copy(var Dest: tvardata; const Source: tvardata; 
              const Indirect: Boolean);  virtual;  abstract;
    procedure BinaryOp(var Left: tvardata; const Right: tvardata; 
                  const Operation: tvarop);  virtual;
    procedure UnaryOp(var Right: tvardata; const Operation: tvarop)
                 ;  virtual;
    function CompareOp(const Left: tvardata; const Right: tvardata; 
                  const Operation: tvarop) : Boolean;  virtual;
    procedure Compare(const Left: tvardata; const Right: tvardata; 
                 var Relationship: TVarCompareResult);  virtual;
    property VarType: tvartype read FVarType;
  end;

Description

InvalidCustomVariantType can be set to a TCustomVariantType instance to indicate an an unknown type. By default it is set to Pointer(-1).

See also

Name Description
FindCustomVariantType Find a custom variant class on vartype.