Function signature constraint syntax

H. S. Teoh hsteoh at quickfur.ath.cx
Fri Feb 3 09:36:59 PST 2012


On Fri, Feb 03, 2012 at 06:51:56AM +0100, Philippe Sigaud wrote:
> >
> > Quick question: I have a function that takes an alias parameter:
> >
> >        struct X { ... };
> >
> >        void func(alias G)(object O) {
> >                ...
> >                X x = ...;
> >                G(x);
> >                ...
> >        }
> >
> > How do I write a signature constraint that essentially specifies that G
> > should take a parameter of type X and return void?
> 
> if ( is(typeof(G(X.init ) ) == void))
> 
> For the expression to work, G must accept an X and return a void.

Ah, I forgot about .init. Thanks, that's exactly what I was looking for.


T

-- 
Береги платье снову, а здоровье смолоду. 


More information about the Digitalmars-d-learn mailing list