tuple_typetuple_typeTupleTypeTupleType (Operator)

Name

tuple_typetuple_typeTupleTypeTupleType — Zurückgeben des Typs eines Tupels.

Signatur

tuple_type( : : T : Type)

Herror tuple_type(double T, Hlong* Type)

Herror T_tuple_type(const Htuple T, Htuple* Type)

void TupleType(const HTuple& T, HTuple* Type)

HTuple HTuple::TupleType() const

static void HOperatorSet.TupleType(HTuple t, out HTuple type)

HTuple HTuple.TupleType()

Beschreibung

tuple_typetuple_typeTupleTypeTupleTypeTupleType gibt den Typ eines Eingabetupels TTTTt zurück. Der Typ wird als Ganzzahl im Ausgabeparameter TypeTypeTypeTypetype zurückgegeben. In HDevelop stehen entsprechend definierte Konstanten zur Verfügung:

H_TYPE_MIXED wird in folgenden zwei Fällen zurückgegeben:

Sonderfall: Leeres Eingabetupel

Falls das Eingabetupel leer ist, gibt der Operator 31 (H_TYPE_ANY) zurück.

HDevelop Inline-Operation

HDevelop unterstützt eine Inline-Operation für tuple_typetuple_typeTupleTypeTupleTypeTupleType, die innerhalb eines Ausdrucks in der folgenden Syntax verwendet werden kann:

Type := type(T)

Achtung

tuple_typetuple_typeTupleTypeTupleTypeTupleType gibt den internen Datentyp des Tupels zurück. Im Gegensatz zu tuple_is_numbertuple_is_numberTupleIsNumberTupleIsNumberTupleIsNumber wird nicht zurückgegeben, ob ein Tupel als ein bestimmter Datentyp dargestellt werden könnte.

Ausführungsinformationen

Parameter

TTTTt (input_control)  tuple(-array) HTupleHTupleHtuple (real / integer / string / handle) (double / int / long / string / HHandle) (double / Hlong / HString / HHandle) (double / Hlong / char* / handle)

Eingabetupel.

TypeTypeTypeTypetype (output_control)  number HTupleHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Typ des Eingabetupels als Ganzzahl.

Beispiel (HDevelop)

tuple_type ([3.1416,'pi',3], TypeA)
* TypeA = H_TYPE_MIXED
tuple_type (['a','b','111'], TypeB)
* TypeB = H_TYPE_STRING
tuple_type ([], TypeC)
* TypeC = H_TYPE_ANY
tuple_type (HNULL, TypeD)
* TypeD = H_TYPE_HANDLE

TupleInt := [1,2,3,4]
TupleReal := [42.0]
TupleConcat := [TupleInt, TupleReal]
tuple_type (TupleConcat, TypeConcat)
* TypeConcat = H_TYPE_MIXED
* Now set 42.0 to 42
TupleConcat[4] := 42
tuple_type (TupleConcat, TypeConcat2)
* TypeConcat2 = H_TYPE_MIXED
* TupleConcat now consists of integers only, but the
* internal representation hasn't been updated. Optimize
* it by converting the tuple explicitly to an integer
* tuple.
tuple_int (TupleConcat, TupleConcatInt)
tuple_type (TupleConcatInt, TypeConcatInt)
* TypeConcatInt = H_TYPE_INT

Ergebnis

Sind die Parameterwerte korrekt, dann liefert tuple_typetuple_typeTupleTypeTupleTypeTupleType den Wert 2 (H_MSG_TRUE).

Alternativen

tuple_is_inttuple_is_intTupleIsIntTupleIsIntTupleIsInt, tuple_is_numbertuple_is_numberTupleIsNumberTupleIsNumberTupleIsNumber, tuple_is_realtuple_is_realTupleIsRealTupleIsRealTupleIsReal, tuple_is_stringtuple_is_stringTupleIsStringTupleIsStringTupleIsString, tuple_sem_typetuple_sem_typeTupleSemTypeTupleSemTypeTupleSemType

Siehe auch

get_obj_classget_obj_classGetObjClassGetObjClassGetObjClass

Modul

Foundation