Object::props - Pragma to implement lvalue accessors with options


OOTools documentation  | view source Contained in the OOTools distribution.

Index


NAME

Top

Object::props - Pragma to implement lvalue accessors with options

VERSION 2.21

Top

Included in OOTools 2.21 distribution.

The latest versions changes are reported in the Changes file in this distribution.

The distribution includes:

Package::props

Pragma to implement lvalue accessors with options

* Package::groups

Pragma to implement groups of properties accessors with options

* Class::constr

Pragma to implement constructor methods

* Class::props

Pragma to implement lvalue accessors with options

* Class::groups

Pragma to implement groups of properties accessors with options

* Class::Error

Delayed checking of object failure

* Class::Util

Class utility functions

* Object::props

Pragma to implement lvalue accessors with options

* Object::groups

Pragma to implement groups of properties accessors with options

INSTALLATION

Top

Prerequisites
    Perl version >= 5.6.1

CPAN
    perl -MCPAN -e 'install OOTools'

Standard installation

From the directory where this file is located, type:

    perl Makefile.PL
    make
    make test
    make install

DESCRIPTION

Top

This pragma is very similar to the Class::props pragma: the main difference is the underlying variable that holds the value, which is a global scalar in the caller package instead in the class. For example:

   package BaseClass;
   use Package::props 'a_package_prop';
   use Class::props 'a_class_prop';

   package SubClass;
   our @ISA = 'BaseClass';

   # underlaying scalar for accessor 'a_package_prop' is
   # $BaseClass::a_package_prop
   # underlaying scalar for accessor 'a_class_prop' is
   # $SubClass::a_class_prop;

This might seem a subtle difference, but the possible usage in inherited classes makes a big difference.

You can also call a package property accessor by statically using the implementing package name (e.g. BaseClass-a_prop>), regardless the subclass that uses it.

See the documentation of the accessor properties in Class::props for all the details.

SUPPORT and FEEDBACK

Top

If you need support or if you want just to send me some feedback or request, please use this link: http://perl.4pro.net/?Object::props.

AUTHOR and COPYRIGHT

Top

CREDITS

Top

Thanks to Juerd Waalboer (http://search.cpan.org/author/JUERD) that with its Attribute::Property inspired the creation of this distribution.


OOTools documentation  | view source Contained in the OOTools distribution.