The Right Approach to Exceptions

H. S. Teoh hsteoh at quickfur.ath.cx
Sun Feb 19 00:26:57 PST 2012


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

-- 
Gone Chopin. Bach in a minuet.


More information about the Digitalmars-d mailing list