Since my phobos PR for better static assertions was clearly never getting merged (, I moved the code to dub instead:

Basically, as long as you pair up your template constraints (e.g. isFoo) with a suitably named function that should compile (e.g. checkFoo, not a lambda), then you can write this:

@models!(Foo, isFoo)
struct Foo {

And in the case that isFoo is false, you'll get to know _why_ it didn't compile instead of an AssertError that leaves you confused.

At least it used to and the unit tests pass so I'm assuming it still does :P


Reply via email to