On Wednesday, 3 July 2013 at 11:54:39 UTC, Artur Skawina wrote:
On 07/03/13 02:22, Brad Anderson wrote:
C++11's std::tuple includes a function std::tie that takes
references to the arguments and returns a tuple that maintains
the references to the arguments.
Along with the usual cases where you'd want reference
semantics it also enables this interesting construct for
unpacking tuples.
int a, b;
tie(a, b) = make_tuple(1, 2);
assert(a == 1 && b == 2);
Is there any way to do something similar with
std.typecons.Tuple?
Well, aliases can be used to get a similar effect.
template tie(A...) { alias tie = A; }
tie!(a, b) = tuple(1, 2);
artur
That won't work. a and b aren't held as references (also you
passed them as type parameters :P).