/usr/share/perl5/MooseX/Runnable/Run.pm is in libmoosex-runnable-perl 0.09-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 | use strict;
use warnings;
package MooseX::Runnable::Run;
BEGIN {
$MooseX::Runnable::Run::AUTHORITY = 'cpan:JROCKWAY';
}
# ABSTRACT: Run a MooseX::Runnable class as an application
$MooseX::Runnable::Run::VERSION = '0.09';
use MooseX::Runnable::Invocation;
use namespace::autoclean;
sub run_application($;@) {
my ($app, @args) = @_;
exit MooseX::Runnable::Invocation->new(
class => $app,
)->run(@args);
}
sub run_application_with_plugins($$;@){
my ($app, $plugins, @args) = @_;
exit MooseX::Runnable::Invocation->new(
class => $app,
plugins => $plugins,
)->run(@args);
}
sub import {
my ($class, $app) = @_;
if($app){
run_application $app, @ARGV;
}
else {
my $c = caller;
no strict 'refs';
*{ $c. '::run_application' } = \&run_application;
*{ $c. '::run_application_with_plugins' } = \&run_application_with_plugins;
}
}
1;
__END__
=pod
=encoding UTF-8
=head1 NAME
MooseX::Runnable::Run - Run a MooseX::Runnable class as an application
=head1 VERSION
version 0.09
=head1 SYNOPSIS
Write an app:
package MyApp;
use Moose; with 'MooseX::Runnable';
sub run { say 'Hello, world.'; return 0 } # (UNIX exit code)
Write a wrapper script, C<myapp.pl>. With sugar:
#!/usr/bin/env perl
use MooseX::Runnable::Run 'MyApp';
Or without:
#!/usr/bin/env perl
use MooseX::Runnable::Run;
run_application 'MyApp', @ARGV;
Then, run your app:
$ ./myapp.pl
Hello, world.
$ echo $?
0
=head1 DESCRIPTION
This is a utility module that runs a L<MooseX::Runnable|MooseX::Runnable> class with
L<MooseX::Runnable::Invocation|MooseX::Runnable::Invocation>.
=head1 SEE ALSO
L<mx-run>, a script that will run MooseX::Runnable apps, saving you
valuable seconds!
L<MooseX::Runnable>
=head1 AUTHOR
Jonathan Rockway <jrockway@cpan.org>
=head1 COPYRIGHT AND LICENSE
This software is copyright (c) 2009 by Jonathan Rockway.
This is free software; you can redistribute it and/or modify it under
the same terms as the Perl 5 programming language system itself.
=cut
|