Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
MixinFactory::NEXT(3) User Contributed Perl DocumentationMixinFactory::NEXT(3)

       Class::MixinFactory::NEXT - Superclass method redispatch	for mixins

	 use Class::MixinFactory::NEXT;

	 package My::BaseClass;
	 sub foo { return "Foo Bar" }

	 package My::Logging;
	 sub foo { warn	"Calling foo"; (shift)->NEXT('foo', @_)	}

	 package My::MixedClass;
	 @ISA =	( 'My::Logging', 'My::BaseClass', 'Class::MixinFactory::NEXT'; );

	 package main;
	 print My::MixedClass->foo();

       Enhanced	superclass method dispatch for use inside mixin	class methods.
       Allows mixin classes to redispatch to other classes in the inheritance
       tree without themselves inheriting from anything.

   Public Methods
       This package defines one	method,	named NEXT.

	 $callee->NEXT(	$method, @args );

       Searches	the inheritance	tree of	the callee until it finds the package
       from which NEXT is being	called,	and then continues searching until the
       next class which	can perform the	named method.

       Unlike SUPER, this method will backtrack	down the inheritance tree to
       find implementations later in the search	path even if they are on a
       separate	branch.

       This class is automatically included by Class::MixinFactory.

       This is similar to the functionality provided by	NEXT::ACTUAL, but
       without using AUTOLOAD; for a more generalized approach to this issue
       see NEXT.

       For distribution, installation, support,	copyright and license
       information, see	Class::MixinFactory::ReadMe.

perl v5.32.1			  2004-11-15		 MixinFactory::NEXT(3)


Want to link to this manual page? Use this URL:

home | help