in reply to How to say 'oops' in OOPs?
I used to return negative error codes from Mail::Sender's methods, but this leads to strange looking code. It's kinda hard to distinguish errors from valid responses. And I doubt anyone used the code returned anyway.
I'd say either return; in case of errors and set some $obj->{error} or die($with_message). And if the method doesn't need to return any value (if it's a command, not a "question") return the object itself. So that the users may stack the commands like this:
$obj->cmd1(params) ->cmd2(params) ->cmd3(params;
Though this only works well if you die() on errors. Anyway you may leave the decision on the user. Current version of Mail::Sender let's you specify which style of error reporting to use:
Whatever you choose DOCUMENT DOCUMENT DOCUMENT. Error handling is usualy the worst documented feature of modules.$sender = new Mail::Sender { ..., on_errors => 'die', }
Jenda
Always code as if the guy who ends up maintaining your code
will be a violent psychopath who knows where you live.
-- Rick Osborne
Edit by castaway: Closed small tag in signature
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: Re: How to say 'oops' in OOPs?
by Willard B. Trophy (Hermit) on Apr 08, 2003 at 17:13 UTC | |
by Anonymous Monk on Apr 08, 2003 at 20:21 UTC | |
by adrianh (Chancellor) on Apr 08, 2003 at 21:55 UTC | |
by Aristotle (Chancellor) on Apr 09, 2003 at 09:51 UTC | |
by adrianh (Chancellor) on Apr 09, 2003 at 10:46 UTC | |
by Willard B. Trophy (Hermit) on Apr 09, 2003 at 20:28 UTC |