The Conroy & Conroy Subroutine Library (2021.3 edition)

TCOM_Generic_Value
What: class TCommon_COM_Interface
File: _GenVal
Layer: 0
Platforms: C++, Pascal (D2)

This is the abstract base class for representing composite data types/values. The methods are all stdcall.

_Char
char _Char()
property _Char : char read Get_Char write Set_Char
Access to the value as a character.

_Clone
TGeneric_Value* Clone()
function Clone : TGeneric_Value
Returns a clone of the instance.

_Double
double _Double()
property _Double : double read Get_Double write Set_Double
Access to the value as a 64-bit floating point value.

_Extended
long double _Extended()
property _Extended : extended read Get_Extended write Set_Extended
Access to the value as an 80-bit floating point value.

_PChar
char* _PChar()
property _PChar : PChar read Get_PChar write Set_PChar
Access to the value as a pointer to characters.

_Single
float _Single()
property _Single : single read Get_Single write Set_Single
Access to the value as a 32-bit floating point value.

_String
string _String()
property _String : string read Get_String Set_String
Access to the value as a string.

Bool
bool Bool()
property Bool : boolean read Get_Boolean write Set_Boolean
Access to the value as a boolean.

Byte_Bool
ByteBool Byte_Bool()
proeprty Byte_Bool : bytebool read Get_Byte_Bool write Set_Byte_Bool
Access to the value as an 8-bit boolean value.

Can_Convert
bool Can_Convert( TValue_Data_Type Typ )
function Can_Convert( Typ : TValue_Data_Type ) : boolean
Returns true if value can be converted to the specified data type.

Cast
void Cast( TGeneric_Value* Typ )
procedure Cast( Typ : TGeneric_Value )
Casts the type to the type of the specified value.

Constant
bool Constant()
function Constant : boolean
Returns true if the type is a constant.

Convert
TGeneric_Value* Convert( TGeneric_Value* Class_Type, bool &Loss )
function Convert( Class_Type : TGeneric_Value ; var Loss : boolean ) : TGeneric_Value
Returns a version of the value converted to the passed type specification. Returns nil if the conversion cannot be done. Loss is ignored when passed and is True on return if there was a loss of precision.

Data_Type
TValue_Data_Type Data_Type()
function Data_Type : TValue_Data_Type
Returns the data type.

Dereference
TGeneric_Value* Dereference()
function Dereference : TGeneric_Value
Dereferences a pointer.

Deserialize
void Deserialize( char* Value )
procedure Deserialize( Value : PChar )
Constructs the object from the passed serialization string.

Family
TData_Type_Family Family()
function Family : TData_Type_Family
Returns family of the type.

Get_Boolean
bool Get_Boolean()
function Get_Boolean : boolean
Returns the value as a boolean.

Get_ByteBool
ByteBool Get_ByteBool()
function Get_ByteBool : bytebool
Returns the value as a single-byte boolean.

Get_Char
char Get_Char()
function Get_Char : char
Returns the value as a character.

Get_Double
double Get_Double()
function Get_Double : double
Returns the value as a 64-bit floating point value.

Get_Extended
long double Get_Extended()
function Get_Extended : extended
Returns the value as an 80-bit floating point value.

Get_Integer8
int8 Get_Integer8()
function Get_Integer8 : int8
Returns the value as an 8-bit signed integer.

Get_Integer16
int16 Get_Integer16()
function Get_Integer16 : int16
Returns the value as an 16-bit signed integer.

Get_Integer32
int32 Get_Integer32()
function Get_Integer32 : int32
Returns the value as a 32-bit signed integer.

Get_Integer64
int64 Get_Integer64()
function Get_Integer64 : int64
(Note: Delphi 3 and up only for Delphi)
Returns the value as a 64-bit signed integer.

Get_LongBool
BOOL Get_LongBool()
function Get_LongBool : longbool
Returns the value as a 32-bit boolean.

Get_PChar
char* Get_PChar()
function Get_PChar : PChar
Returns a pointer to the data.

Get_Single
float Get_Single()
function Get_Single : single
Returns the value as a 32-bit floating point value.

Get_String
string Get_String()
function Get_String : string
Returns the value as a string.

Get_Undefined
void Get_Undefined( void* Buffer, int32 Len )
procedure Get_Undefined( Buffer : pointer ; Len : longint )
Gets the value as a binary value, writing it to the specified buffer. If the passed buffer length is too small to hold the entire value, only Len bytes are written to the buffer.

Get_Unsigned_Integer8
uint8 Get_Unsigned_Integer8()
function Get_Unsigned_Integer8 : uint8
Returns the value as an 8-bit signed integer.

Get_Unsigned_Integer16
uint16 Get_Unsigned_Integer16()
function Get_Unsigned_Integer16 : uint16
Returns the value as a 16-bit unsigned integer.

Get_Unsigned_Integer32
uint32 Get_Unsigned_Integer32()
(Note: In Delphi, only applies to Delphi 2 and later)
function Get_Unsigned_Integer32 : uint32
Returns the value as a 32-bit unsigned integer.

Get_Unsigned_Integer64
int64 Get_Unsigned_Integer64()
function Get_Unsigned_Integer64 : int64
(Note: Delphi 3 and up only for Delphi)
Returns the value as a 64-bit signed integer.

Get_WordBool
WordBool Get_WordBool()
function Get_WordBool : wordbool
Returns the value as a 16-bit boolean.

Integer8
int8 Integer8()
property Integer8 : int8 read Get_Integer8 write Set_Integer8
Access to the value as an 8-bit signed integer.

Integer16
int16 Integer16()
int16 Integer16 : int16 read Get_Integer16 write Set_Integer16
Access to the value as a 16-bit signed integer.

Integer32
int32 Integer32()
property Integer32 : int32 read Get_Integer32 write Set_Integer32
Access to the value as a 32-bit signed integer.

Integer64
int64 Integer64()
property Integer64 : int64 read Get_Integer64 write Set_Integer64
Access to the value as a 64-bit signed integer.

Long_Bool
BOOL Long_Bool()
property Long_Bool : longbool read Get_Long_Bool write Set_Long_Bool
Access to the value as a 32-bit boolean.

Name
string Name()
function Name : string
Returns the name of the type.

Serialize
char* Serialize()
function Serialize : PCha
Returns a string that can later be used by Deserialize to reconstruct the object instance.

Set_Boolean
void Set_Boolean( bool B )
procedure Set_Boolean( B : boolean )
Sets the value to the passed boolean.

Set_ByteBool
void Set_ByteBool( ByteBool B )
procedure Set_ByteBool( B : bytebool )
Sets the value to a single-byte boolean of B.

Set_Char
void Set_Char( char C )
procedure Set_Char( C : char )
Sets the value to the passed character.

Set_Double
void Set_Double( double D )
procedure Set_Double( D : double )
Sets the value to the specified 64-bit floating point value.

Set_Extended
void Set_Extended( long double E )
procedure Set_Extended( E : extended )
Sets the value to the specified 80-bit floating point value.

Set_Integer8
void Set_Integer8( int8 I )
procedure Set_Integer8( I : int8 )
Sets the value to the passed 8-bit integer value.

Set_Integer16
void Set_Integer16( int16 I )
procedure Set_Integer16( I : int16 )
Sets the value to the passed 16-bit integer value.

Set_Integer32
void Set_Integer32( int32 I )
procedure Set_Integer32( I : int32 )
Sets the value to the passed 32-bit integer value.

Set_Integer64
void Set_Integer64( int64 I )
procedure Set_Integer64( I : int64 )
Sets the value to the passed 64-bit integer value.

Set_LongBool
void Set_LongBool( BOOL B )
procedure Set_LongBool( B : longbool )
Sets the value to the passed 32-bit boolean.

Set_Null
void Set_Null()
procedure Set_Null
Sets the value to null.

Set_PChar
void Set_PChar( char* P )
procedure Set_PChar( P : PChar )
Sets the value to the passed zero-terminated value.

Set_Single
void Set_Single( float S )
procedure Set_Single( S : single )
Sets the value to the specified 32-bit floating point value.

Set_String
void Set_String( const string S )
procedure Set_String( const S : string )
Sets the value to the specified string.

Set_Undefined
void Set_Undefined( void* Buffer, int32 Len )
procedure Set_Undefined( Buffer : pointer ; Len : longint )
Sets the value to the passed binary data of Len bytes.

Set_Unsigned_Integer8
void Set_Unsigned_Integer8( uint8 I )
procedure Set_Unsigned_Integer8( I : uint8 )
Sets the value to the passed 8-bit unsigned integer value.

Set_Unsigned_Integer16
void Set_Unsigned_Integer16( uint16 I )
procedure Set_Unsigned_Integer16( I : uint16 )
Sets the value to the passed 16-bit unsigned integer value.

Set_Unsigned_Integer32
void Set_Unsigned_Integer32( uint32 I )
procedure Set_Unsigned_Integer32( I : uint32 )
Sets the value to the passed 32-bit unsigned integer value.

Set_Unsigned_Integer64
void Set_Unsigned_Integer64( uint32 I )
procedure Set_Unsigned_Integer64( I : uint32 )
Sets the value to the passed 64-bit unsigned integer value.

Set_WordBool
void Set_WordBool( WordBool B )
procedure Set_WordBool( B : wordbool )
Sets the value to the passed 16-bit boolean.

Simple_Cast
void Simple_Cast( TValue_Data_Type Typ )
procedure Simple_Cast( Typ : TValue_Data_Type )
Casts the type to the specified type.

Size
int32 Size()
function Size : longint
Returns the size of the type, in bytes.

Total_Size
int32 Total_Size()
function Total_Size : longint
Size of all associated data, in bytes. For instance, Size may return the size of an object but Total_Size also includes the size of any associated data.

Type_Information
TType_Information* Type_Information()
function Type_Information : TType_Information
Returns type information.

Unsigned_Integer8
uint8 Unsigned_Integer8()
property Unsigned_Integer8 : uint8 read Get_Unsigned_Integer8 write Set_Unsigned_Integer8
Access to the value as an 8-bit unsigned integer.

Unsigned_Integer16
uint16 Unsigned_Integer16()
property Unsigned_Integer16 : uint16 read Get_Unsigned_Integer16 write Set_Unsigned_Integer16
Access to the value as a 16-bit unsigned integer.

Unsigned_Integer32
uint32 Unsigned_Integer32()
property Unsigned_Integer32 : uint32 read Get_Unsigned_Integer32 write Set_Unsigned_Integer32
Access to the value as a 32-bit unsigned integer.

Unsigned_Integer64
uint64 Unsigned_Integer64()
property Unsigned_Integer64 : uint64 read Get_Unsigned_Integer64 write Set_Unsigned_Integer64
Access to the value as a 64-bit unsigned integer.

User_Data_Type_Name
string User_Data_Type_Name()
function User_Data_Type_Name : string
Returns nil if not a composite (eg array).

Word_Bool
wordbool Word_Bool()
property Word_Bool : wordbool read Get_Word_Bool write Set_Word_Bool
Access to the value as a 16-bit boolean.