Simple template constraint question
WhatMeWorry via Digitalmars-d-learn
digitalmars-d-learn at puremagic.com
Sat Sep 19 12:32:53 PDT 2015
On Saturday, 19 September 2015 at 17:18:23 UTC, Daniel Kozak
wrote:
> WhatMeWorry píše v So 19. 09. 2015 v 17:09 +0000:
>> [...]
>
> http://dlang.org/expression.html#IsExpression
>
> 3. is ( Type == TypeSpecialization )
>
> import std.stdio;
>
> struct S
> {
> }
>
> class C
> {
> }
>
> void f(T)(T someStruct) if (is (T == struct)) {
> writeln("struct");
> }
>
> void f(T)(T notStruct) if (!is(T == struct)) {
> writeln("not a struct");
> }
>
> void main() {
> auto c = new C();
> auto s = S();
>
> f(c); // not a struct
> f(s); // struct
> }
Thanks! I keep going straight to std.traits and forget about the
is(Type)
More information about the Digitalmars-d-learn
mailing list