dslinux/user/perl/lib/NEXT Changes README

cayenne dslinux_cayenne at user.in-berlin.de
Tue Dec 5 05:27:15 CET 2006


Update of /cvsroot/dslinux/dslinux/user/perl/lib/NEXT
In directory antilope:/tmp/cvs-serv7729/lib/NEXT

Added Files:
	Changes README 
Log Message:
Adding fresh perl source to HEAD to branch from

--- NEW FILE: README ---
==============================================================================
                       Release of version 0.60 of NEXT
==============================================================================


NAME

    NEXT - Pseudo class for method redispatch


DESCRIPTION

    NEXT.pm adds a pseudoclass named C<NEXT> to any program that
    uses it. If a method C<m> calls C<$self->NEXT::m()>, the call to
    C<m> is redispatched as if the calling method had not originally
    been found.

    In other words, a call to C<$self->NEXT::m()> resumes the
    depth-first, left-to-right search of parent classes that
    resulted in the original call to C<m>.

    Note that this is not the same thing as C<$self->SUPER::m()>, which
    begins a new dispatch that is restricted to searching the ancestors
    of the current class. C<$self->NEXT::m()> can backtrack past
    the current class -- to look for a suitable method in other
    ancestors of C<$self> -- whereas C<$self->SUPER::m()> cannot.

    An particularly interesting use of redispatch is in
    C<AUTOLOAD>'ed methods. If such a method determines that it is
    not able to handle a particular call, it may choose to
    redispatch that call, in the hope that some other C<AUTOLOAD>
    (above it, or to its left) might do better.

    The module also allows you to specify that multiply inherited
    methods should only be redispatched once, and what should
    happen if no redispatch is possible.


AUTHOR

    Damian Conway (damian at conway.org)


COPYRIGHT

	 Copyright (c) 2000-2001, Damian Conway. All Rights Reserved.
	 This module is free software. It may be used, redistributed
	    and/or modified under the same terms as Perl itself.


==============================================================================

CHANGES IN VERSION 0.60


	- Re-re-re-fixed NEXT::UNSEEN bug under diamond inheritance 
	  (Note to self: don't code whilst on vacation!)

	- Implemented and documented EVERY functionality


==============================================================================

AVAILABILITY

NEXT has been uploaded to the CPAN

==============================================================================

--- NEW FILE: Changes ---
Revision history for Perl extension NEXT.pm.

0.01	Tue Apr 10 18:27:00 EST 2001

	- original version 


0.01	Thu Apr 12 17:06:49 2001

	- Documented the difference between NEXT and SUPER (thanks Ken)



0.01	Thu Apr 12 17:15:42 2001



0.02	Mon Sep  3 07:52:27 2001

	- Fixed setting of $AUTOLOAD in NEXT'd AUTOLOADS (thanks Leonid)

	- Changed licence for inclusion in core distribution


0.50	Fri Nov 16 11:20:40 2001

	- Added a $VERSION (oops!)

	- Fixed handling of diamond patterns (thanks Paul)

	- Added NEXT::ACTUAL to require existence of next method (thanks Paul)

	- Added NEXT::UNSEEN to avoid calling multiply inherited
	  methods twice (thanks Paul)

	- Re-fixed setting of $AUTOLOAD in NEXT'd AUTOLOADS to be
	  consistent with more useful SUPER:: behaviour

	- Corified tests


0.51	Tue Jul 29 23:09:48 2003

	- Fixed NEXT::UNSEEN bug under diamond inheritance (thanks Dan
	  and Alan)

	- Moved &ancestors out of NEXT class in case anyone ever 
	  calls NEXT::ancestors

	- Replaced UNSEEN with DISTINCT (but left UNSEEN operational
	  for backwards compatibility)


0.52	Wed Jul 30 21:06:59 2003

	- Refixed NEXT::UNSEEN bug under diamond inheritance 


0.53	Tue Aug 12 10:53:25 2003

	- Re-re-fixed NEXT::UNSEEN bug under diamond inheritance 


0.60	Wed Aug 13 03:55:33 2003

	- Re-re-re-fixed NEXT::UNSEEN bug under diamond inheritance 
	  (Note to self: don't code whilst on vacation!)

	- Implemented and documented EVERY functionality




More information about the dslinux-commit mailing list