If you are concerned about getting line numbers and sub names to return back for the error message, there are other ways to do it... I would agree that killing the script is painful for a live situation...
Shawn ----- Original Message ----- From: "drieux" <[EMAIL PROTECTED]> To: "begin begin" <[EMAIL PROTECTED]> Sent: Saturday, June 22, 2002 11:27 PM Subject: To Croak or Undef? > > volks, > > I'm playing around with a little perl module and I came > across to different solutions - thought I would ask for > opinions as to which would be more Kosher - so why not > ask folks who might have an opinion: > > Plan A: The simple 'undef' trick > > #------------------------ > sub get_Lock { > my ($self, $name) = @_; > (exists $self->{$name}) ? $self->{$name}->{var_lock} : undef; > } # end of get_Lock > > Plan B: your basic Croak Play > > #------------------------ > sub get_Lock { > my ($self, $name) = @_; > croak "No such variable $name \n" > unless (exists $self->{$name}) ; > $self->{$name}->{var_lock}; > } # end of get_Lock > > Under Plan A - one would code it like: > > my $lock = $global->get_Lock('var1'); > > BailOut("bad var1\n") unless ( defined( $lock ) ) ; > > since, well - it is possible that 'var1' does not exist... > > Under Plan B - one gets the SCREAM from croak right off > > [jeeves:pbl/bloopers/dumbDrieux] drieux% perl OO_GlobalGame.txt > No such variable var1 > at OO_GlobalGame.txt line 14 > [jeeves:pbl/bloopers/dumbDrieux] drieux% > > and one could go look at line 14 of their code and go.... > "Oh dear, never really meant that one - meant to check 'var' > or what ever it should have been.... > > Opinions? > > > ciao > drieux > > --- > > > -- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > > -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]