Beefy Boxes and Bandwidth Generously Provided by pair Networks
Don't ask to ask, just ask
 
PerlMonks  

Re: The Null Mull (or, when OO needs more O)

by Anonymous Monk
on Nov 29, 2004 at 15:03 UTC ( #410936=note: print w/ replies, xml ) Need Help??


in reply to The Null Mull (or, when OO needs more O)

Not to be a punk here, but ...

$obj->methoda->methodb->methodc

If you don't know whether or not methoda returns null or not, you need to check for that. And such chains are a sign of bad design (aka TOO MANY OBJECTS!).


Comment on Re: The Null Mull (or, when OO needs more O)
Download Code
Re^2: The Null Mull (or, when OO needs more O)
by Jenda (Abbot) on Nov 29, 2004 at 20:43 UTC

    Such a chain doesn't necessarily mean there are several objects. It might very well be the same object all the time:

    use Mail::Sender; eval { (new Mail::Sender {on_errors => 'die'}) ->OpenMultipart({smtp=> 'jenda.krynicky.cz', to => 'jenda@krynicky.cz', subject => 'Mail::Sender.pm - new version' }) ->Body({ msg => <<'*END*' }) Here is a new module Mail::Sender. blah blah blah ... *END* ->Attach({ description => 'Perl module Mail::Sender.pm', ctype => 'application/x-zip-encoded', encoding => 'Base64', disposition => 'attachment', file => 'W:\jenda\packages\Mail\Sender\Mail-Sender +-0.7.15.tar.gz' }) ->Close(); } or print "Error sending mail: $@\n";
    The methods return $self in case of success and throw an exception in case of failure.

    Jenda
    We'd like to help you learn to help yourself
    Look around you, all you see are sympathetic eyes
    Stroll around the grounds until you feel at home
       -- P. Simon in Mrs. Robinson

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others perusing the Monastery: (12)
As of 2014-08-29 13:21 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The best computer themed movie is:











    Results (280 votes), past polls