static if enhancement
    Wyatt via Digitalmars-d 
    digitalmars-d at puremagic.com
       
    Wed Jun 29 08:40:32 PDT 2016
    
    
  
On Friday, 24 June 2016 at 18:27:07 UTC, Steven Schveighoffer 
wrote:
> void fun(T)(T obj)
> {
>     static if (!hasMember(T, "gun")) throw new Exception("No 
> gun");
>     obj.gun;
> }
>
> Call with something that doesn't have a gun member, and even 
> without the reachability warnings (no -w switch), it doesn't 
> compile. However, with an else clause, it would compile.
I might be stepping on a land mine by bringing it up, but isn't 
this sort of thing what contracts are for?
-Wyatt
    
    
More information about the Digitalmars-d
mailing list