Commit | Line | Data |
c20dc98b |
1 | package TestWrapper; |
3df5416a |
2 | use Moose; |
c20dc98b |
3 | |
3df5416a |
4 | extends 'MooseX::TypeLibrary::Wrapper'; |
5 | #use Class::C3; |
6 | #use base 'MooseX::TypeLibrary::Wrapper'; |
c20dc98b |
7 | |
3df5416a |
8 | around type_export_generator => sub { |
9 | my $code = super(); |
c20dc98b |
10 | return sub { $code->(@_) }; |
3df5416a |
11 | }; |
c20dc98b |
12 | |
3df5416a |
13 | #sub type_export_generator { |
14 | # my $class = shift; |
15 | # my ($type, $full) = @_; |
16 | # my $code = $class->next::method(@_); |
17 | # return sub { $code->(@_) }; |
18 | #} |
19 | |
20 | around check_export_generator => sub { |
21 | my $code = super(); |
c20dc98b |
22 | return sub { |
23 | return $code unless @_; |
24 | return $code->(@_); |
25 | }; |
3df5416a |
26 | }; |
27 | |
28 | #sub check_export_generator { |
29 | # my $class = shift; |
30 | # my ($type, $full, $undef_msg) = @_; |
31 | # my $code = $class->next::method(@_); |
32 | # return sub { |
33 | # return $code unless @_; |
34 | # return $code->(@_); |
35 | # }; |
36 | #} |
c20dc98b |
37 | |
3df5416a |
38 | around coercion_export_generator => sub { |
39 | my $code = super(); |
c20dc98b |
40 | return sub { |
3df5416a |
41 | my $value = $code->(@_); |
42 | die "coercion returned undef\n" unless defined $value; |
43 | return $value; |
c20dc98b |
44 | }; |
3df5416a |
45 | }; |
46 | |
47 | #sub coercion_export_generator { |
48 | # my $class = shift; |
49 | # my ($type, $full, $undef_msg) = @_; |
50 | # my $code = $class->next::method(@_); |
51 | # return sub { |
52 | # my $val = $code->(@_); |
53 | # die "coercion returned undef\n" unless defined $val; |
54 | # return $val; |
55 | # }; |
56 | #} |
c20dc98b |
57 | |
58 | 1; |