I've seen plenty of questions about returning two values or returning a value and doing something as well... in this small piece of code in the Class::Base docs we see:
Carter's compass: I know I'm on the right track when by deleting something, I'm adding functionality
and the beauty is in return $self->error("no foobar argument");# let's make 'foobar' a mandatory argument $self->{ foobar } = $config->{ foobar } || return $self->error("no foobar argument");
Of course, the beast is the use of || instead of or, but let's sweep that under the rug.
Notice how his method gets two things done for him. He sets the value of the error for later inspection by the caller. And then the error method returns undef as a way of signalling failure.
Yet another slik tekneek for us 2 beehold.
Carter's compass: I know I'm on the right track when by deleting something, I'm adding functionality
|
---|
Back to
Meditations