projects
/
gitmo/Mouse.git
/ blob
commit
grep
author
committer
pickaxe
?
search:
re
3392f3e3e68cc5e96ca545491c7c22f297d8fd83
[gitmo/Mouse.git]
/
lib
/
Mouse
/
Role.pm
1
#!/usr/bin/env perl
2
package Mouse::Role;
3
use strict;
4
use warnings;
5
6
use Sub::Exporter;
7
use Carp 'confess';
8
9
do {
10
my $CALLER;
11
12
my %exports = (
13
extends => sub {
14
return sub {
15
confess "Role does not currently support 'extends'";
16
}
17
},
18
before => sub {
19
return sub { }
20
},
21
after => sub {
22
return sub { }
23
},
24
around => sub {
25
return sub { }
26
},
27
has => sub {
28
return sub { }
29
},
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