The Right Approach to Exceptions

Timon Gehr timon.gehr at gmx.ch
Sun Feb 19 05:31:04 PST 2012


On 02/19/2012 09:26 AM, H. S. Teoh wrote:
> On Sat, Feb 18, 2012 at 11:52:00PM -0800, Jonathan M Davis wrote:
> [...]
>> So, while at first glance, it seems like a good idea, I think that it
>> has too many issues as-is to work. It might be possible to adjust the
>> idea to make it workable though. Right now, it's possible to do it via
>> mixins or calling a function inside the catch, but doing something
>> similar to this would certainly be nice, assuming that we could sort
>> out the kinks.
> [...]
>
> I have an idea. What about "signature constraints" for catch, ala
> template signature constraints? Something like this:
>
> 	try {
> 		...
> 	} catch(IOException e)
> 		if (e.errno in subsetYouWantToHandle)
> 	{
> 		...
> 	}
>
> Just using IOException as an example. The idea is to allow arbitrary
> expressions in the constraint so whatever doesn't satisfy the constraint
> will be regarded as "not caught", even if the base type matches.
>
>
> T
>

Nice.


More information about the Digitalmars-d mailing list