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).

Reply via email to