ClassesClasses | | Operators

tuple_symmdifftuple_symmdiffTupleSymmdiffTupleSymmdiff (Operator)

Name

tuple_symmdifftuple_symmdiffTupleSymmdiffTupleSymmdiff — Compute the symmetric difference set of two input tuples.

Signature

tuple_symmdiff( : : Set1, Set2 : SymmDiff)

Herror tuple_symmdiff(const Hlong Set1, const Hlong Set2, Hlong* SymmDiff)

Herror T_tuple_symmdiff(const Htuple Set1, const Htuple Set2, Htuple* SymmDiff)

void TupleSymmdiff(const HTuple& Set1, const HTuple& Set2, HTuple* SymmDiff)

HTuple HTuple::TupleSymmdiff(const HTuple& Set2) const

static void HOperatorSet.TupleSymmdiff(HTuple set1, HTuple set2, out HTuple symmDiff)

HTuple HTuple.TupleSymmdiff(HTuple set2)

Description

tuple_symmdifftuple_symmdiffTupleSymmdiffTupleSymmdiffTupleSymmdiff returns the symmetric difference set from Set1Set1Set1Set1set1 and Set2Set2Set2Set2set2 in SymmDiffSymmDiffSymmDiffSymmDiffsymmDiff. For example, if Set1Set1Set1Set1set1 contains the values [0,1,3,3,5] and Set2Set2Set2Set2set2 contains the values [2,3,5,10], the output SymmDiffSymmDiffSymmDiffSymmDiffsymmDiff is [0,1,2,10]. 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 symmetric difference set could be the union. For example, if Set1Set1Set1Set1set1 contains the values [2,5,3] and Set2Set2Set2Set2set2 contains the values [2.0,5.0], the output SymmDiffSymmDiffSymmDiffSymmDiffsymmDiff is [2,5,3,2.0,5.0].

Exception: Empty input tuples

If both of the input tuples are empty, the operator returns an empty tuple. If one of the input tuples is empty and the other is not, the output corresponds to the input tuple that is not empty.

HDevelop In-line Operation

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

SymmDiff := symmdiff(Set1, Set2)

Execution Information

Parameters

Set1Set1Set1Set1set1 (input_control)  number(-array) HTupleHTupleHtuple (integer / real / string / handle) (int / long / double / string / HHandle) (Hlong / double / HString / HHandle) (Hlong / double / char* / handle)

Input tuple.

Set2Set2Set2Set2set2 (input_control)  number(-array) HTupleHTupleHtuple (integer / real / string / handle) (int / long / double / string / HHandle) (Hlong / double / HString / HHandle) (Hlong / double / char* / handle)

Input tuple.

SymmDiffSymmDiffSymmDiffSymmDiffsymmDiff (output_control)  number(-array) HTupleHTupleHtuple (integer / real / string / handle) (int / long / double / string / HHandle) (Hlong / double / HString / HHandle) (Hlong / double / char* / handle)

The symmetric difference set of two input tuples.

Result

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

Alternatives

tuple_differencetuple_differenceTupleDifferenceTupleDifferenceTupleDifference

See also

tuple_differencetuple_differenceTupleDifferenceTupleDifferenceTupleDifference, tuple_intersectiontuple_intersectionTupleIntersectionTupleIntersectionTupleIntersection, tuple_uniontuple_unionTupleUnionTupleUnionTupleUnion

Module

Foundation


ClassesClasses | | Operators