Sponsored Content
Full Discussion: What's your drink?
The Lounge What is on Your Mind? What's your drink? Post 302346995 by fguy on Monday 24th of August 2009 03:13:40 PM
Old 08-24-2009
Beer for me, Moosehead on tap is my favorite (It'a Canadian). For hard stuff I am partial to shots of Tequila Gold. I'm a social drinker, and occasional drunk, at home on my own I don't bother.
 
accessors::ro(3pm)					User Contributed Perl Documentation					accessors::ro(3pm)

NAME
accessors::ro - create 'classic' read-only accessor methods in caller's package. SYNOPSIS
package Foo; use accessors::ro qw( foo bar baz ); my $obj = bless { foo => 'read only? ' }, 'Foo'; # values are read-only, so set is disabled: print "oh my! " if $obj->foo( "set?" ) eq 'read only? '; # if you really need to change the vars, # you must use direct-variable-access: $obj->{bar} = 'i need a drink '; $obj->{baz} = 'now'; # always returns the current value: print $obj->foo, $obj->bar, $obj->baz, "! "; DESCRIPTION
The accessors::ro pragma lets you create simple classic read-only accessors at compile-time. The generated methods look like this: sub foo { my $self = shift; return $self->{foo}; } They always return the current value, just like accessors::ro. PERFORMANCE
There is little-to-no performace hit when using generated accessors; in fact there is usually a performance gain. o typically 5-15% faster than hard-coded accessors (like the above example). o typically 0-15% slower than optimized accessors (less readable). o typically a small performance hit at startup (accessors are created at compile-time). o uses the same anonymous sub to reduce memory consumption (sometimes by 80%). See the benchmark tests included with this distribution for more details. CAVEATS
Classes using blessed scalarrefs, arrayrefs, etc. are not supported for sake of simplicity. Only hashrefs are supported. AUTHOR
Steve Purkis <spurkis@cpan.org> SEE ALSO
accessors, accessors::rw, accessors::classic, accessors::chained, base perl v5.12.4 2011-10-16 accessors::ro(3pm)
All times are GMT -4. The time now is 02:52 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy