1 // https://issues.dlang.org/show_bug.cgi?id=23651
3 template isCallable(alias callable
)
5 static if (is(typeof(&callable
!())))
6 enum bool isCallable
= isCallable
!(typeof(&callable
!()));
8 enum bool isCallable
= true;
13 template FunctionTypeOf(alias func
)
16 alias FunctionTypeOf
= typeof(foo
);
19 template ReturnType(alias func
)
21 static if (is(FunctionTypeOf
!func R
== return))
25 template isAttrRange()
27 alias NameType
= ReturnType
!((string r
) => r
);
28 //pragma(msg, "isAttrRange ", NameType, " ", string);
29 static assert(is(NameType
== string
));
31 enum isAttrRange
= is(NameType
== string
);
34 static assert(isAttrRange
!());