The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

Changes for version 0.003_15 - 2013-05-03

  • (Addition) Improvements to to_TypeTiny function, including accepting Validation::Class::Simple objects.

Changes for version 0.003_14 - 2013-05-03

Changes for version 0.003_13 - 2013-05-03

  • (Bugfix) Don't crash in old versions of Moose that have no Class::MOP::_definition_context() function.
  • BAIL_OUT in test suite if 00-compile.t or 01-api.t fail.
  • Better documentation and tests of Moose/Mouse-compatible API.
  • Fix typo in Type::Params documentation. ++$DJERIUS

Changes for version 0.003_12 - 2013-05-01

  • (Bugfix) Sane behaviour for Types::Standard's 'slurpy' function when it appears mid-list.
  • Allow people to use Carp::{confess,cluck,carp} with Type::Params validators; default is still croak.
  • Improved Type::Params documentation.
  • Type::Params validators now explicitly check the number of arguments passed to them. ++$MMCLERIC

Changes for version 0.003_11 - 2013-04-30

  • (Addition) Test cases for Eval::TypeTiny.
  • Automatic coercion for parameterized Dict will no longer drop key/value pairs to force a coercion. ++$MMCLERIC
  • Automatic coercion for parameterized Tuple will no longer drop values to force a coercion. ++$MMCLERIC

Changes for version 0.003_10 - 2013-04-29

  • (Addition) Bundle Type::Params, which had previously appeared on CPAN in a separate developer release.
  • (Addition) Much of the stringy eval stuff has been factored out to a new module: Eval::TypeTiny.
  • (Addition) Type::Tiny::SUPPORT_SMARTMATCH constant.
  • (Documentation) Improve Exporter::TypeTiny documentation.
  • (Documentation) Improve advice on inlining type constraints and coercions.
  • (Packaging) Bump version of Test::More dependency fom 0.88 to 0.96.
  • General code tidy-up.

Changes for version 0.003_09 - 2013-04-28

  • (Addition) 'Tied' type constraint added to Types::Standard.
  • (Documentation) Document usage with Params::Check and Object::Accessor.
  • If Mouse is already in memory, Type::Tiny will use its super-fast XS subs to validate values when possible.

Changes for version 0.003_08 - 2013-04-26

  • (Addition) Test case using Exporter::TypeTiny with Sub::Exporter::Lexical.
  • (Documentation) More Exporter::TypeTiny docs, including usage with Sub::Exporter::Lexical.
  • ASCII-only strings are now accepted by the Chars constraint in Types::Standard.
  • Type::Tiny, Type::Coercion and their subclasses no longer call Types::TypeTiny->import method.
  • Types::TypeTiny lazily loads Exporter::TypeTiny - i.e. it loads Exporter::TypeTiny when Types::TypeTiny->import is first called.

Changes for version 0.003_07 - 2013-04-26

  • (Bugfix) Fix method conflicts when exporting type constraints to roles. ++$BOWTIE
  • (Documentation) Document usage with Class::InsideOut.
  • (Documentation) Minor improvements to manual.

Changes for version 0.003_06 - 2013-04-25

  • (Addition) Types::TypeTiny::to_TypeTiny can now coerce from a Mouse::Meta::TypeConstraint.
  • (Documentation) Add lots of stuff to Type::Tiny::Manual::UsingWithMouse.
  • (Documentation) Document deep coercions (feature added in 0.003_01).
  • Add a bunch of stub methods to Type::Tiny and Type::Coercion in order to make it less necessary to inflate to Moose/Mouse meta objects.
  • No longer need to add '-mouse' when importing types into Mouse libraries. (Same change as what we did for Moose in 0.000_11.)
  • Various minor changes to Exporter::TypeTiny to make it more Sub::Exporter compatible.

Changes for version 0.003_05 - 2013-04-19

  • (Addition) Allow coercions to accept parameters.
  • (Addition) Chars and Bytes types added to Types::Standard.
  • (Addition) Encode, Decode, Join and Split coercions added to Types::Standard.
  • (Addition) Type::Tiny::Class now has a plus_constructors method.
  • (Bugfix) Prevent warnings (about 'my $val' masking a previously declared variable) when several Str checks are being inlined in close proximity, such as Tuple[Str,Str]
  • (Documentation) Document Exporter::TypeTiny.
  • (Documentation) Type::Tiny::Manual::Coercions.

Changes for version 0.003_04 - 2013-04-18

  • Factor out the sub exporting code scattered around (in Type::Utils, Types::TypeTiny and Type::Library) into a single module, Exporter::TypeTiny.

Changes for version 0.003_03 - 2013-04-17

  • (Addition) Add OptList data type to Types::Standard, plus MkOpt coercion.
  • Make Type::Tiny's has_coercion method more DWIM.
  • When inflating Moo type constraints to Moose, don't unnecessarily call 'moose_type' method.

Changes for version 0.003_02 - 2013-04-16

  • (Documentation) Document how to process sub parameters with Type::Tiny, and point people towards Type::Params.
  • Avoid unnecessarily regenerating parameterized type constraints.

Changes for version 0.003_01 - 2013-04-16

  • (Addition) Allow subtypes to inherit coercions from their parent type constraint. (They do not by default.)
  • (Addition) Build coercions automatically for certain type parameterized constraints. Say there's a Num->Int coercion defined; then we should be able to coerce ArrayRef[Num]->ArrayRef[Int].
  • (Addition) Overload "+" operator for Type::Coercion and Type::Tiny allows coercions to be added to each other, and added to type constraints.
  • (Addition) Type::Library packages can now include "standalone" Type::Coercion objects, not attached to a type constraint. These can be exported on request.
  • (Documentation) Link from Test::TypeTiny to Test::Deep::Type.
  • Allow a Type::Tiny object to "freeze" its coercions. This prevents a Type::Tiny object from becoming out of sync with its equivalent Mouse or Moose constraint objects.

Documentation

an overview of Type::Tiny
adding coercions to type constraints
how to build a type library with Type::Tiny, Type::Library and Type::Utils
coerce and validate arguments to functions and methods
how to use Type::Tiny and Type::Library with Moo
how to use Type::Tiny and Type::Library with Moose
how to use Type::Tiny and Type::Library with Mouse
how to use Type::Tiny and Type::Library with other OO frameworks

Modules

utility to evaluate a string of Perl code in a clean environment
a small exporter used internally by Type::Library and friends
useful functions for testing the efficacy of type constraints
a set of coercions to a particular target type constraint
a set of coercions to a union type constraint
tiny, yet Moo(se)-compatible type libraries
Params::Validate-like parameter validation using Type::Tiny type constraints and coercions
tiny, yet Moo(se)-compatible type constraint
type constraints based on the "isa" method
type constraints based on the "can" method
string enum type constraints
intersection type constraints
type constraints based on the "DOES" method
union type constraints
utility functions to make defining type constraints a little easier
bundled set of built-in types for Type::Tiny
internals for Types::Standard
type constraints used internally by Type::Tiny

Provides

in lib/Type/Library.pm