devel/p5-Method-Signatures 20170211
Method and function declarations with signatures and no source filter
- Repository
- FreeBSD ports
- Maintainer
- [email protected]
- License
- ART10, GPLv1+
- Categories
- devel, perl5
- Package size
- 45.9 KiB, 133.3 KiB installed
Description
Method::Signatures provides two new keywords, func and method, so that you can write subroutines with signatures instead of having to spell out my $self = shift; my($thing) = @_
func is like sub but takes a signature where the prototype would normally go. This takes the place of my($foo, $bar) = @_ and does a whole lot more.
method is like func but specifically for making methods. It will automatically provide the invocant as $self (by default). No more my $self = shift.
It also allows signatures, very similar to Perl 6 signatures.
It also does type checking, understanding all the types that Moose (or Mouse) would understand.
And it does all this with no source filters.
Install
As a binary package — by origin, or by package name:
pkg install devel/p5-Method-Signatures
pkg install p5-Method-Signatures
From the ports tree:
cd /usr/ports/devel/p5-Method-Signatures/ && make install clean
To depend on this port in another port's Makefile:
RUN_DEPENDS= p5-Method-Signatures>0:devel/p5-Method-Signatures
Packages
The version each package repository carries. “-” means the repository builds no package of it, “n/a” that there is no such repository.
| Repository | aarch64 | amd64 | armv6 | armv7 | i386 |
|---|---|---|---|---|---|
| FreeBSD:14:latest | 20170211 | 20170211 | 20170211 | 20170211 | 20170211 |
| FreeBSD:14:quarterly | 20170211 | 20170211 | n/a | 20170211 | 20170211 |
| FreeBSD:15:latest | 20170211 | 20170211 | n/a | 20170211 | 20170211 |
| FreeBSD:15:quarterly | 20170211 | 20170211 | n/a | n/a | n/a |
| FreeBSD:16:latest | 20170211 | 20170211 | n/a | n/a | n/a |
| FreeBSD:16:quarterly | n/a | n/a | n/a | n/a | n/a |
Dependencies
As this port's Makefile names them.
Build 7
p5-Any-Moose>=0.11: devel/p5-Any-Moosep5-Const-Fast>=0.006: devel/p5-Const-Fastp5-Devel-Declare>=0.006002: devel/p5-Devel-Declarep5-Lexical-SealRequireHints>=0.008: devel/p5-Lexical-SealRequireHintsp5-Mouse>=0.64: devel/p5-Mousep5-PPI>=1.203: textproc/p5-PPIp5-Sub-Name>=0.03,1: devel/p5-Sub-Name
Runtime 7
p5-Any-Moose>=0.11: devel/p5-Any-Moosep5-Const-Fast>=0.006: devel/p5-Const-Fastp5-Devel-Declare>=0.006002: devel/p5-Devel-Declarep5-Lexical-SealRequireHints>=0.008: devel/p5-Lexical-SealRequireHintsp5-Mouse>=0.64: devel/p5-Mousep5-PPI>=1.203: textproc/p5-PPIp5-Sub-Name>=0.03,1: devel/p5-Sub-Name
Test 2
p5-Test-Exception>=0.29: devel/p5-Test-Exceptionp5-Test-Warn>=0.10: devel/p5-Test-Warn
The full lists below include those, and their dependencies in turn.
All build dependencies 24
- devel/p5-Any-Moose
- devel/p5-B-Hooks-EndOfScope
- devel/p5-B-Hooks-OP-Check
- devel/p5-Clone
- devel/p5-Const-Fast
- devel/p5-Data-OptList
- devel/p5-Devel-Declare
- devel/p5-Lexical-SealRequireHints
- devel/p5-Module-Build
- devel/p5-Module-Implementation
- devel/p5-Module-Runtime
- devel/p5-Mouse
- devel/p5-Params-Util
- devel/p5-Safe-Isa
- devel/p5-Sub-Exporter
- devel/p5-Sub-Exporter-Progressive
- devel/p5-Sub-Install
- devel/p5-Sub-Name
- devel/p5-Task-Weaken
- devel/p5-Variable-Magic
- lang/p5-Try-Tiny
- lang/perl5.42
- textproc/p5-PPI
- textproc/p5-YAML-PP
All run dependencies 23
- devel/p5-Any-Moose
- devel/p5-B-Hooks-EndOfScope
- devel/p5-B-Hooks-OP-Check
- devel/p5-Clone
- devel/p5-Const-Fast
- devel/p5-Data-OptList
- devel/p5-Devel-Declare
- devel/p5-Lexical-SealRequireHints
- devel/p5-Module-Implementation
- devel/p5-Module-Runtime
- devel/p5-Mouse
- devel/p5-Params-Util
- devel/p5-Safe-Isa
- devel/p5-Sub-Exporter
- devel/p5-Sub-Exporter-Progressive
- devel/p5-Sub-Install
- devel/p5-Sub-Name
- devel/p5-Task-Weaken
- devel/p5-Variable-Magic
- lang/p5-Try-Tiny
- lang/perl5.42
- textproc/p5-PPI
- textproc/p5-YAML-PP
No port depends on this one.
Configuration
No options to configure.
- USES
- perl5
- Service scripts
- none
Files
pkg-plist 8
- %%SITE_PERL%%/Method/Signatures.pm
- %%SITE_PERL%%/Method/Signatures/Modifiers.pm
- %%SITE_PERL%%/Method/Signatures/Parameter.pm
- %%SITE_PERL%%/Method/Signatures/Signature.pm
- %%SITE_PERL%%/Method/Signatures/Types.pm
- %%SITE_PERL%%/Method/Signatures/Utils.pm
- %%PERL5_MAN3%%/Method::Signatures.3.gz
- %%PERL5_MAN3%%/Method::Signatures::Modifiers.3.gz
distinfo 1
| File | Size | SHA256 |
|---|---|---|
| Method-Signatures-20170211.tar.gz | 83637 | 891a7c4bb23240871a50faffa1544a9c54450b776662f489fe0dbc0fad22c4e5 |
Master sites 1
- CPAN
Commit history 0
No commits in the history this site was built from.