Writing UFCS function for any instance of a templated struct
David
d at dav1d.de
Thu Sep 13 03:09:27 PDT 2012
Am 13.09.2012 11:46, schrieb Rene Zwanenburg:
> Hi,
>
> I'd like to write a function for a vector template which basically looks
> like
>
> struct Vec(T, size_t size) {
> T[size] e;
> }
>
> This template has a few properties with very common names like x, y, z,
> etc. To avoid mistakes I'd like to write a template constraint for UFCS
> functions so it accepts any instance of the Vec template, but nothing
> else. Something in the gist of
>
> auto innerProduct(T)(const T v1, const T v2) if(is(T == Vec)) {
>
> }
>
> How can I do this?
I am doing it in gl3n like this:
https://github.com/Dav1dde/gl3n/blob/master/gl3n/util.d#L15
(Sorry when I just sent you a private e-mail, I clicked the wrong answer
button in thunderbird)
More information about the Digitalmars-d-learn
mailing list