From fa9d20881642df1b054a650260ee3f4c54990130 Mon Sep 17 00:00:00 2001 From: markd Date: Tue, 31 May 2022 20:49:09 +0000 Subject: [PATCH] p5-constant-defer: add version 6 constant::defer creates a subroutine which on the first call runs given code to calculate its value, and on any subsequent calls just returns that value, like a constant. The value code is discarded once run, allowing it to be garbage collected. Deferring a calculation is good if it might take a lot of work or produce a big result but is only needed sometimes or only well into a program run. If it's never needed then the value code never runs. --- devel/Makefile | 3 ++- devel/p5-constant-defer/DESCR | 8 ++++++++ devel/p5-constant-defer/Makefile | 16 ++++++++++++++++ devel/p5-constant-defer/distinfo | 5 +++++ 4 files changed, 31 insertions(+), 1 deletion(-) create mode 100644 devel/p5-constant-defer/DESCR create mode 100644 devel/p5-constant-defer/Makefile create mode 100644 devel/p5-constant-defer/distinfo diff --git a/devel/Makefile b/devel/Makefile index 9331ff3ca4f6..b87fb8c0d8b9 100644 --- a/devel/Makefile +++ b/devel/Makefile @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.3742 2022/05/24 05:54:01 wiz Exp $ +# $NetBSD: Makefile,v 1.3743 2022/05/31 20:49:09 markd Exp $ # COMMENT= Development utilities @@ -2176,6 +2176,7 @@ SUBDIR+= p5-capitalization SUBDIR+= p5-circular-require SUBDIR+= p5-common-sense SUBDIR+= p5-constant-def +SUBDIR+= p5-constant-defer SUBDIR+= p5-curry SUBDIR+= p5-enum SUBDIR+= p5-ex-lib diff --git a/devel/p5-constant-defer/DESCR b/devel/p5-constant-defer/DESCR new file mode 100644 index 000000000000..48265ab2032f --- /dev/null +++ b/devel/p5-constant-defer/DESCR @@ -0,0 +1,8 @@ +constant::defer creates a subroutine which on the first call runs given +code to calculate its value, and on any subsequent calls just returns that +value, like a constant. The value code is discarded once run, allowing it +to be garbage collected. + +Deferring a calculation is good if it might take a lot of work or produce +a big result but is only needed sometimes or only well into a program run. +If it's never needed then the value code never runs. diff --git a/devel/p5-constant-defer/Makefile b/devel/p5-constant-defer/Makefile new file mode 100644 index 000000000000..7abeef9799b6 --- /dev/null +++ b/devel/p5-constant-defer/Makefile @@ -0,0 +1,16 @@ +# $NetBSD: Makefile,v 1.1 2022/05/31 20:49:09 markd Exp $ + +DISTNAME= constant-defer-6 +PKGNAME= p5-${DISTNAME} +CATEGORIES= devel perl5 +MASTER_SITES= ${MASTER_SITE_PERL_CPAN:=../../authors/id/K/KR/KRYDE/} + +MAINTAINER= pkgsrc-users@NetBSD.org +HOMEPAGE= https://metacpan.org/release/constant-defer +COMMENT= constant subs with deferred value calculation +LICENSE= gnu-gpl-v3 + +PERL5_PACKLIST= auto/constant/defer/.packlist + +.include "../../lang/perl5/module.mk" +.include "../../mk/bsd.pkg.mk" diff --git a/devel/p5-constant-defer/distinfo b/devel/p5-constant-defer/distinfo new file mode 100644 index 000000000000..e012206af0c1 --- /dev/null +++ b/devel/p5-constant-defer/distinfo @@ -0,0 +1,5 @@ +$NetBSD: distinfo,v 1.1 2022/05/31 20:49:09 markd Exp $ + +BLAKE2s (constant-defer-6.tar.gz) = 061fad1a566551a57ca780f4eb77159ed1fc0cdd86882f8d206e93895a64c369 +SHA512 (constant-defer-6.tar.gz) = 902916d32ed11737d34f8764af171ba1731de807ffbfd62e342f83bef05ab0a34ddaeec3f2c9b41814877b0568fc3e09fbf26e7ce2cd4a3dd6eeba75e6755b5f +Size (constant-defer-6.tar.gz) = 43427 bytes