class
	ECOM_VARIANT

General
	cluster: com.Structures
	description: "COM VARIANT structure"
	create: make_from_pointer, make

Ancestors
	ECOM_STRUCTURE
	ECOM_VAR_TYPE

Queries
	boolean_array: ECOM_ARRAY [BOOLEAN]
	boolean_array_reference: CELL [ECOM_ARRAY [BOOLEAN]]
	boolean_reference: BOOLEAN_REF
	boolean_value: BOOLEAN
	char_array: ECOM_ARRAY [CHARACTER]
	char_array_reference: CELL [ECOM_ARRAY [CHARACTER]]
	character_reference: CHARACTER_REF
	character_value: CHARACTER
	currency: ECOM_CURRENCY
	currency_array: ECOM_ARRAY [ECOM_CURRENCY]
	currency_array_reference: CELL [ECOM_ARRAY [ECOM_CURRENCY]]
	currency_reference: ECOM_CURRENCY
	date_array: ECOM_ARRAY [DATE_TIME]
	date_array_reference: CELL [ECOM_ARRAY [DATE_TIME]]
	date_reference: CELL [DATE_TIME]
	date_value: DATE_TIME
	decimal: ECOM_DECIMAL
	decimal_array: ECOM_ARRAY [ECOM_DECIMAL]
	decimal_array_reference: CELL [ECOM_ARRAY [ECOM_DECIMAL]]
	decimal_reference: ECOM_DECIMAL
	dispatch_interface: ECOM_AUTOMATION_INTERFACE
	dispatch_interface_array: ECOM_ARRAY [ECOM_AUTOMATION_INTERFACE]
	dispatch_interface_array_reference: CELL [ECOM_ARRAY [ECOM_AUTOMATION_INTERFACE]]
	dispatch_interface_reference: CELL [ECOM_AUTOMATION_INTERFACE]
	double_array: ECOM_ARRAY [DOUBLE]
	double_array_reference: CELL [ECOM_ARRAY [DOUBLE]]
	error: ECOM_HRESULT
	error_array: ECOM_ARRAY [ECOM_HRESULT]
	error_array_reference: CELL [ECOM_ARRAY [ECOM_HRESULT]]
	error_reference: ECOM_HRESULT
	exists: BOOLEAN
	integer2: INTEGER
	integer2_reference: INTEGER_REF
	integer4: INTEGER
	integer4_array: ECOM_ARRAY [INTEGER]
	integer4_array_reference: CELL [ECOM_ARRAY [INTEGER]]
	integer4_reference: INTEGER_REF
	integer_array: ECOM_ARRAY [INTEGER]
	integer_array_reference: CELL [ECOM_ARRAY [INTEGER]]
	integer_reference: INTEGER_REF
	integer_value: INTEGER
	is_array (variable_type: INTEGER): BOOLEAN
	is_basic (a_type: INTEGER): BOOLEAN
	is_boolean (variable_type: INTEGER): BOOLEAN
	is_bstr (variable_type: INTEGER): BOOLEAN
	is_byref (variable_type: INTEGER): BOOLEAN
	is_carray (variable_type: INTEGER): BOOLEAN
	is_character (variable_type: INTEGER): BOOLEAN
	is_currency (variable_type: INTEGER): BOOLEAN
	is_date (variable_type: INTEGER): BOOLEAN
	is_decimal (variable_type: INTEGER): BOOLEAN
	is_dispatch (variable_type: INTEGER): BOOLEAN
	is_error (variable_type: INTEGER): BOOLEAN
	is_hresult (variable_type: INTEGER): BOOLEAN
	is_int (variable_type: INTEGER): BOOLEAN
	is_integer2 (variable_type: INTEGER): BOOLEAN
	is_integer4 (variable_type: INTEGER): BOOLEAN
	is_long_long (variable_type: INTEGER): BOOLEAN
	is_lpstr (variable_type: INTEGER): BOOLEAN
	is_lpwstr (variable_type: INTEGER): BOOLEAN
	is_ptr (variable_type: INTEGER): BOOLEAN
	is_real4 (variable_type: INTEGER): BOOLEAN
	is_real8 (variable_type: INTEGER): BOOLEAN
	is_safearray (variable_type: INTEGER): BOOLEAN
	is_unknown (variable_type: INTEGER): BOOLEAN
	is_unsigned_char (variable_type: INTEGER): BOOLEAN
	is_unsigned_int (variable_type: INTEGER): BOOLEAN
	is_unsigned_long (variable_type: INTEGER): BOOLEAN
	is_unsigned_long_long (variable_type: INTEGER): BOOLEAN
	is_unsigned_short (variable_type: INTEGER): BOOLEAN
	is_user_defined (variable_type: INTEGER): BOOLEAN
	is_variant (variable_type: INTEGER): BOOLEAN
	is_void (variable_type: INTEGER): BOOLEAN
	item: POINTER
	out: STRING
	real4: REAL
	real4_reference: REAL_REF
	real8: DOUBLE
	real8_reference: DOUBLE_REF
	real_array: ECOM_ARRAY [REAL]
	real_array_reference: CELL [ECOM_ARRAY [REAL]]
	shared: BOOLEAN
	short_array: ECOM_ARRAY [INTEGER]
	short_array_reference: CELL [ECOM_ARRAY [INTEGER]]
	string_array: ECOM_ARRAY [STRING]
	string_array_reference: CELL [ECOM_ARRAY [STRING]]
	string_reference: CELL [STRING]
	string_value: STRING
	structure_size: INTEGER
	to_integer: INTEGER
	unknown_interface: ECOM_UNKNOWN_INTERFACE
	unknown_interface_array: ECOM_ARRAY [ECOM_UNKNOWN_INTERFACE]
	unknown_interface_array_reference: CELL [ECOM_ARRAY [ECOM_UNKNOWN_INTERFACE]]
	unknown_interface_reference: CELL [ECOM_UNKNOWN_INTERFACE]
	unsigned_character_array: ECOM_ARRAY [CHARACTER]
	unsigned_character_array_reference: CELL [ECOM_ARRAY [CHARACTER]]
	unsigned_character_reference: CHARACTER_REF
	unsigned_character_value: CHARACTER
	unsigned_integer: INTEGER
	unsigned_integer2: INTEGER
	unsigned_integer2_reference: INTEGER_REF
	unsigned_integer4: INTEGER
	unsigned_integer4_array: ECOM_ARRAY [INTEGER]
	unsigned_integer4_array_reference: CELL [ECOM_ARRAY [INTEGER]]
	unsigned_integer4_reference: INTEGER_REF
	unsigned_integer_array: ECOM_ARRAY [INTEGER]
	unsigned_integer_array_reference: CELL [ECOM_ARRAY [INTEGER]]
	unsigned_integer_reference: INTEGER_REF
	unsigned_short_array: ECOM_ARRAY [INTEGER]
	unsigned_short_array_reference: CELL [ECOM_ARRAY [INTEGER]]
	valid_var_type (a_var_type: INTEGER): BOOLEAN
	variable_type: INTEGER
	variant_array: ECOM_ARRAY [ECOM_VARIANT]
	variant_array_reference: CELL [ECOM_ARRAY [ECOM_VARIANT]]
	variant_value: ECOM_VARIANT
	vt_array: INTEGER
	vt_bool: INTEGER
	vt_bstr: INTEGER
	vt_byref: INTEGER
	vt_carray: INTEGER
	vt_cy: INTEGER
	vt_date: INTEGER
	vt_decimal: INTEGER
	vt_dispatch: INTEGER
	vt_empty: INTEGER
	vt_error: INTEGER
	vt_hresult: INTEGER
	vt_i1: INTEGER
	vt_i2: INTEGER
	vt_i4: INTEGER
	vt_i8: INTEGER
	vt_int: INTEGER
	vt_lpstr: INTEGER
	vt_lpwstr: INTEGER
	vt_null: INTEGER
	vt_ptr: INTEGER
	vt_r4: INTEGER
	vt_r8: INTEGER
	vt_record: INTEGER
	vt_reserved: INTEGER
	vt_safearray: INTEGER
	vt_typemask: INTEGER
	vt_ui1: INTEGER
	vt_ui2: INTEGER
	vt_ui4: INTEGER
	vt_ui8: INTEGER
	vt_uint: INTEGER
	vt_unknown: INTEGER
	vt_userdefined: INTEGER
	vt_variant: INTEGER
	vt_void: INTEGER

Commands
	dispose
	initialize
	initialize_with_character (a_character: CHARACTER)
	make
	make_from_pointer (a_pointer: POINTER)
	memory_copy (source_pointer: POINTER; length: INTEGER)
	set (a: ANY)
	set_array (a_value: ECOM_ARRAY [ECOM_VARIANT])
	set_boolean (a_value: BOOLEAN)
	set_boolean_array (a_value: ECOM_ARRAY [BOOLEAN])
	set_boolean_array_reference (a_value: CELL [ECOM_ARRAY [BOOLEAN]])
	set_boolean_reference (a_value: BOOLEAN_REF)
	set_char_array (a_value: ECOM_ARRAY [CHARACTER])
	set_char_array_reference (a_value: CELL [ECOM_ARRAY [CHARACTER]])
	set_character (a_char: CHARACTER)
	set_character_reference (a_char: CHARACTER_REF)
	set_currency (a_value: ECOM_CURRENCY)
	set_currency_array (a_value: ECOM_ARRAY [ECOM_CURRENCY])
	set_currency_array_reference (a_value: CELL [ECOM_ARRAY [ECOM_CURRENCY]])
	set_currency_reference (a_value: ECOM_CURRENCY)
	set_date (a_value: DATE_TIME)
	set_date_array (a_value: ECOM_ARRAY [DATE_TIME])
	set_date_array_reference (a_value: CELL [ECOM_ARRAY [DATE_TIME]])
	set_date_reference (a_value: CELL [DATE_TIME])
	set_decimal (a_value: ECOM_DECIMAL)
	set_decimal_array (a_value: ECOM_ARRAY [ECOM_DECIMAL])
	set_decimal_array_reference (a_value: CELL [ECOM_ARRAY [ECOM_DECIMAL]])
	set_decimal_reference (a_value: ECOM_DECIMAL)
	set_dispatch_array (a_value: ECOM_ARRAY [ECOM_INTERFACE])
	set_dispatch_interface (a_value: ECOM_INTERFACE)
	set_dispatch_interface_array_reference (a_value: CELL [ECOM_ARRAY [ECOM_INTERFACE]])
	set_dispatch_interface_reference (a_value: CELL [ECOM_INTERFACE])
	set_double_array (a_value: ECOM_ARRAY [DOUBLE])
	set_double_array_reference (a_value: CELL [ECOM_ARRAY [DOUBLE]])
	set_empty
	set_error (a_value: ECOM_HRESULT)
	set_error_array (a_value: ECOM_ARRAY [ECOM_HRESULT])
	set_error_array_reference (a_value: CELL [ECOM_ARRAY [ECOM_HRESULT]])
	set_error_reference (a_value: ECOM_HRESULT)
	set_integer (a_value: INTEGER)
	set_integer2 (a_value: INTEGER)
	set_integer2_reference (a_value: INTEGER_REF)
	set_integer4 (a_value: INTEGER)
	set_integer4_array (a_value: ECOM_ARRAY [INTEGER])
	set_integer4_array_reference (a_value: CELL [ECOM_ARRAY [INTEGER]])
	set_integer4_reference (a_value: INTEGER_REF)
	set_integer_array (a_value: ECOM_ARRAY [INTEGER])
	set_integer_array_reference (a_value: CELL [ECOM_ARRAY [INTEGER]])
	set_integer_reference (a_value: INTEGER_REF)
	set_real4 (a_value: REAL)
	set_real4_reference (a_value: REAL_REF)
	set_real8 (a_value: DOUBLE)
	set_real8_reference (a_value: DOUBLE_REF)
	set_real_array (a_value: ECOM_ARRAY [REAL])
	set_real_array_reference (a_value: CELL [ECOM_ARRAY [REAL]])
	set_shared
	set_short_array (a_value: ECOM_ARRAY [INTEGER])
	set_short_array_reference (a_value: CELL [ECOM_ARRAY [INTEGER]])
	set_string (a_value: STRING)
	set_string_array (a_value: ECOM_ARRAY [STRING])
	set_string_array_reference (a_value: CELL [ECOM_ARRAY [STRING]])
	set_string_reference (a_value: CELL [STRING])
	set_unknown_array (a_value: ECOM_ARRAY [ECOM_INTERFACE])
	set_unknown_interface (a_value: ECOM_INTERFACE)
	set_unknown_interface_array_reference (a_value: CELL [ECOM_ARRAY [ECOM_INTERFACE]])
	set_unknown_interface_reference (a_value: CELL [ECOM_INTERFACE])
	set_unshared
	set_unsigned_character (a_value: CHARACTER)
	set_unsigned_character_array (a_value: ECOM_ARRAY [CHARACTER])
	set_unsigned_character_array_reference (a_value: CELL [ECOM_ARRAY [CHARACTER]])
	set_unsigned_character_reference (a_value: CHARACTER_REF)
	set_unsigned_integer (a_value: INTEGER)
	set_unsigned_integer2 (a_value: INTEGER)
	set_unsigned_integer2_reference (a_value: INTEGER_REF)
	set_unsigned_integer4 (a_value: INTEGER)
	set_unsigned_integer4_array (a_value: ECOM_ARRAY [INTEGER])
	set_unsigned_integer4_array_reference (a_value: CELL [ECOM_ARRAY [INTEGER]])
	set_unsigned_integer4_reference (a_value: INTEGER_REF)
	set_unsigned_integer_array (a_value: ECOM_ARRAY [INTEGER])
	set_unsigned_integer_array_reference (a_value: CELL [ECOM_ARRAY [INTEGER]])
	set_unsigned_integer_reference (a_value: INTEGER_REF)
	set_unsigned_short_array (a_value: ECOM_ARRAY [INTEGER])
	set_unsigned_short_array_reference (a_value: CELL [ECOM_ARRAY [INTEGER]])
	set_value (source: [like Current] ECOM_VARIANT)
	set_variant (a_value: ECOM_VARIANT)
	set_variant_array_reference (a_value: CELL [ECOM_ARRAY [ECOM_VARIANT]])