Commit | Line | Data |
74d9d9c1 |
1 | use warnings; |
2 | use strict; |
3 | |
4 | BEGIN { |
5 | eval { require Devel::CallParser }; |
6 | if($@ ne "") { |
7 | require Test::More; |
8 | Test::More::plan(skip_all => "Devel::CallParser unavailable"); |
9 | } |
10 | } |
11 | |
12 | use Test::More tests => 1; |
13 | |
14 | use Devel::CallParser (); |
15 | |
16 | sub method { |
17 | my ($usepack, $name, $inpack, $sub) = @_; |
18 | no strict "refs"; |
19 | *{"${inpack}::${name}"} = $sub; |
20 | } |
21 | |
22 | use Devel::Declare method => sub { |
23 | my ($usepack, $use, $inpack, $name) = @_; |
24 | return sub (&) { ($usepack, $name, $inpack, $_[0]); }; |
25 | }; |
26 | |
27 | method bar { |
28 | return join(",", @_); |
29 | }; |
30 | |
31 | is +__PACKAGE__->bar(qw(x y)), "main,x,y"; |
32 | |
33 | 1; |