-
-
07 Sep 2004 21:45:34 UTC
- Distribution: Class-MakeMethods
- Module version: 0.02
- Source (raw)
- Browse (raw)
- Changes
- How to Contribute
- Issues (5)
- Testers (5046 / 267 / 0)
- Kwalitee
Bus factor: 0- 69.84% Coverage
- License: unknown
- Activity
24 month- Tools
- Download (158.37KB)
- MetaCPAN Explorer
- Permissions
- Subscribe to distribution
- Permalinks
- This version
- Latest version
- Dependencies
- unknown
- Reverse dependencies
- CPAN Testers List
- Dependency graph
NAME
Class::MakeMethods::Emulator::accessors - Emulate the accessors module
SYNOPSIS
package Foo; use Class::MakeMethods::Emulator::accessors qw( foo bar baz ); my $obj = bless {}, 'Foo'; # generates chaining accessors: $obj->foo( 'hello ' ) ->bar( 'world' ) ->baz( "!\n" ); print $obj->foo, $obj->bar, $obj->baz;
This module also defines subpackages for the classic and chaining subclasses:
package Bar; use Class::MakeMethods::Emulator::accessors; use Class::MakeMethods::Emulator::accessors::classic qw( foo bar baz ); my $obj = bless {}, 'Bar'; # always return the current value, even on set: $obj->foo( 'hello ' ) if $obj->bar( 'world' ); print $obj->foo, $obj->bar, $obj->baz( "!\n" );
DESCRIPTION
This module emulates the functionality of the accessors module, using Class::MakeMethods to generate similar methods.
In particular, the following lines are equivalent:
use accessors 'foo'; use Class::MakeMethods::Template::Hash 'scalar --get_set_chain' => 'foo'; use accessors::chained 'foo'; use Class::MakeMethods::Template::Hash 'scalar --get_set_chain' => 'foo'; use accessors::classic 'foo'; use Class::MakeMethods::Template::Hash 'scalar' => 'foo';
You may use this module directly, as shown in the SYNOPSIS above,
Furthermore, you may call
use Class::MakeMethods::Emulator::accessors '-take_namespace';
to alias the accessors namespace to this package, and subsequent calls to the original package will be transparently handled by this emulator. To remove the emulation aliasing, calluse Class::MakeMethods::Emulator::accessors '-release_namespace'
. The same mechanism is also available for the classic and chained subclasses.Caution: This affects all subsequent uses of the accessors module in your program, including those in other modules, and might cause unexpected effects.
SEE ALSO
See Class::MakeMethods for general information about this distribution.
See Class::MakeMethods::Emulator for more about this family of subclasses.
See accessors for documentation of the original module.
Module Install Instructions
To install Class::MakeMethods, copy and paste the appropriate command in to your terminal.
cpanm Class::MakeMethods
perl -MCPAN -e shell install Class::MakeMethods
For more information on module installation, please visit the detailed CPAN module installation guide.