Commit | Line | Data |
---|---|---|
f9e68395 | 1 | #!/usr/bin/env perl |
2 | package Mouse::Role; | |
3 | use strict; | |
4 | use warnings; | |
5 | ||
6 | use Sub::Exporter; | |
8da998d9 | 7 | use Carp 'confess'; |
f9e68395 | 8 | |
9 | do { | |
10 | my $CALLER; | |
11 | ||
12 | my %exports = ( | |
8da998d9 | 13 | extends => sub { |
14 | return sub { | |
964eaf79 | 15 | confess "Role does not currently support 'extends'"; |
8da998d9 | 16 | } |
17 | }, | |
72381201 | 18 | before => sub { |
19 | return sub { } | |
20 | }, | |
21 | after => sub { | |
22 | return sub { } | |
23 | }, | |
24 | around => sub { | |
25 | return sub { } | |
26 | }, | |
26482d3f | 27 | has => sub { |
28 | return sub { } | |
29 | }, | |
f9e68395 | 30 | ); |
31 | ||
32 | my $exporter = Sub::Exporter::build_exporter({ | |
33 | exports => \%exports, | |
34 | groups => { default => [':all'] }, | |
35 | }); | |
36 | ||
37 | sub import { | |
38 | $CALLER = caller; | |
39 | ||
40 | strict->import; | |
41 | warnings->import; | |
42 | ||
43 | goto $exporter; | |
44 | } | |
45 | ||
46 | sub unimport { | |
47 | } | |
48 | }; | |
49 | ||
50 | 1; | |
51 |