tuple_intersectiontuple_intersectionTupleIntersectionTupleIntersection (Operator)
Name
tuple_intersectiontuple_intersectionTupleIntersectionTupleIntersection
— Compute the intersection set of two input tuples.
Signature
Description
tuple_intersectiontuple_intersectionTupleIntersectionTupleIntersectionTupleIntersection
returns the intersection set from
Set1Set1Set1Set1set1
and Set2Set2Set2Set2set2
in IntersectionIntersectionIntersectionIntersectionintersection
. For example,
if Set1Set1Set1Set1set1
contains the values [0,1,3,3,5] and Set2Set2Set2Set2set2
contains the values [2,3,5,10], the output IntersectionIntersectionIntersectionIntersectionintersection
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
Set1Set1Set1Set1set1
and Set2Set2Set2Set2set2
have different types of elements, their
intersection set could be empty. For example, if Set1Set1Set1Set1set1
contains
the values [2,5,3] and Set2Set2Set2Set2set2
contains the values [2.0,5.0,0,10], the
output IntersectionIntersectionIntersectionIntersectionintersection
is empty.
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_intersectiontuple_intersectionTupleIntersectionTupleIntersectionTupleIntersection
,
which can be used in an expression in the following syntax:
Intersection := intersection(Set1, Set2)
Execution Information
- Multithreading type: independent (runs in parallel even with exclusive operators).
- Multithreading scope: global (may be called from any thread).
- Automatically parallelized on internal data level.
Parameters
Set1Set1Set1Set1set1
(input_control) tuple(-array) →
HTupleHTupleHtuple (integer / real / string / handle) (int / long / double / string / HHandle) (Hlong / double / HString / HHandle) (Hlong / double / char* / handle)
Input tuple.
Set2Set2Set2Set2set2
(input_control) tuple(-array) →
HTupleHTupleHtuple (integer / real / string / handle) (int / long / double / string / HHandle) (Hlong / double / HString / HHandle) (Hlong / double / char* / handle)
Input tuple.
IntersectionIntersectionIntersectionIntersectionintersection
(output_control) tuple(-array) →
HTupleHTupleHtuple (integer / real / string / handle) (int / long / double / string / HHandle) (Hlong / double / HString / HHandle) (Hlong / double / char* / handle)
The intersection set of two input tuples.
Result
If the parameters are valid, the operator
tuple_intersectiontuple_intersectionTupleIntersectionTupleIntersectionTupleIntersection
returns the value 2 (H_MSG_TRUE).
Alternatives
tuple_uniontuple_unionTupleUnionTupleUnionTupleUnion
See also
tuple_differencetuple_differenceTupleDifferenceTupleDifferenceTupleDifference
,
tuple_symmdifftuple_symmdiffTupleSymmdiffTupleSymmdiffTupleSymmdiff
,
tuple_uniontuple_unionTupleUnionTupleUnionTupleUnion
Module
Foundation