1 package Moose::Meta::Role::Application;
8 our $AUTHORITY = 'cpan:STEVAN';
10 # no need to get fancy here ...
11 sub new { bless {} => (shift) }
16 $self->check_role_exclusions(@_);
17 $self->check_required_methods(@_);
19 $self->apply_attributes(@_);
20 $self->apply_methods(@_);
22 $self->apply_override_method_modifiers(@_);
24 $self->apply_before_method_modifiers(@_);
25 $self->apply_around_method_modifiers(@_);
26 $self->apply_after_method_modifiers(@_);
29 sub check_role_exclusions { die "Abstract Method" }
30 sub check_required_methods { die "Abstract Method" }
31 sub apply_attributes { die "Abstract Method" }
32 sub apply_methods { die "Abstract Method" }
33 sub apply_override_method_modifiers { die "Abstract Method" }
34 sub apply_method_modifiers { die "Abstract Method" }
36 sub apply_before_method_modifiers { (shift)->apply_method_modifiers('before' => @_) }
37 sub apply_around_method_modifiers { (shift)->apply_method_modifiers('around' => @_) }
38 sub apply_after_method_modifiers { (shift)->apply_method_modifiers('after' => @_) }
48 Moose::Meta::Role::Application
52 This is the abstract base class for role applications.
64 =item B<check_required_methods>
66 =item B<check_role_exclusions>
68 =item B<apply_attributes>
70 =item B<apply_methods>
72 =item B<apply_method_modifiers>
74 =item B<apply_before_method_modifiers>
76 =item B<apply_after_method_modifiers>
78 =item B<apply_around_method_modifiers>
80 =item B<apply_override_method_modifiers>
86 All complex software has bugs lurking in it, and this module is no
87 exception. If you find a bug please either email me, or add the bug
92 Stevan Little E<lt>stevan@iinteractive.comE<gt>
94 =head1 COPYRIGHT AND LICENSE
96 Copyright 2006, 2007 by Infinity Interactive, Inc.
98 L<http://www.iinteractive.com>
100 This library is free software; you can redistribute it and/or modify
101 it under the same terms as Perl itself.