www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.learn - Simultaneously assigning to all values in a tuple

reply Jamie <notme gmail.com> writes:
Is it possible to assign to all values in a tuple at once if they 
are the same type?
I.e.

Tuple!(double, "x", double, "y") t;
t[] = 1.0;
Mar 27 2019
next sibling parent Paul Backus <snarwin gmail.com> writes:
On 3/27/19 8:29 PM, Jamie wrote:
 Is it possible to assign to all values in a tuple at once if they are
 the same type?
 I.e.
 
 Tuple!(double, "x", double, "y") t;
 t[] = 1.0;
 
foreach (ref member; t.expand) { member = 1.0; }
Mar 30 2019
prev sibling parent reply Jacob Carlborg <doob me.com> writes:
On 2019-03-28 01:29, Jamie wrote:
 Is it possible to assign to all values in a tuple at once if they are 
 the same type?
 I.e.
 
 Tuple!(double, "x", double, "y") t;
 t[] = 1.0;
 
Yes: Tuple!(double, "x", double, "y") t; t.expand = AliasSeq!(3.1, 4.2); -- /Jacob Carlborg
Apr 01 2019
parent reply Simen =?UTF-8?B?S2rDpnLDpXM=?= <simen.kjaras gmail.com> writes:
On Monday, 1 April 2019 at 09:46:34 UTC, Jacob Carlborg wrote:
 On 2019-03-28 01:29, Jamie wrote:
 Is it possible to assign to all values in a tuple at once if 
 they are the same type?
 I.e.
 
 Tuple!(double, "x", double, "y") t;
 t[] = 1.0;
 
Yes: Tuple!(double, "x", double, "y") t; t.expand = AliasSeq!(3.1, 4.2);
Since the question was how to assign to all values in a tuple:" t.expand = Repeat!(2, 1.0); -- Simen
Apr 01 2019
parent Andrea Fontana <nospam example.org> writes:
On Monday, 1 April 2019 at 10:12:50 UTC, Simen Kjærås wrote:
 On Monday, 1 April 2019 at 09:46:34 UTC, Jacob Carlborg wrote:
 On 2019-03-28 01:29, Jamie wrote:
 Is it possible to assign to all values in a tuple at once if 
 they are the same type?
 I.e.
 
 Tuple!(double, "x", double, "y") t;
 t[] = 1.0;
 
Yes: Tuple!(double, "x", double, "y") t; t.expand = AliasSeq!(3.1, 4.2);
Since the question was how to assign to all values in a tuple:" t.expand = Repeat!(2, 1.0);
t.expand = Repeat!(t.length, 1.0);
Apr 01 2019