Class::Inner man page on Fedora

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

Class::Inner(3)	      User Contributed Perl Documentation      Class::Inner(3)

NAME
       Class::Inner - A perlish implementation of Java like inner classes

SYNOPSIS
	   use Class::Inner;

	   my $object = Class::Inner->new(
	       parent => 'ParentClass',
	       methods => { method => sub { ... } }, },
	       constructor => 'new',
	       args => [@constructor_args],
	   );

DESCRIPTION
       Yet another implementation of an anonymous class with per object
       overrideable methods, but with the added attraction of sort of working
       dispatch to the parent class's method.

   METHODS
       new HASH
	   Takes a hash like argument list with the following keys.

	   parent
	       The name of the parent class. Note that you can only get single
	       inheritance with this or SUPER won't work.

	   methods
	       A hash, keys are method names, values are CODEREFs.

	   constructor
	       The name of the constructor method. Defaults to 'new'.

	   args
	       An anonymous array of arguments to pass to the constructor.
	       Defaults to an empty list.

	   Returns an object in an 'anonymous' class which inherits from the
	   parent class. This anonymous class has a couple of 'extra' methods:

	   SUPER
	       If you were to pass something like

		   $obj = Class::Inner->new(
		       parent  => 'Parent',
		       methods => { method =>  sub { ...; $self->SUPER::method(@_) } },
		   );

	       then "$self-"gt"SUPER::method" almost certainly wouldn't do
	       what you expect, so we provide the "SUPER" method which
	       dispatches to the parent implementation of the current method.
	       There seems to be no good way of getting the full "SUPER::"
	       functionality, but I'm working on it.

	   DESTROY
	       Because Class::Inner works by creating a whole new class name
	       for your object, it could potentially leak memory if you create
	       a lot of them. So we add a "DESTROY" method that removes the
	       class from the symbol table once it's finished with.

	       If you need to override a parent's DESTROY method, adding a
	       call to "Class::Inner::clean_symbol_table(ref $self)" to it. Do
	       it at the end of the method or your other method calls won't
	       work.

       clean_symbol_table
	   The helper subroutine that DESTROY uses to remove the class from
	   the symbol table.

       new_classname
	   Returns a name for the next anonymous class.

AUTHOR
       Maintained by Arun Prasaad  "<arunbear@cpan.org>"

       Copyright (c) 2001 by Piers Cawley <pdcawley@iterative-software.com>.

       All rights reserved. This program is free software; you can
       redistribute it and/or modify it under the same terms as perl itself.

       Thanks to the Iterative Software people: Leon Brocard, Natalie Ford and
       Dave Cross. Also, this module was written initially for use in the
       PerlUnit project, AKA Test::Unit. Kudos to Christian Lemburg and the
       rest of that team.

SEE ALSO
       There are a million and one differen Class constructors available on
       CPAN, none of them does quite what I want, so I wrote this one to add
       to that population where hopefully it will live and thrive.

BUGS
       Bound to be some. Actually the "SUPER" method is a workaround for what
       I consider to be a bug in perl.

perl v5.14.0			  2009-11-21		       Class::Inner(3)
[top]

List of man pages available for Fedora

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