Codebase list libmoox-typetiny-perl / HEAD
HEAD

Tree @HEAD (Download .tar.gz)

NAME
    MooX::TypeTiny - Optimized type checks for Moo + Type::Tiny

SYNOPSIS
      package Some::Moo::Class;
      use Moo;
      use MooX::TypeTiny;
      use Types::Standard qw(Int);

      has attr1 => (is => 'ro', isa => Int);

DESCRIPTION
    This module optimizes Moo type checks when used with Type::Tiny to
    perform better. It will automatically apply to isa checks and coercions
    that use Type::Tiny. Non-Type::Tiny isa checks will work as normal.

    This is done by inlining the type check in a more optimal manner that is
    specific to Type::Tiny rather than the general mechanism Moo usually
    uses.

    With this module, setters with type checks should be as fast as an
    equivalent check in Moose.

    It is hoped that eventually this type inlining will be done
    automatically, making this module unnecessary.

AUTHOR
    haarg - Graham Knop (cpan:HAARG) <haarg@haarg.org>

CONTRIBUTORS
    None so far.

COPYRIGHT
    Copyright (c) 2015 the MooX::TypeTiny "AUTHOR" and "CONTRIBUTORS" as
    listed above.

LICENSE
    This library is free software and may be distributed under the same
    terms as perl itself. See <http://dev.perl.org/licenses/>.