Evening All,

Eponymous templates allow a nice calling syntax. For example, "foo" here can be called without needing the exclamation mark (!) at calling sites. We see that foo is restricting a, and b to be of the same type ... so far, so good.

auto foo(T)(T a, T b) { ... }

Now, suppose I need to restrict "T" only certain subsets of variable types.

I can imagine putting in some "static if" statements in my function body, is one solution. (Also a bit ugly as the allowed types might grow).

Is there a more elegant way, to do this?

Regards,
James

PS Any violations should be caught at compile time.




Reply via email to