/usr/share/perl5/Mason/Component/Moose.pm is in libmason-perl 2.19-2.
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 | package Mason::Component::Moose;
BEGIN {
$Mason::Component::Moose::VERSION = '2.19';
}
use Moose ();
use MooseX::HasDefaults::RW ();
use Method::Signatures::Simple ();
use Moose::Exporter;
use strict;
use warnings;
Moose::Exporter->setup_import_methods( also => ['Moose'] );
sub init_meta {
my $class = shift;
my %params = @_;
my $for_class = $params{for_class};
Method::Signatures::Simple->import( into => $for_class );
MooseX::HasDefaults::RW->import( { into => $for_class } );
{
no strict 'refs';
*{ $for_class . '::CLASS' } = sub () { $for_class }; # like CLASS.pm
*{ $for_class . '::CLASS' } = \$for_class;
}
}
1;
=pod
=head1 NAME
Mason::Component::Moose - Moose policies and exports for Mason components
=head1 DESCRIPTION
This module is automatically included in each generated Mason component class,
and is equivalent to
use CLASS;
use Moose;
use MooseX::HasDefaults::RW;
use Method::Signatures::Simple;
=head1 OVERRIDING
To override the default behavior, subclass this class and specify it as
C<base_component_moose_class> to L<Mason::Interp|Mason::Interp>.
For example, to use L<MooseX::StrictConstructor> in every component:
package My::Mason::Component::Moose;
use Moose::Exporter;
use MooseX::StrictConstructor ();
use base qw(Mason::Component::Moose);
sub init_meta {
my $class = shift;
$class->SUPER::init_meta(@_);
MooseX::StrictConstructor->init_meta(@_);
}
...
my $interp = Mason::Interp->new(..., base_component_moose_class => 'My::Mason::Component::Moose');
=head1 SEE ALSO
L<Mason|Mason>
=head1 AUTHOR
Jonathan Swartz <swartz@pobox.com>
=head1 COPYRIGHT AND LICENSE
This software is copyright (c) 2011 by Jonathan Swartz.
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
__END__
|