On Monday, 25 November 2013 at 08:52:14 UTC, Simen Kjærås wrote:
@safe is only for memory safety, which this is not. I agree it
would be
nice to mark assumeValidated as 'warning, may not do what it
claims',
but @safe is not really the correct indicator of that.
What about a version flag, then, that can be passed to specify
that the user wants assumeValidated() to run the validation
functions as well?
This is a known shortcoming for which I see no good workaround.
It would
be possible to use std.traits.hasAliasing to see which types
can be
safely .dup'ed and only allow those types, but this is not a
solution I
like.
It's a hard problem. This is a case where a Unique!T type would
be really useful.
What else is new?
- Better error messages for invalid constraints (testing if an
int is
null, a string is divisible by 3 or an array has a database
connection, e.g.)
- Fixed a bug in opCast (I love that word - in Norwegian it
[oppkast]
means puke. ...anyways...) when converting to an
incompatible wrapped
value.
--
Simen
Keep up the good work!