September 29, 2017 opDollar any | ||||
---|---|---|---|---|
| ||||
Trying to do multi-dimension array but op-dollar doesn't seem to support arbitrary dimensions @property int opDollar(size_t dim : k)() { return dims[k]; } |
September 29, 2017 Re: opDollar any | ||||
---|---|---|---|---|
| ||||
Posted in reply to Joseph | On 09/29/2017 11:34 AM, Joseph wrote:
> Trying to do multi-dimension array but op-dollar doesn't seem to support arbitrary dimensions
>
>
> @property int opDollar(size_t dim : k)() { return dims[k]; }
>
>
It's called by multi-dimensional opIndex (or opSlice and perhaps others?; can be very complicated :) ).
import std.stdio;
struct S {
@property size_t opDollar(size_t dim)() {
writefln("Called for dimension %s", dim);
return dim;
}
auto opIndex(A...)(A args) {
return 42;
}
}
void main() {
auto s = S();
s[$, $];
}
Called for dimension 0
Called for dimension 1
Ali
|
Copyright © 1999-2021 by the D Language Foundation