On Wednesday, 10 May 2017 at 10:53:59 UTC, Atila Neves wrote:

concepts is a dub package and library that allows one to declare that a struct conforms to a "compile-time interface" such as `isInputRange`. The difference between this and a simple `static assert(isInputRange!MyType)` is that when the static assert fails you have no idea why not and half of the time it's because of a typo (e.g. `popFrnt`). With concepts you get an error message from the compiler, and you can still use your concepts in template constraints.

Niiiiice, I love constraints but there error messages aren't the best.

Reply via email to