devel/p5-Specio 0.53 MidnightBSD
Type constraints and coercions for Perl
- System
- MidnightBSD
- Repository
- mports
- Maintainer
- [email protected]
- License
- artistic2
- Categories
- devel, perl5
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
The newest version among them is 0.53, as upstream numbers it.
| System | Port | Version | Vulnerabilities | Status | Maintainer | Last update |
|---|---|---|---|---|---|---|
| MidnightBSD | devel/p5-Specio | 0.53 newest | no data | - | [email protected] | - |
| FreeBSD | devel/p5-Specio | 0.53 newest | none known | - | [email protected] | - |
| OpenBSD | devel/p5-Specio | 0.51 | no data | - | Wen Heping <[email protected]> | - |
| NetBSD | devel/p5-Specio | 0.53nb1 newest | none known | - | [email protected] | 2026-07-16 |
| DragonFly | devel/p5-Specio | 0.50 | none known | - | [email protected] | - |
| HardenedBSD | devel/p5-Specio | 0.53 newest | no data | - | [email protected] | - |
| GhostBSD | devel/p5-Specio | 0.53 newest | no data | - | [email protected] | - |
| OPNsense | devel/p5-Specio | 0.53 newest | no data | - | [email protected] | - |
Install
Binary package:
mport install p5-Specio
From mports:
cd /usr/mports/devel/p5-Specio && make install clean
To depend on this port in another port's Makefile:
RUN_DEPENDS= p5-Specio>0:devel/p5-Specio
Dependency graph
Ports that need it on the left, what it needs to run on the right; at most 8 of each. "Dependencies" below lists them all.
Dependencies
As this port's Makefile names them.
Build 10
p5-Clone>=0: devel/p5-Clonep5-Clone-PP>=0: devel/p5-Clone-PPp5-Devel-StackTrace>=0: devel/p5-Devel-StackTracep5-Eval-Closure>=0: devel/p5-Eval-Closurep5-MRO-Compat>=0: devel/p5-MRO-Compatp5-Module-Implementation>=0: devel/p5-Module-Implementationp5-Module-Runtime>=0: devel/p5-Module-Runtimep5-Role-Tiny>=1.003003: devel/p5-Role-Tinyp5-Sub-Quote>=0: devel/p5-Sub-Quotep5-Try-Tiny>=0: lang/p5-Try-Tiny
Runtime 10
p5-Clone>=0: devel/p5-Clonep5-Clone-PP>=0: devel/p5-Clone-PPp5-Devel-StackTrace>=0: devel/p5-Devel-StackTracep5-Eval-Closure>=0: devel/p5-Eval-Closurep5-MRO-Compat>=0: devel/p5-MRO-Compatp5-Module-Implementation>=0: devel/p5-Module-Implementationp5-Module-Runtime>=0: devel/p5-Module-Runtimep5-Role-Tiny>=1.003003: devel/p5-Role-Tinyp5-Sub-Quote>=0: devel/p5-Sub-Quotep5-Try-Tiny>=0: lang/p5-Try-Tiny
Test 3
p5-Test-Fatal>=0: devel/p5-Test-Fatalp5-Test-Needs>=0: devel/p5-Test-Needsp5-namespace-autoclean>=0: devel/p5-namespace-autoclean
Build dependencies 10
Run dependencies 10
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
| File | Size | SHA256 |
|---|---|---|
| Specio-0.53.tar.gz | 130009 | 0d0eecfb9e89bd0f5f710fac42e1200a882d513a862f98497eaef5927ac6c183 |
Master sites 1
- CPAN