On Friday, 30 October 2015 at 14:39:47 UTC, Atila Neves wrote:
From the discussion here:
http://forum.dlang.org/post/tgnxocozkurfvmxqo...@forum.dlang.org, I thought a library solution would do to fix the issue of getting decent error messages when a type fails to satisfy a template constraint that it was meant to, such as `isInputRange`. So I submitted a PR (https://github.com/D-Programming-Language/phobos/pull/3677), it's been there ever since and doesn't seem like it'll go anywhere from the discussion (http://forum.dlang.org/post/qvofihzmappftdiwd...@forum.dlang.org).
So the only other way is a DIP (http://wiki.dlang.org/DIP84)
for language and compiler support for static inheritance. It's
backwards-compatible and IMHO worth looking at.
Please let me know what you think.
Atila
Atila, did you get a chance to look at the
std.experimental.concepts work I was doing?
It's very similar to what you seem to want, but the diagnostic
messages are really annoying to use as you have to make a default
template that the user can fall through to:
https://github.com/schancel/phobos/blob/4ca5d075f31b8e09ba71ac2a53ff56ff0c4ac5b9/std/experimental/concepts.d
-Shammah