Operator Reference

tuple_lesstuple_lessTupleLessTupleLesstuple_less (Operator)

tuple_lesstuple_lessTupleLessTupleLesstuple_less — Test whether a tuple is less than another tuple.

Signature

tuple_less( : : T1, T2 : Less)

Herror tuple_less(const Hlong T1, const Hlong T2, Hlong* Less)

Herror T_tuple_less(const Htuple T1, const Htuple T2, Htuple* Less)

void TupleLess(const HTuple& T1, const HTuple& T2, HTuple* Less)

HTuple HTuple::TupleLess(const HTuple& T2) const

static void HOperatorSet.TupleLess(HTuple t1, HTuple t2, out HTuple less)

HTuple HTuple.TupleLess(HTuple t2)

def tuple_less(t1: MaybeSequence[Union[int, float, str]], t2: MaybeSequence[Union[int, float, str]]) -> int

Description

tuple_lesstuple_lessTupleLessTupleLesstuple_less tests whether the input tuple T1T1T1t1t1 is less than T2T2T2t2t2. A tuple T1T1T1t1t1 is said to be less than a tuple T2T2T2t2t2, if T1T1T1t1t1 has been found to be less when comparing it elementwise to T2T2T2t2t2 or if the first min(|T1|,|T2|) elements are equal and T1T1T1t1t1 has got less elements than T2T2T2t2t2.

With the elementwise comparison, the elements of T1T1T1t1t1 and T2T2T2t2t2 are compared one by one. If the two elements are equal, the next pair of elements will be examined. If the element of T1T1T1t1t1 is less than that from T2T2T2t2t2, the result is 1 and the comparison will be aborted. If the element of T1T1T1t1t1 is greater than that from T2T2T2t2t2, the result is 0 and the comparison will be aborted. If all elements have been tested and if all were equal, the result is 0.

As a precondition for comparing the tuples elementwise two corresponding elements must either both be (integer or floating point) numbers or both be strings. Otherwise tuple_lesstuple_lessTupleLessTupleLesstuple_less returns an error.

Exception: Empty input tuples

If one input tuple is empty and the other is not, the tuple that is empty is considered less than the one that is not empty.

HDevelop In-line Operation

HDevelop provides an in-line operation for tuple_lesstuple_lessTupleLessTupleLesstuple_less, which can be used in an expression in the following syntax:

Less := T1 < T2

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

T1T1T1t1t1 (input_control)  tuple(-array) HTupleMaybeSequence[Union[int, float, str]]HTupleHtuple (integer / real / string) (int / long / double / string) (Hlong / double / HString) (Hlong / double / char*)

Input tuple 1.

T2T2T2t2t2 (input_control)  tuple(-array) HTupleMaybeSequence[Union[int, float, str]]HTupleHtuple (integer / real / string) (int / long / double / string) (Hlong / double / HString) (Hlong / double / char*)

Input tuple 2.

LessLessLesslessless (output_control)  integer HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Result of the comparison of the input tuples.

Alternatives

tuple_less_equaltuple_less_equalTupleLessEqualTupleLessEqualtuple_less_equal, tuple_greatertuple_greaterTupleGreaterTupleGreatertuple_greater, tuple_greater_equaltuple_greater_equalTupleGreaterEqualTupleGreaterEqualtuple_greater_equal, tuple_equaltuple_equalTupleEqualTupleEqualtuple_equal, tuple_not_equaltuple_not_equalTupleNotEqualTupleNotEqualtuple_not_equal, tuple_equal_elemtuple_equal_elemTupleEqualElemTupleEqualElemtuple_equal_elem, tuple_not_equal_elemtuple_not_equal_elemTupleNotEqualElemTupleNotEqualElemtuple_not_equal_elem, tuple_less_elemtuple_less_elemTupleLessElemTupleLessElemtuple_less_elem, tuple_greater_elemtuple_greater_elemTupleGreaterElemTupleGreaterElemtuple_greater_elem, tuple_less_equal_elemtuple_less_equal_elemTupleLessEqualElemTupleLessEqualElemtuple_less_equal_elem, tuple_greater_equal_elemtuple_greater_equal_elemTupleGreaterEqualElemTupleGreaterEqualElemtuple_greater_equal_elem

Module

Foundation