Class::Accessor::Fast - Faster, but less expandable, accessors |
Class::Accessor::Fast - Faster, but less expandable, accessors
package Foo; use base qw(Class::Accessor::Fast);
# The rest as Class::Accessor except no set() or get().
This is a somewhat faster, but less expandable, version of
Class::Accessor. Class::Accessor's generated accessors require two
method calls to accompish their task (one for the accessor, another
for get()
or set()). Class::Accessor::Fast eliminates calling
set()/get()
and does the access itself, resulting in a somewhat faster
accessor.
The downside is that you can't easily alter the behavior of your accessors, nor can your subclasses. Of course, should you need this later, you can always swap out Class::Accessor::Fast for Class::Accessor.
EFFICIENCY in the Class::Accessor manpage for an efficiency comparison.
Marty Pauley <marty+perl@kasei.com>
Michael G Schwern <schwern@pobox.com>
Class::Accessor::Fast - Faster, but less expandable, accessors |