Beefy Boxes and Bandwidth Generously Provided by pair Networks
"be consistent"
 
PerlMonks  

Re: What does this mean?

by Perlbotics (Canon)
on Aug 20, 2012 at 19:55 UTC ( #988498=note: print w/ replies, xml ) Need Help??


in reply to What does this mean?

It's a common setter/getter idiom however with an unfortunate chosen method name setID.

'get' attribute: no argument given, so $id is undefined, current value of $self->{_id} is returned

my $id = $obj->setID(); # return current _id
'set' attribute (and 'get' new value at the same time)
my $new_id = $obj->setID( 42 ); # updates and returns new _id 42 # or just: $obj->setID( 42 );


Comment on Re: What does this mean?
Select or Download Code
Replies are listed 'Best First'.
Re^2: What does this mean?
by tobyink (Abbot) on Aug 20, 2012 at 22:24 UTC

    I don't know if it was necessarily intended to act as a getter+setter. It's probably just a setter that happens to include a quick check to prevent people from setting the ID to undef. It happens to also return the current ID, but I'd assume that's just incidental. A method needs to return something; might as well be something vaguely useful.

    perl -E'sub Monkey::do{say$_,for@_,do{($monkey=[caller(0)]->[3])=~s{::}{ }and$monkey}}"Monkey say"->Monkey::do'

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others lurking in the Monastery: (14)
As of 2015-07-31 13:49 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The top three priorities of my open tasks are (in descending order of likelihood to be worked on) ...









    Results (278 votes), past polls