Array of Algebraic argument syntax
Ali Çehreli
acehreli at yahoo.com
Tue Sep 22 22:01:01 UTC 2020
On 9/22/20 2:53 PM, Kasra Sadeghi wrote:
> On Tuesday, 22 September 2020 at 21:36:48 UTC, Ali Çehreli wrote:
>> ...
>> alias Value = Algebraic!(int, double, string, None);
>> ...
>> void main() {
>> printValue([Value(4.5), Value("hello"), Value(42)]);
>> }
>
> Thanks! Wish there was a less redundant syntax for the arrays.
>
>
Do you really need to write literal Value arrays? If not, you would
build a Value[] at runtime without seeing the syntax above.
Still, here is a function template that provides better syntax:
Value[] valueArray(Args...)(Args args) {
Value[] result;
foreach (arg; args) {
result ~= Value(arg);
}
return result;
}
void main() {
printValue(valueArray(4.5, "hello", 42));
}
Ali
More information about the Digitalmars-d-learn
mailing list