Class::MakeMethods::Utility::Inheritable man page on Pidora

Man page or keyword search:  
man Server   31170 pages
apropos Keyword Search (all sections)
Output format
Pidora logo
[printable version]

MakeMethods::Utility::UserrContributed PerMakeMethods::Utility::Inheritable(3)

NAME
       Class::MakeMethods::Utility::Inheritable - "Inheritable" data

SYNOPSIS
	 package MyClass;
	 sub new { ... }

	 package MySubclass;
	 @ISA = 'MyClass';
	 ...
	 my $obj = MyClass->new(...);
	 my $subobj = MySubclass->new(...);

	 use Class::MakeMethods::Utility::Inheritable qw(get_vvalue set_vvalue );

	 my $dataset = {};
	 set_vvalue($dataset, 'MyClass', 'Foobar');    # Set value for class
	 get_vvalue($dataset, 'MyClass');	       # Gets value "Foobar"

	 get_vvalue($dataset, $obj);		       # Objects "inherit"
	 set_vvalue($dataset, $obj, 'Foible');	       # Until you override
	 get_vvalue($dataset, $obj);		       # Now finds "Foible"

	 get_vvalue($dataset, 'MySubclass');	       # Subclass "inherits"
	 get_vvalue($dataset, $subobj);		       # As do its objects
	 set_vvalue($dataset, 'MySubclass', 'Foozle'); # Until we override it
	 get_vvalue($dataset, 'MySubclass');	       # Now finds "Foozle"

	 get_vvalue($dataset, $subobj);		       # Change cascades down
	 set_vvalue($dataset, $subobj, 'Foolish');     # Until we override again

	 get_vvalue($dataset, 'MyClass');	       # Superclass is unchanged

DESCRIPTION
       This module provides several functions which allow you to store values
       in a hash corresponding to both objects and classes, and to retrieve
       those values by searching a object's inheritance tree until it finds a
       matching entry.

       This functionality is used by Class::MakeMethods::Standard::Inheritable
       and Class::MakeMethods::Composite::Inheritable to construct methods
       that can both store class data and be overriden on a per-object level.

REFERENCE
   find_vself
	 $vself = find_vself( $dataset, $instance );

       Searches $instance's inheritance tree until it finds a matching entry
       in the dataset, and returns either the instance, the class that
       matched, or undef.

   get_vvalue
	 $value = get_vvalue( $dataset, $instance );

       Searches $instance's inheritance tree until it finds a matching entry
       in the dataset, and returns that value

   set_vvalue
	 $value = set_vvalue( $dataset, $instance, $value );

       Searches $instance's inheritance tree until it finds a matching entry
       in the dataset, and returns that value

perl v5.14.2			  2004-09-MakeMethods::Utility::Inheritable(3)
[top]

List of man pages available for Pidora

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net