On 04/13/2013 01:00 AM, bearophile wrote:
This is one of the few C++14 core language proposals that seem
interesting for D:
http://www.open-std.org/JTC1/SC22/WG21/docs/papers/2013/n3602.html
The purpose of this idea is to avoid the helper functions that are
currently used in D to build template structs/classes. Even if this
feature is restricted to only a subset of all the templated
structs/classes it seems useful to avoid some boilerplate code.
Is this idea adaptable to D?
Bye,
bearophile
I think the differences to be accounted for are basically that D has
n-ary default constructors, static opCall, and static if. Furthermore,
with IFTI, it is possible to only specify the prefix of the template
arguments.
---
struct S(T...){
T data;
}
S(1,2,3); // ?
S!double(1,2,3); // ?
---
struct S(T...){
T data;
static if(T.length){
this(T x){ }
}
}
S(1,2,3); // ?
---
struct S(T...){
static opCall(T)(T args){ }
}
S(1,2,3); // ?
---