Skip to content

tuple_intersectionTupleIntersectionTupleIntersectiontuple_intersectiontuple_intersection🔗

Short description🔗

tuple_intersectionTupleIntersectionTupleIntersectiontuple_intersectiontuple_intersection — Compute the intersection set of two input tuples.

Signature🔗

tuple_intersection( tuple Set1, tuple Set2, out tuple Intersection )void TupleIntersection( const HTuple& Set1, const HTuple& Set2, HTuple* Intersection )static void HOperatorSet.TupleIntersection( HTuple set1, HTuple set2, out HTuple intersection )def tuple_intersection( set_1: HTupleType, set_2: HTupleType ) -> Sequence[HTupleElementType]

def tuple_intersection_s( set_1: HTupleType, set_2: HTupleType ) -> HTupleElementTypeHerror tuple_intersection( const Hlong Set1, const Hlong Set2, Hlong* Intersection )

Herror T_tuple_intersection( const Htuple Set1, const Htuple Set2, Htuple* Intersection )

HTuple HTuple::TupleIntersection( const HTuple& Set2 ) const

HTuple HTuple.TupleIntersection( HTuple set2 )

Description🔗

tuple_intersectionTupleIntersection returns the intersection set from Set1set1set_1 and Set2set2set_2 in Intersectionintersectionintersection. For example, if Set1set1set_1 contains the values [0,1,3,3,5] and Set2set2set_2 contains the values [2,3,5,10], the output Intersectionintersectionintersection is [3,5]. The operator also allows mixed types of elements in the input tuples. However, the elements with different types will be considered as different elements, i.e. 1.0 and 1 are different. Also, this means, if Set1set1set_1 and Set2set2set_2 have different types of elements, their intersection set could be empty. For example, if Set1set1set_1 contains the values [2,5,3] and Set2set2set_2 contains the values [2.0,5.0,0,10], the output Intersectionintersectionintersection is empty. Please note that the order of tuple elements resulting from tuple_intersectionTupleIntersection does not necessarily conform to the order in the input tuple.

Exception: Empty input tuples🔗

If either or both of the input tuples are empty, the operator returns an empty tuple.

HDevelop In-line Operation🔗

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

Intersection := intersection(Set1, Set2)

Execution information🔗

Execution information
  • Multithreading type: reentrant (runs in parallel with non-exclusive operators).

  • Multithreading scope: global (may be called from any thread).

  • Automatically parallelized on internal data level.

Parameters🔗

Set1set1set_1 (input_control) tuple(-array) → (integer / real / string / handle)HTuple (Hlong / double / HString / HHandle)HTuple (int / long / double / string / HHandle)HTupleTypeHtuple (Hlong / double / char* / handle)

Input tuple.

Set2set2set_2 (input_control) tuple(-array) → (integer / real / string / handle)HTuple (Hlong / double / HString / HHandle)HTuple (int / long / double / string / HHandle)HTupleTypeHtuple (Hlong / double / char* / handle)

Input tuple.

Intersectionintersectionintersection (output_control) tuple(-array) → (integer / real / string / handle)HTuple (Hlong / double / HString / HHandle)HTuple (int / long / double / string / HHandle)Sequence[HTupleElementType]Htuple (Hlong / double / char* / handle)

The intersection set of two input tuples.

Result🔗

If the parameters are valid, the operator tuple_intersectionTupleIntersection returns the value 2 (H_MSG_TRUE).

Combinations with other operators🔗

Combinations

Alternatives

tuple_unionTupleUnion

See also

tuple_differenceTupleDifference, tuple_symmdiffTupleSymmdiff, tuple_unionTupleUnion

Module🔗

Foundation