@trusted and return ref
Steven Schveighoffer via Digitalmars-d-learn
digitalmars-d-learn at puremagic.com
Tue Mar 3 06:37:33 PST 2015
On 3/3/15 9:28 AM, Kagamin wrote:
> If one wants to prevent a leak, then counter can be wrapped
> ---
> struct Unsafe(T)
> {
> private T _payload;
> T payload() @system { return _payload; }
> alias payload this;
> }
> ---
> And somehow disallow Unsafe template in safe function signatures, then
> having
> Unsafe!(int*) _counter;
> would be ok?
This is a pretty good idea actually. It's not foolproof (you still have
to opt-in to this, the compiler doesn't force it), but it gives you a
tool to ensure people aren't using it in an unsafe way without having to
double-check every usage. I like it.
-Steve
More information about the Digitalmars-d-learn
mailing list