Date: Sun, 16 Jul 2006 16:42:45 +0800 (CST) From: Gea-Suan Lin <gslin@gslin.org> To: FreeBSD-gnats-submit@FreeBSD.org Cc: gslin@gslin.org Subject: ports/100375: [NEW PORT] devel/p5-Class-Multimethods-Pure: Method-ordered multimethod dispatch Message-ID: <20060716084245.E15BA380@netnews.NCTU.edu.tw> Resent-Message-ID: <200607160850.k6G8oGCZ027899@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 100375 >Category: ports >Synopsis: [NEW PORT] devel/p5-Class-Multimethods-Pure: Method-ordered multimethod dispatch >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: change-request >Submitter-Id: current-users >Arrival-Date: Sun Jul 16 08:50:15 GMT 2006 >Closed-Date: >Last-Modified: >Originator: Gea-Suan Lin >Release: FreeBSD 6.1-RELEASE i386 >Organization: >Environment: System: FreeBSD netnews.NCTU.edu.tw 6.1-RELEASE FreeBSD 6.1-RELEASE #0: Sat May 13 03:43:48 CST 2006 >Description: - Tinderbox log: http://tb.gslin.org/logs/4.11-FreeBSD-Perl5/p5-Class-Multimethods-Pure-0.11.log http://tb.gslin.org/logs/4.11-FreeBSD-Perl58/p5-Class-Multimethods-Pure-0.11.log http://tb.gslin.org/logs/5.5-FreeBSD/p5-Class-Multimethods-Pure-0.11.log http://tb.gslin.org/logs/6-STABLE/p5-Class-Multimethods-Pure-0.11.log You can define multimethods with the "multi" declarator: use Class::Multimethods::Pure; multi collide => ('Bullet', 'Ship') => sub { my ($a, $b) = @_; ... }; multi collide => ('Ship', 'Asteroid') => sub { my ($a, $b) = @_; ... }; It is usually wise to put such declarations within a BEGIN block, so they behave more like Perl treats subs (you can call them without parentheses and you can use them before you define them). WWW: http://search.cpan.org/dist/Class-Multimethods-Pure/ Generated with FreeBSD Port Tools 0.77 >How-To-Repeat: >Fix: --- p5-Class-Multimethods-Pure-0.11.shar begins here --- # This is a shell archive. Save it in a file, remove anything before # this line, and then unpack it by entering "sh file". Note, it may # create directories; files and directories will be owned by you and # have default permissions. # # This archive contains: # # p5-Class-Multimethods-Pure # p5-Class-Multimethods-Pure/pkg-descr # p5-Class-Multimethods-Pure/Makefile # p5-Class-Multimethods-Pure/pkg-plist # p5-Class-Multimethods-Pure/distinfo # echo c - p5-Class-Multimethods-Pure mkdir -p p5-Class-Multimethods-Pure > /dev/null 2>&1 echo x - p5-Class-Multimethods-Pure/pkg-descr sed 's/^X//' >p5-Class-Multimethods-Pure/pkg-descr << 'END-of-p5-Class-Multimethods-Pure/pkg-descr' XYou can define multimethods with the "multi" declarator: X X use Class::Multimethods::Pure; X X multi collide => ('Bullet', 'Ship') => sub { X my ($a, $b) = @_; ... X }; X X multi collide => ('Ship', 'Asteroid') => sub { X my ($a, $b) = @_; ... X }; X XIt is usually wise to put such declarations within a BEGIN block, so Xthey behave more like Perl treats subs (you can call them without Xparentheses and you can use them before you define them). X XWWW: http://search.cpan.org/dist/Class-Multimethods-Pure/ END-of-p5-Class-Multimethods-Pure/pkg-descr echo x - p5-Class-Multimethods-Pure/Makefile sed 's/^X//' >p5-Class-Multimethods-Pure/Makefile << 'END-of-p5-Class-Multimethods-Pure/Makefile' X# New ports collection makefile for: p5-Class-Multimethods-Pure X# Date created: 2006-07-16 X# Whom: Gea-Suan Lin <gslin@gslin.org> X# X# $FreeBSD$ X# X XPORTNAME= Class-Multimethods-Pure XPORTVERSION= 0.11 XCATEGORIES= devel perl5 XMASTER_SITES= ${MASTER_SITE_PERL_CPAN} XMASTER_SITE_SUBDIR= Class XPKGNAMEPREFIX= p5- X XMAINTAINER= gslin@gslin.org XCOMMENT= Method-ordered multimethod dispatch X XPERL_CONFIGURE= yes X XMAN3= Class::Multimethods::Pure.3 X X.include <bsd.port.pre.mk> X X.if ${PERL_LEVEL} < 500600 XIGNORE= requires perl 5.6.0 or later. Install lang/perl5.8 then try again X.endif X X.include <bsd.port.post.mk> END-of-p5-Class-Multimethods-Pure/Makefile echo x - p5-Class-Multimethods-Pure/pkg-plist sed 's/^X//' >p5-Class-Multimethods-Pure/pkg-plist << 'END-of-p5-Class-Multimethods-Pure/pkg-plist' X@comment $FreeBSD$ X%%SITE_PERL%%/%%PERL_ARCH%%/auto/Class/Multimethods/Pure/.packlist X%%SITE_PERL%%/Class/Multimethods/Pure.pm X@dirrmtry %%SITE_PERL%%/%%PERL_ARCH%%/auto/Class/Multimethods/Pure X@dirrmtry %%SITE_PERL%%/%%PERL_ARCH%%/auto/Class/Multimethods X@dirrmtry %%SITE_PERL%%/%%PERL_ARCH%%/auto/Class X@dirrmtry %%SITE_PERL%%/Class/Multimethods X@dirrmtry %%SITE_PERL%%/Class END-of-p5-Class-Multimethods-Pure/pkg-plist echo x - p5-Class-Multimethods-Pure/distinfo sed 's/^X//' >p5-Class-Multimethods-Pure/distinfo << 'END-of-p5-Class-Multimethods-Pure/distinfo' XMD5 (Class-Multimethods-Pure-0.11.tar.gz) = 611aa6b2fe51331b40f9060fd73fbd30 XSHA256 (Class-Multimethods-Pure-0.11.tar.gz) = f6c98c18870cedd556268f43bb093609f1b00ca5e039de2c09f057d88a2a4b1c XSIZE (Class-Multimethods-Pure-0.11.tar.gz) = 13056 END-of-p5-Class-Multimethods-Pure/distinfo exit --- p5-Class-Multimethods-Pure-0.11.shar ends here --- >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20060716084245.E15BA380>