tuple_is_mixedtuple_is_mixedTupleIsMixedTupleIsMixedtuple_is_mixed (Operator)
Name
tuple_is_mixedtuple_is_mixedTupleIsMixedTupleIsMixedtuple_is_mixed
— Test whether a tuple is of type mixed
.
Signature
Herror tuple_is_mixed(const char* T, Hlong* IsMixed)
Herror T_tuple_is_mixed(const Htuple T, Htuple* IsMixed)
def tuple_is_mixed(t: HTupleType) -> int
Description
tuple_is_mixedtuple_is_mixedTupleIsMixedTupleIsMixedtuple_is_mixed
tests the input tuple TTTtt
.
If the type is mixed
, the value 1 (true) is returned in
IsMixedIsMixedIsMixedisMixedis_mixed
, else 0 (false) is returned. If a tuple consists of
elements with equal data types only, IsMixedIsMixedIsMixedisMixedis_mixed
can nevertheless be 1
in case the internal representation is H_TYPE_MIXED; see
tuple_typetuple_typeTupleTypeTupleTypetuple_type
for details.
If the type of the tuple is mixed
and you need all elements of
the tuple TTTtt
to be of one data type only, you can
explicitly convert the tuple to a better fitting
representation by using tuple_inttuple_intTupleIntTupleInttuple_int
, tuple_realtuple_realTupleRealTupleRealtuple_real
or
tuple_stringtuple_stringTupleStringTupleStringtuple_string
with Format='s'. This improves processing speed for the
converted tuple which is especially useful if the tuple is used many times
afterwards.
Exception: Empty input tuple
If the input tuple is empty, the operator returns 1.
HDevelop In-line Operation
HDevelop provides an in-line operation for tuple_is_mixedtuple_is_mixedTupleIsMixedTupleIsMixedtuple_is_mixed
,
which can be used in an expression in the following syntax:
IsMixed := is_mixed(T)
Execution Information
- Multithreading type: independent (runs in parallel even with exclusive operators).
- Multithreading scope: global (may be called from any thread).
- Processed without parallelization.
Parameters
TTTtt
(input_control) tuple(-array) →
HTupleHTupleTypeHTupleHtuple (string / real / integer / handle) (string / double / int / long / HHandle) (HString / double / Hlong / HHandle) (char* / double / Hlong / handle)
Input tuple.
IsMixedIsMixedIsMixedisMixedis_mixed
(output_control) number →
HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)
Is the input tuple of type mixed
?
Example (HDevelop)
tuple_is_mixed ([3.1416,'pi',3], IsMixedA)
* IsMixedA = true
tuple_is_mixed (['a','b','111'], IsMixedB)
* IsMixedB = false
tuple_is_mixed ([], IsMixedC)
* IsMixedC = true
Result
If the parameters are valid, the operator
tuple_is_mixedtuple_is_mixedTupleIsMixedTupleIsMixedtuple_is_mixed
returns the value 2 (
H_MSG_TRUE)
.
Alternatives
tuple_typetuple_typeTupleTypeTupleTypetuple_type
,
tuple_is_numbertuple_is_numberTupleIsNumberTupleIsNumbertuple_is_number
See also
tuple_is_inttuple_is_intTupleIsIntTupleIsInttuple_is_int
,
tuple_is_realtuple_is_realTupleIsRealTupleIsRealtuple_is_real
Module
Foundation