static try?

deadalnix deadalnix at gmail.com
Mon Oct 31 04:16:14 PDT 2011


Le 31/10/2011 02:21, Mehrdad a écrit :
> I've written this piece of code a fair number of times:
>
> static if (is(typeof(foo()))) { foo(); }
> else { bar(); }
>
> When the expression inside the condition (i.e. the call to foo()) gets
> complicated, you get lots of code duplication and things become harder
> to read.
>
> So I'm thinking, why not just introduce a 'static try'?
>
> Something like:
>
> static try
> {
> foo();
> }
> catch // (string ex) // perhaps let them know what the error is?
> {
> bar();
> }
>
> It's a clean and immensely readable improvement IMO, and it doesn't
> introduce any new keywords or any breaking changes to anything.
>
> How's the idea?

That sound dangerous. You can get some compile error and not notice it.


More information about the Digitalmars-d mailing list