Beefy Boxes and Bandwidth Generously Provided by pair Networks
Think about Loose Coupling

Re: Exception Classes Advice on Subclasses

by adrianh (Chancellor)
on Dec 21, 2005 at 10:16 UTC ( #518271=note: print w/replies, xml ) Need Help??

in reply to Exception Classes Advice on Subclasses

Hmmm. So I guess my question is, if all those subclasses do the same thing, am I getting anything out of creating them all?

You get a more convenient syntax for catching particular exceptions. For example:

if ( my $e = MyException->caught ) { ... } elsif ($@) { die $@; }

much easier than delving into fields to figure out what kind of exception has been thrown.

You also get a simple way to represent a hierarchy of exception types. If you have a general ValidationError exception class, with a DateValidation, NameValidation, etc. subclasses then you could capture all of the subclasses with a single ValidationError->caught.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://518271]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others about the Monastery: (7)
As of 2016-10-26 07:21 GMT
Find Nodes?
    Voting Booth?
    How many different varieties (color, size, etc) of socks do you have in your sock drawer?

    Results (336 votes). Check out past polls.