Mo::Inline - Inline Mo and Features into your package
In your Mo module:
# This is effectively your own private Mo(ose) setup package MyModule::Mo; # use Mo qw'build builder default import'; 1;
From the command line:
> mo-inline lib/MyModule/Mo.pm
or:
> mo-inline lib/
or (if you are really lazy):
> mo-inline
Then from another module:
package MyModule::Foo; use MyModule::Mo; # gets build, builder and default automatically
Mo is so small that you can easily inline it, along with any feature modules. Mo provides a script called mo-inline that will do it for you.
mo-inline
All you need to do is comment out the line that uses Mo, and run mo-inline on the file. mo-inline will find such comments and do the inlining for you. It will also replace any old inlined Mo with the latest version.
What Mo could you possibly want?
By using the Mo::import feature, all uses of your Mo class will turn on all the features you specified. You can override it if you want, but that will be the default.
For real world examples of Mo inlined using mo-inline, see YAML::Mo, Pegex::Mo and TestML::Mo.
Mo
Ingy döt Net <ingy@ingy.net>
Copyright (c) 2011. Ingy döt Net.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
See http://www.perl.com/perl/misc/Artistic.html
To install Mo, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Mo
CPAN shell
perl -MCPAN -e shell install Mo
For more information on module installation, please visit the detailed CPAN module installation guide.