On Fri, May 04, 2012 at 05:03:36PM +0300, Manu wrote: > On 4 May 2012 17:01, Manu <turkey...@gmail.com> wrote: > > > On 4 May 2012 16:34, Adam D. Ruppe <destructiona...@gmail.com> wrote: > > > >> __traits(getMember, test.module, m); > >> > >> should work. > >> > > > > Tried that: > > > > static if( is( __traits( getMember, mixin( moduleName ), m ) == interface > > ) ) > > { > > pragma( msg, "Is an interface: " ~ m ); > > } > > > > ** accidental 'send' ** >_< > > Fails: > engine\bindings.d(399):basic type expected, not __traits > engine\bindings.d(399):found '__traits' when expecting ')' > engine\bindings.d(399):expression expected, not 'interface' > engine\bindings.d(399):found ')' instead of statement
You're missing a typeof there. __traits(getMember,...) returns the actual value of the member, not just its type. T -- Государство делает вид, что платит нам зарплату, а мы делаем вид, что работаем.