Package Info

perl-MooX-late


easily translate Moose code to Moo


Development/Libraries/Perl

the Moo manpage is a light-weight object oriented programming framework which aims to be compatible with the Moose manpage. It does this by detecting when Moose has been loaded, and automatically "inflating" its classes and roles to full Moose classes and roles. This way, Moo classes can consume Moose roles, Moose classes can extend Moo classes, and so forth.

However, the surface syntax of Moo differs somewhat from Moose. For example the 'isa' option when defining attributes in Moose must be either a string or a blessed the Moose::Meta::TypeConstraint manpage object; but in Moo must be a coderef. These differences in surface syntax make porting code from Moose to Moo potentially tricky. the MooX::late manpage provides some assistance by enabling a slightly more Moosey surface syntax.

MooX::late does the following:

    Supports 'isa => $stringytype'.

    Supports 'does => $rolename' .

    Supports 'lazy_build => 1'.

    Exports 'blessed' and 'confess' functions to your namespace.

    Handles certain attribute traits. Currently 'Hash', 'Array' and 'Code' are supported. This feature requires the MooX::HandlesVia manpage.

    'String', 'Number', 'Counter' and 'Bool' are unlikely to ever be supported because of internal implementation details of Moo. If you need another attribute trait to be supported, let me know and I will consider it.

Five features. It is not the aim of 'MooX::late' to make every aspect of Moo behave exactly identically to Moose. It's just going after the low-hanging fruit. So it does five things right now, and I promise that future versions will never do more than seven.

Previous releases of MooX::late added support for 'coerce => 1' and 'default => $nonref'. These features have now been added to Moo itself, so MooX::late no longer has to deal with them.


License: Artistic-1.0 or GPL-1.0+
URL: http://search.cpan.org/dist/MooX-late/

Categories

Releases

Package Version Update ID Released Package Hub Version Platforms Subpackages
0.015-bp155.2.8 info GA Release 2023-05-17 15 SP5
  • AArch64
  • ppc64le
  • s390x
  • x86-64
  • perl-MooX-late
0.015-bp154.1.17 info GA Release 2022-05-09 15 SP4
  • AArch64
  • ppc64le
  • s390x
  • x86-64
  • perl-MooX-late
0.015-bp153.1.12 info GA Release 2021-03-06 15 SP3
  • AArch64
  • ppc64le
  • s390x
  • x86-64
  • perl-MooX-late
0.015-bp152.3.14 info GA Release 2020-04-17 15 SP2
  • AArch64
  • ppc64le
  • s390x
  • x86-64
  • perl-MooX-late
0.015-bp151.3.1 info GA Release 2019-07-16 15 SP1
  • AArch64
  • ppc64le
  • s390x
  • x86-64
  • perl-MooX-late
0.015-bp151.2.10 info GA Release 2019-05-18 15 SP1
  • AArch64
  • ppc64le
  • s390x
  • x86-64
  • perl-MooX-late
0.015-bp150.2.4 info GA Release 2018-07-30 15
  • AArch64
  • ppc64le
  • s390x
  • x86-64
  • perl-MooX-late