BSD Ports

devel/p5-Specio 0.53 FreeBSD

Type constraints and coercions for Perl

System
FreeBSD
Repository
FreeBSD ports
Maintainer
[email protected]
License
ART20
Categories
devel, perl5
Package size
126.0 KiB, 342.6 KiB installed

Description

The Specio distribution provides classes for representing type constraints and coercion, along with syntax sugar for declaring them.

Note that this is not a proper type system for Perl. Nothing in this distribution will magically make the Perl interpreter start checking a value's type on assignment to a variable. In fact, there's no built-in way to apply a type to a variable at all.

Instead, you can explicitly check a value against a type, and optionally coerce values to that type.

The author's long-term goal is to replace Moose's built-in types and MooseX::Types with this module.

In the other systems

SystemPortVersion
FreeBSDdevel/p5-Specio0.53
OpenBSDdevel/p5-Specio0.51
NetBSDdevel/p5-Specio0.53nb1
DragonFlydevel/p5-Specio0.50
MidnightBSDdevel/p5-Specio0.53
HardenedBSDdevel/p5-Specio0.53
GhostBSDdevel/p5-Specio0.53
OPNsensedevel/p5-Specio0.53

Install

Binary package:

pkg install p5-Specio

From the ports tree:

cd /usr/ports/devel/p5-Specio/ && make install clean

To depend on this port in another port's Makefile:

RUN_DEPENDS=	p5-Specio>0:devel/p5-Specio

Packages

The version each package repository carries. “-” means the repository builds no package of it, “n/a” that there is no such repository.

Repositoryaarch64amd64armv6armv7i386
FreeBSD:14:latest0.530.530.480.510.53
FreeBSD:14:quarterly0.530.53n/a0.510.53
FreeBSD:15:latest0.530.53n/a0.510.51
FreeBSD:15:quarterly0.530.53n/an/an/a
FreeBSD:16:latest0.530.53n/an/an/a
FreeBSD:16:quarterlyn/an/an/an/an/a

Dependencies

As this port's Makefile names them.

Build 10

Runtime 10

Test 3

The full lists below include those, and their dependencies in turn.

Build dependencies 15
Run dependencies 15
Required by 284

The first 100 are listed.

Configuration

No options to configure.

USES
perl5
Service scripts
none

Files

pkg-plist 82
  • %%SITE_PERL%%/Specio.pm
  • %%SITE_PERL%%/Specio/Coercion.pm
  • %%SITE_PERL%%/Specio/Constraint/AnyCan.pm
  • %%SITE_PERL%%/Specio/Constraint/AnyDoes.pm
  • %%SITE_PERL%%/Specio/Constraint/AnyIsa.pm
  • %%SITE_PERL%%/Specio/Constraint/Enum.pm
  • %%SITE_PERL%%/Specio/Constraint/Intersection.pm
  • %%SITE_PERL%%/Specio/Constraint/ObjectCan.pm
  • %%SITE_PERL%%/Specio/Constraint/ObjectDoes.pm
  • %%SITE_PERL%%/Specio/Constraint/ObjectIsa.pm
  • %%SITE_PERL%%/Specio/Constraint/Parameterizable.pm
  • %%SITE_PERL%%/Specio/Constraint/Parameterized.pm
  • %%SITE_PERL%%/Specio/Constraint/Role/CanType.pm
  • %%SITE_PERL%%/Specio/Constraint/Role/DoesType.pm
  • %%SITE_PERL%%/Specio/Constraint/Role/Interface.pm
  • %%SITE_PERL%%/Specio/Constraint/Role/IsaType.pm
  • %%SITE_PERL%%/Specio/Constraint/Simple.pm
  • %%SITE_PERL%%/Specio/Constraint/Structurable.pm
  • %%SITE_PERL%%/Specio/Constraint/Structured.pm
  • %%SITE_PERL%%/Specio/Constraint/Union.pm
  • %%SITE_PERL%%/Specio/Declare.pm
  • %%SITE_PERL%%/Specio/DeclaredAt.pm
  • %%SITE_PERL%%/Specio/Exception.pm
  • %%SITE_PERL%%/Specio/Exporter.pm
  • %%SITE_PERL%%/Specio/Helpers.pm
  • %%SITE_PERL%%/Specio/Library/Builtins.pm
  • %%SITE_PERL%%/Specio/Library/Numeric.pm
  • %%SITE_PERL%%/Specio/Library/Perl.pm
  • %%SITE_PERL%%/Specio/Library/String.pm
  • %%SITE_PERL%%/Specio/Library/Structured.pm
  • %%SITE_PERL%%/Specio/Library/Structured/Dict.pm
  • %%SITE_PERL%%/Specio/Library/Structured/Map.pm
  • %%SITE_PERL%%/Specio/Library/Structured/Tuple.pm
  • %%SITE_PERL%%/Specio/OO.pm
  • %%SITE_PERL%%/Specio/PP.pm
  • %%SITE_PERL%%/Specio/PartialDump.pm
  • %%SITE_PERL%%/Specio/Registry.pm
  • %%SITE_PERL%%/Specio/Role/Inlinable.pm
  • %%SITE_PERL%%/Specio/Subs.pm
  • %%SITE_PERL%%/Specio/TypeChecks.pm
  • %%SITE_PERL%%/Specio/XS.pm
  • %%SITE_PERL%%/Test/Specio.pm
  • %%PERL5_MAN3%%/Specio.3.gz
  • %%PERL5_MAN3%%/Specio::Coercion.3.gz
  • %%PERL5_MAN3%%/Specio::Constraint::AnyCan.3.gz
  • %%PERL5_MAN3%%/Specio::Constraint::AnyDoes.3.gz
  • %%PERL5_MAN3%%/Specio::Constraint::AnyIsa.3.gz
  • %%PERL5_MAN3%%/Specio::Constraint::Enum.3.gz
  • %%PERL5_MAN3%%/Specio::Constraint::Intersection.3.gz
  • %%PERL5_MAN3%%/Specio::Constraint::ObjectCan.3.gz
  • %%PERL5_MAN3%%/Specio::Constraint::ObjectDoes.3.gz
  • %%PERL5_MAN3%%/Specio::Constraint::ObjectIsa.3.gz
  • %%PERL5_MAN3%%/Specio::Constraint::Parameterizable.3.gz
  • %%PERL5_MAN3%%/Specio::Constraint::Parameterized.3.gz
  • %%PERL5_MAN3%%/Specio::Constraint::Role::CanType.3.gz
  • %%PERL5_MAN3%%/Specio::Constraint::Role::DoesType.3.gz
  • %%PERL5_MAN3%%/Specio::Constraint::Role::Interface.3.gz
  • %%PERL5_MAN3%%/Specio::Constraint::Role::IsaType.3.gz
  • %%PERL5_MAN3%%/Specio::Constraint::Simple.3.gz
  • %%PERL5_MAN3%%/Specio::Constraint::Structurable.3.gz
  • %%PERL5_MAN3%%/Specio::Constraint::Structured.3.gz
  • %%PERL5_MAN3%%/Specio::Constraint::Union.3.gz
  • %%PERL5_MAN3%%/Specio::Declare.3.gz
  • %%PERL5_MAN3%%/Specio::DeclaredAt.3.gz
  • %%PERL5_MAN3%%/Specio::Exception.3.gz
  • %%PERL5_MAN3%%/Specio::Exporter.3.gz
  • %%PERL5_MAN3%%/Specio::Helpers.3.gz
  • %%PERL5_MAN3%%/Specio::Library::Builtins.3.gz
  • %%PERL5_MAN3%%/Specio::Library::Numeric.3.gz
  • %%PERL5_MAN3%%/Specio::Library::Perl.3.gz
  • %%PERL5_MAN3%%/Specio::Library::String.3.gz
  • %%PERL5_MAN3%%/Specio::Library::Structured.3.gz
  • %%PERL5_MAN3%%/Specio::Library::Structured::Dict.3.gz
  • %%PERL5_MAN3%%/Specio::Library::Structured::Map.3.gz
  • %%PERL5_MAN3%%/Specio::Library::Structured::Tuple.3.gz
  • %%PERL5_MAN3%%/Specio::OO.3.gz
  • %%PERL5_MAN3%%/Specio::PartialDump.3.gz
  • %%PERL5_MAN3%%/Specio::Registry.3.gz
  • %%PERL5_MAN3%%/Specio::Role::Inlinable.3.gz
  • %%PERL5_MAN3%%/Specio::Subs.3.gz
  • %%PERL5_MAN3%%/Specio::TypeChecks.3.gz
  • %%PERL5_MAN3%%/Test::Specio.3.gz
distinfo 1
FileSizeSHA256
Specio-0.53.tar.gz1300090d0eecfb9e89bd0f5f710fac42e1200a882d513a862f98497eaef5927ac6c183
Master sites 1
  • CPAN

Commit history 0

No commits in the history this site was built from.