You missed the 'immutable' and 'inout cases.
Just use inout(T) _get() inout { return _value; } instead of
the two declarations you have.
Oh, thanks a lot, i'm forgetting this often.
...
And therefore i get the same error, as if i wrote "return
NotNull!(Foo)(this);" instead of "return
assumeNotNull(this);", in the
"_convert" method of NotNull. The Output is "Stack overflow".
I think
that comes from recursive calls which fills the stack? Is that
a bug?
Yes.
Some ideas how i can implement this otherwise? And would the bug
fix come with 2.060?
With this functionality, the NotNull struct would be perfect.