Constructor taking one value for each field.
Constructor taking a compatible array.
Constructor taking a compatible Tuple. Two Tuples are compatible iff they are both of the same length, and, for each type T on the left-hand side, the corresponding type U on the right-hand side can implicitly convert to T.
The types of the Tuple's components.
The names of the Tuple's components. Unnamed fields have empty names.
Assignment from another Tuple.
Concatenate Tuples. Tuple concatenation is only allowed if all named fields are distinct (no named field of this tuple occurs in t and no named field of t occurs in this tuple).
Comparison for ordering.
Comparison for equality. Two Tuples are considered equal iff they fulfill the following criteria:
Renames the elements of a Tuple.
* Overload of _rename that takes an associative array * translate as a template parameter, where the keys are * either the names or indices of the members to be changed * and the new names are the corresponding values. * Every key in translate must be the name of a member of the * tuple. * The same rules for empty strings apply as for the variadic * template overload of _rename.
Creates a hash of this Tuple.
Converts to string.
Formats Tuple with either %s, %(inner%) or %(inner%|sep%).
Takes a slice by-reference of this Tuple.
Use t.expand for a Tuple t to expand it into its components. The result of expand acts as if the Tuple's components were listed as a list of values. (Ordinarily, a Tuple acts as a single value.)