This works:
import std.stdio;
struct X {
private:
bool _x;
public:
this(bool x) {
_x = x;
}
@property
bool Get() inout {
return this._x;
}
alias Get this;
typeof(this) opAssign(bool x) {
this._x = x;
return this;
}
}
void main()
{
X a = false;
writeln(a);
a = true;
writeln(a);
}