struct S(T)
{
T data;
alias data this;
int opIndex()(size_t i, size_t j)
{
return 100; // specialized opIndex
}
auto opIndex(A...)(A args) if (A.length != 2)
{
return data[args]; // forwarding
}
}
void main()
{
auto s = S!(int[])([1,2]);
assert(s[1,2] == 100);
assert(s[0] == 1);
assert(s[1] == 2);
}
I want alias :/
struct S(T)
{
T data;
alias data this;
int opIndex()(size_t i, size_t j)
{
return 100; // specialized opIndex
}
alias data.opIndex opIndex;
}
