xxxxxxxxxx
import std.stdio;
struct S
{
int value;
ref S opOpAssign(string op)(int value) pure nothrow return
if (op == "+")
{
this.value += value;
return this;
}
}
void main()
{
S a = S(5);
writefln!"1: %s"(a);
a += 1;
writefln!"2: %s"(a);
S foo() { return a; }
foo += 1;
writefln!"3: %s"(a);
}