oose - syntactic sugar to make Moose one-liners easier
version 2.1005
# create a Moose class on the fly ... perl -Moose=Foo -e 'has bar => ( is=>q[ro], default => q[baz] ); print Foo->new->bar' # prints baz # loads an existing class (Moose or non-Moose) # and re-"opens" the package definition to make # debugging/introspection easier perl -Moose=+My::Class -e 'print join ", " => __PACKAGE__->meta->get_method_list' # also loads Moose::Util::TypeConstraints to allow subtypes etc perl -Moose=Person -e'subtype q[ValidAge] => as q[Int] => where { $_ > 0 && $_ < 78 }; has => age ( isa => q[ValidAge], is => q[ro]); Person->new(age => 90)'
oose.pm is a simple source filter that adds package $name; use Moose; use Moose::Util::TypeConstraints; to the beginning of your script and was entirely created because typing perl -e'package Foo; use Moose; ...' was annoying me.
package $name; use Moose; use Moose::Util::TypeConstraints;
perl -e'package Foo; use Moose; ...'
oose provides exactly one method and it's automatically called by perl:
Pass a package name to import to be used by the source filter. The package defaults to Class if none is given.
Class
You will need Filter::Simple and eventually Moose
None reported. But it is a source filter and might have issues there.
See "BUGS" in Moose for details on reporting bugs.
Moose is maintained by the Moose Cabal, along with the help of many contributors. See "CABAL" in Moose and "CONTRIBUTORS" in Moose for details.
This software is copyright (c) 2013 by Infinity Interactive, Inc..
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
To install Moose, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Moose
CPAN shell
perl -MCPAN -e shell install Moose
For more information on module installation, please visit the detailed CPAN module installation guide.