Simen Kjærås:
void foo(t2@{int a, string b}) {
// here a and b are tuple items and t2 is the whole tuple.
}
auto t1@{x, y} = {10, "hi"};
foo(t1);
I suggest instead this syntax:
auto {x, y} t1 = {10, "hi"};
It's closer to regular D syntax.
But I'd like sometime to tie t1 to that {}, to help my eyes.
{c, $_} = tup;
{c, @} = tup;
{c, @_} = tup;
{c, $$} = tup;
...
{c, {_}} = tup;
{c, $~} = tup;
...
etc.
... has been introduced to match zero or more elements for
pattern matching
already. I see no reason not to use ... for this.
Telling the language that there there is exactly one item to
match on, that you don't care of, is important. The "..." syntax
can't tell apart the case for zero, one, or more items. So "..."
can't be enough here.
Bye,
bearophile