Add built local::lib
[catagits/Gitalist.git] / local-lib5 / lib / perl5 / i486-linux-gnu-thread-multi / MooseX / Role / WithOverloading / Meta / Role / Composite.pm
1 package MooseX::Role::WithOverloading::Meta::Role::Composite;
2 our $VERSION = '0.03';
3
4
5 # ABSTRACT: Role for composite roles which support overloading
6
7 use Moose::Role;
8 use Moose::Util::MetaRole;
9 use aliased 'MooseX::Role::WithOverloading::Meta::Role::Application::Composite::ToClass';
10 use aliased 'MooseX::Role::WithOverloading::Meta::Role::Application::Composite::ToRole';
11 use aliased 'MooseX::Role::WithOverloading::Meta::Role::Application::Composite::ToInstance';
12
13 use namespace::autoclean;
14
15
16 around apply_params => sub {
17     my ($next, $self, @args) = @_;
18     return Moose::Util::MetaRole::apply_metaclass_roles(
19         for_class                           => $self->$next(@args),
20         application_to_class_class_roles    => [ ToClass    ],
21         application_to_role_class_roles     => [ ToRole     ],
22         application_to_instance_class_roles => [ ToInstance ],
23     );
24 };
25
26 1;
27
28 __END__
29 =pod
30
31 =head1 NAME
32
33 MooseX::Role::WithOverloading::Meta::Role::Composite - Role for composite roles which support overloading
34
35 =head1 VERSION
36
37 version 0.03
38
39 =head1 METHODS
40
41 =head2 apply_params
42
43 Wrapped method to apply various metaclass roles to aid with role composition.
44
45 =head1 AUTHORS
46
47 Florian Ragwitz <rafl@debian.org>
48 Tomas Doran <bobtfish@bobtfish.net>
49
50 =head1 COPYRIGHT AND LICENSE
51
52 This software is copyright (c) 2009 by Florian Ragwitz.
53
54 This is free software; you can redistribute it and/or modify it under
55 the same terms as the Perl 5 programming language system itself.
56
57 =cut
58