GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
MakeMethods::Emulator::accessors(3) User Contributed Perl Documentation MakeMethods::Emulator::accessors(3)

Class::MakeMethods::Emulator::accessors - Emulate the accessors module

  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" );

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, call "use 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 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.

2004-09-06 perl v5.32.1

Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.