OpIndex/OpIndexAssign strange order of execution
Ali Çehreli
acehreli at yahoo.com
Mon Sep 18 16:37:42 UTC 2017
Have you considered the multiple indexes?
https://dlang.org/spec/operatoroverloading.html#index_assignment_operator
It may give you some power in execution order.
import std.stdio;
struct S {
auto opIndex(string index) {
writeln(index);
return 42;
}
auto opIndexAssign(int value, string[] indexes...) {
writeln(indexes);
}
}
void main() {
auto s = S();
s["b", "c"] = s["a"];
}
Prints
a
["b", "c"]
Ali
More information about the Digitalmars-d-learn
mailing list