How does scatter deal with nested Tuple?

On Sat, 22 May 2010 23:16:34 +0900, Andrei Alexandrescu <[email protected]> wrote:

I don't think tie() is good for us, sorry for not voicing this earlier.

Since it takes the addresses of references and it escapes them into a struct for later use, it is inherently unsafe.

I suggest we replace tie() with a typesafe alternative, for example scatter(). Instead of

int    n;
double d;
tie(n, d) = tuple(10, 3.14);
assert(n == 10);
assert(d == 3.14);

we have the safe alternative:

int    n;
double d;
scatter(tuple(10, 3.14), n, d);
assert(n == 10);
assert(d == 3.14);


What do you all think?

Andrei


On 05/17/2010 11:19 AM, dsource.org wrote:
phobos commit, revision 1516


user: Masahiro Nakagawa

msg:
Add tie to std.typecons

http://www.dsource.org/projects/phobos/changeset/1516

_______________________________________________
phobos mailing list
[email protected]
http://lists.puremagic.com/mailman/listinfo/phobos
_______________________________________________
phobos mailing list
[email protected]
http://lists.puremagic.com/mailman/listinfo/phobos
_______________________________________________
phobos mailing list
[email protected]
http://lists.puremagic.com/mailman/listinfo/phobos

Reply via email to