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



NAME

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


VERSION 2.21

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

    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

    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 the Class::props manpage for all the details.


    SUPPORT and FEEDBACK

    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

    © 2004-2005 by Domizio Demichelis.

    All Rights Reserved. This module is free software. It may be used, redistributed and/or modified under the same terms as perl itself.


    CREDITS

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

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