The OpenD Programming Language

Tuple.opEquals

Comparison for equality. Two Tuples are considered equal iff they fulfill the following criteria:

  • Each Tuple is the same length.
  • For each type T on the left-hand side and each type U on the right-hand side, values of type T can be compared with values of type U.
  • For each value v1 on the left-hand side and each value v2 on the right-hand side, the expression v1 == v2 is true.
  1. bool opEquals(R rhs)
  2. bool opEquals(R rhs)
  3. bool opEquals(R rhs)
    struct Tuple
    bool
    opEquals
    (
    R...
    )
    (
    auto ref R rhs
    )
    if (
    R.length > 1 &&
    areCompatibleTuples!(typeof(this), Tuple!R, "==")
    )

Parameters

rhs R

The Tuple to compare against. It must meeting the criteria for comparison between Tuples.

Return Value

Type: bool

true if both Tuples are equal, otherwise false.

Examples

Tuple!(int, string) t1 = tuple(1, "test");
Tuple!(double, string) t2 =  tuple(1.0, "test");
//Ok, int can be compared with double and
//both have a value of 1
assert(t1 == t2);

Meta