File Coverage

blib/lib/Mason/Moose.pm
Criterion Covered Total %
statement 35 36 97.2
branch n/a
condition n/a
subroutine 9 10 90.0
pod 0 1 0.0
total 44 47 93.6


line stmt bran cond sub pod time code
1             package Mason::Moose; ## no critic (Moose::RequireMakeImmutable)
2             $Mason::Moose::VERSION = '2.24';
3 20     20   10345 use Moose ();
  20         7532871  
  20         759  
4 20     20   12874 use MooseX::HasDefaults::RO ();
  20         228039  
  20         657  
5 20     20   11695 use MooseX::StrictConstructor ();
  20         317773  
  20         545  
6 20     20   12632 use Method::Signatures::Simple ();
  20         185739  
  20         507  
7 20     20   191 use Moose::Exporter;
  20         32  
  20         187  
8 20     20   754 use strict;
  20         33  
  20         406  
9 20     20   68 use warnings;
  20         33  
  20         2374  
10             Moose::Exporter->setup_import_methods( also => ['Moose'] );
11              
12             sub init_meta {
13 157     157 0 17845 my $class = shift;
14 157         689 my %params = @_;
15 157         355 my $for_class = $params{for_class};
16 157         1268 Method::Signatures::Simple->import( into => $for_class );
17 157         63560 Moose->init_meta(@_);
18 157         633063 MooseX::StrictConstructor->import( { into => $for_class } );
19 157         479014 MooseX::HasDefaults::RO->import( { into => $for_class } );
20             {
21 20     20   95 no strict 'refs';
  20         26  
  20         1446  
  157         671624  
22 157         481 my $temp = $for_class;
23 157     0   1665 *{ $for_class . '::CLASS' } = sub () { $temp }; # like CLASS.pm
  157         1199  
  0            
24             }
25             }
26              
27             1;
28              
29             __END__
30              
31             =pod
32              
33             =head1 NAME
34              
35             Mason::Moose - Mason Moose policies
36              
37             =head1 SYNOPSIS
38              
39             # instead of use Moose;
40             use Mason::Moose;
41              
42             =head1 DESCRIPTION
43              
44             Sets certain Moose behaviors for Mason's internal classes. Using this module is
45             equivalent to
46              
47             use CLASS;
48             use Moose;
49             use MooseX::HasDefaults::RO;
50             use MooseX::StrictConstructor;
51             use Method::Signatures::Simple;
52              
53             =head1 SEE ALSO
54              
55             L<Mason|Mason>
56              
57             =head1 AUTHOR
58              
59             Jonathan Swartz <swartz@pobox.com>
60              
61             =head1 COPYRIGHT AND LICENSE
62              
63             This software is copyright (c) 2012 by Jonathan Swartz.
64              
65             This is free software; you can redistribute it and/or modify it under
66             the same terms as the Perl 5 programming language system itself.
67              
68             =cut