From: Chris Prather Date: Tue, 11 Dec 2007 18:45:41 +0000 (+0000) Subject: add oose.pm X-Git-Tag: 0_33~4 X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=3eca5b1cee218b12c9c07c37c47b87d315b44195;p=gitmo%2FMoose.git add oose.pm --- diff --git a/lib/oose.pm b/lib/oose.pm new file mode 100644 index 0000000..530b33e --- /dev/null +++ b/lib/oose.pm @@ -0,0 +1,128 @@ +package oose; +use strict; +our $VERSION = '0.0.1'; + +BEGIN { + my $package; + sub import { $package = $_[1] } + use Filter::Simple sub { s/^/package $package;\nuse Moose;\n/; } +} +1; # Magic true value required at end of module +__END__ + +=head1 NAME + +oose - syntactic sugar to make Moose Onliners easier + + +=head1 VERSION + +This document describes oose version 0.0.1 + + +=head1 SYNOPSIS + + perl -Moose=Foo -e 'has bar => ( is=>q[ro], default => q[baz] ); print Foo->new->bar' # prints baz + +=head1 DESCRIPTION + +oose.pm is a Source filter that simply adds C to the beginning of your script +and was entirely created because typing perl -e'package Foo; use Moose; ...' was annoying me. + +=head1 INTERFACE + +oose provides exactly one method and it's automically called by perl: +=over + +=item import(str) + +pass a package name to import to be used by the source filter + +=back + +=head1 CONFIGURATION AND ENVIRONMENT + +=for author to fill in: + A full explanation of any configuration system(s) used by the + module, including the names and locations of any configuration + files, and the meaning of any environment variables or properties + that can be set. These descriptions must also include details of any + configuration language used. + +oose requires no configuration files or environment variables. + +=head1 DEPENDENCIES + +=for author to fill in: + A list of all the other modules that this module relies upon, + including any restrictions on versions, and an indication whether + the module is part of the standard Perl distribution, part of the + module's distribution, or must be installed separately. ] + +You will need L and eventually L + + +=head1 INCOMPATIBILITIES + +=for author to fill in: + A list of any modules that this module cannot be used in conjunction + with. This may be due to name conflicts in the interface, or + competition for system or program resources, or due to internal + limitations of Perl (for example, many modules that use source code + filters are mutually incompatible). + +None reported. But it is a source filter and might have issues there. + +=head1 BUGS AND LIMITATIONS + +=for author to fill in: + A list of known problems with the module, together with some + indication Whether they are likely to be fixed in an upcoming + release. Also a list of restrictions on the features the module + does provide: data types that cannot be handled, performance issues + and the circumstances in which they may arise, practical + limitations on the size of data sets, special cases that are not + (yet) handled, etc. + +No bugs have been reported. + +Please report any bugs or feature requests to +C, or through the web interface at +L. + + +=head1 AUTHOR + +Chris Prather C<< >> + + +=head1 LICENCE AND COPYRIGHT + +Copyright (c) 2007, Chris Prather C<< >>. All rights reserved. + +This module is free software; you can redistribute it and/or +modify it under the same terms as Perl itself. See L. + + +=head1 DISCLAIMER OF WARRANTY + +BECAUSE THIS SOFTWARE IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY +FOR THE SOFTWARE, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN +OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES +PROVIDE THE SOFTWARE "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER +EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE +ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE SOFTWARE IS WITH +YOU. SHOULD THE SOFTWARE PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL +NECESSARY SERVICING, REPAIR, OR CORRECTION. + +IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR +REDISTRIBUTE THE SOFTWARE AS PERMITTED BY THE ABOVE LICENCE, BE +LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL, +OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE +THE SOFTWARE (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING +RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A +FAILURE OF THE SOFTWARE TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF +SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF +SUCH DAMAGES.