| Operatoren |
tuple_type — Zurückgeben des Typs eines Tupels.
tuple_type gibt den Typ eines Eingabetupels T zurück. Der Typ wird als Ganzzahl im Ausgabeparameter Type zurückgegeben. In HDevelop stehen entsprechend definierte Konstanten zur Verfügung:
H_TYPE_INT (1).
H_TYPE_REAL (2).
H_TYPE_STRING (4).
H_TYPE_MIXED (8).
H_TYPE_ANY (15).
H_TYPE_MIXED wird in folgenden zwei Fällen zurückgegeben:
Elemente des Tupels haben verschiedene Datentypen, z.B. real und integer.
Mit dem Tupel T wurden Operationen durchgeführt, die den Datentyp einzelner Elemente geändert haben. Solche Tupel werden im Allgemeinen (aufgrund von Laufzeitgründen) nicht automatisch optimiert, selbst wenn die Datentypen aller Elemente in nachfolgenden Operationen wieder gleich werden. Siehe Operator tuple_is_mixed und das nachfolgende Beispiel für Informationen darüber wie solche Tupel optimiert werden können.
H_TYPE_ANY wird für leere Tupel zurückgegeben.
Falls das Eingabetupel leer ist, gibt der Operator 15 (H_TYPE_ANY) zurück.
HDevelop unterstützt eine Inline-Operation für tuple_type, die innerhalb eines Ausdrucks in der folgenden Syntax verwendet werden kann:
tuple_type gibt den internen Datentyp des Tupels zurück. Im Gegensatz zu tuple_is_number wird nicht zurückgegeben, ob ein Tupel als ein bestimmter Datentyp dargestellt werden könnte.
Eingabetupel.
Typ des Eingabetupels als Ganzzahl.
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 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
Sind die Parameterwerte korrekt, dann liefert tuple_type den Wert 2 (H_MSG_TRUE).
tuple_is_int, tuple_is_number, tuple_is_real, tuple_is_string
Foundation
| Operatoren |