String type constraints that match valid and relaxed JSON. For the
meaning of 'relaxed,' see JSON::XS. All the heavy lifting in the
background is also done by JSON::XS.
This is a clone of Object::Tiny, but adjusted to create accessors that
return lvalues.
This is a utility that creates common Moose subtypes, coercions and option
specifications useful for dealing with Path::Class objects as Moose attributes.
This module constructs coercions (see Moose::Util::TypeConstraints) from both
'Str' and 'ArrayRef' to both Path::Class::Dir and Path::Class::File objects.
It also adds the Getopt option type ("=s") for both Path::Class::Dir and
Path::Class::File (see MooseX::Getopt).
This is just meant to be a central place for these constructs, so you don't
have to worry about whether they've been created or not, and you're not tempted
to copy them into yet another class (like I was).
This module provides Path::Tiny types for Moose. It handles two
important types of coercion:
- coercing objects with overloaded stringification
- coercing to absolute paths
It also can check to ensure that files or directories exist.
This library provides Moose types for checking things (mostly strings) against
syntax that is, or is a reasonable subset of, Perl syntax.
Port number type for Moose classes by the Internet Assigned Numbers
Authority (IANA).
MooseX::Types::Set::Object provides Moose type constraints
(see Moose::Util::TypeConstraints, MooseX::Types).
MooseX::Types::Signal exports a type, Signal, that recognizes valid signals
on your platform. The underlying type is a non-negative number, but there is
a coercion from strings to numbers that recognizes signals by name.
There are also more restrictive types, PerlSignal and UnixSignal. UnixSignal
only understands signals that are in your system's signal.h header file.
PerlSignal only understands signals that are in Perl's %Config hash. Signal
is either/or, with preference to UnixSignal over PerlSignal when coercing.
This module provides a more general version of the Str type. If
coercions are enabled, it will accepts objects that overload
stringification and coerces them into strings.
A structured type constraint is a standard container Moose type
constraint, such as an ArrayRef or HashRef, which has been enhanced to
allow you to explicitly name all the allowed type constraints inside the
structure. The generalized form is:
TypeConstraint[@TypeParameters or %TypeParameters]
Where 'TypeParameters' is an array reference or hash references of
Moose::Meta::TypeConstraint objects.
This type library enables structured type constraints. It is built on
top of the MooseX::Types library system, so you should review the
documentation for that if you are not familiar with it.