On Wednesday, 3 April 2013 at 19:21:53 UTC, Jonathan M Davis
wrote:
It's verbose. You're adding a fair bit of boilerplate just to
statically
determine whether verification has been done or not. It may
very well be worth
it in many cases, but it's enough extra code that I don't think
that I'd
advise it as a general solution.
- Jonathan M Davis
Erm, really? In most cases only wrapper type is needed. Almost
all functions should accepts either verified or raw type version
so no real boilerplate here (otherwise something is most likely
wrong with your module responsibility organization). Wrapper
types themselves are trivial and can be created automagically
with some template/mixin. What else?