HP Business BASIC/XL Reference Manual - HP 3000 MPE/iX Computer Systems - Edition 1 (32715-90001)
G-: 22
t_basic_array_type =
record
case t_basic_data_types of
basic_sinteger_type : ( sinteger_array : t_bas_sinteger_array );
basic_integer_type : ( integer_array : t_bas_integer_array );
basic_short_decimal_type : ( short_decimal_array
: t_bas_short_decimal_array );
basic_decimal_type : ( decimal_array : t_bas_decimal_array );
basic_short_type : ( short_array : t_bas_short_array );
basic_real_type : ( real_array : t_bas_real_array );
basic_string_type : ( word_view : t_string_word_view );
end; { record t_basic_array_type }
$page$
{----------------------------------------------------------------------------}
{ t_basic_data_type }
{ The value referenced by the parameter address passed in the ANYPARM }
{ actual parameter table has this type. The correct representation of the }
{ parameter is determined by the dimensionality and data type of the }
{ parameter. }
{----------------------------------------------------------------------------}
type
t_dimension_range = 0..6; { a scalar has 0 dimensions, max array is 6 }
t_basic_data_type =
record
case t_dimension_range of
0 : ( scalar_value : t_basic_scalar_type );
1..6 :
(
{----------------------------------------------------------}
{ Pointer to the beginning of the actual data area of the }
{ array. The pointer is always used to reference the }
{ actual data. }
{----------------------------------------------------------}
p_array_data : ^t_basic_array_type;
{----------------------------------------------------------}
{ The area storing the total number of elements and the }
{ descriptor of each dimension - there are two words of }
{ information for each dimension. The data area of the }
{ array will overwrite unused dimension information. }
{----------------------------------------------------------}
array_descriptor : t_array_descriptor;
{----------------------------------------------------------}
{ A field that defines the beginning of the actual data }
{ area - not to be used to reference the data. }
{----------------------------------------------------------}
array_value : t_basic_array_type;
);
end; { record t_basic_data_type }
tp_basic_data_type = ^t_basic_data_type;
$page$
{----------------------------------------------------------------------------}
{ ANYPARM Parameter Type Field Values }
{ The parameter type flag passed to the external for a parameter has the }
{ same value as that which is returned by the TYP function. }
{----------------------------------------------------------------------------}
const
c_decimal_type = 1;
c_whole_string_type = 2;
c_short_integer_type = 5;
c_short_decimal_type = 6;
c_integer_type = 11;
c_short_real_type = 12;