On Thu, Aug 6, 2009 at 9:19 PM, Andrei
Alexandrescu<[email protected]> wrote:
> Kevin wrote:
>>
>> Hi,
>> simple Question:
>> Is it possible to allow just numeric types in templates?
>> For example to create a Vector Class like this:
>>
>> class Vector(T:"numeric" = float, int size = 4)
>>
>> Thanks,
>> Kevin
>
> import std.traits;
>
> class Vector(T, int size = 4) if (isNumeric!T)
> {
>    ...
> }

Unfortunately,

struct Vec(T) if(isNumeric!T) {}
struct Vec(T) {}
Vec!(int) x; // error

foo.d(14): Error: template instance Vec!(int) matches more than one
template declaration, Vec(T) if (isNumeric!(T)) and Vec(T)

*sigh*

Wouldn't it be nice.

Reply via email to