File Coverage

blib/lib/Devel/ArgNames.pm
Criterion Covered Total %
statement 19 19 100.0
branch n/a
condition 1 2 50.0
subroutine 5 5 100.0
pod 1 1 100.0
total 26 27 96.3


line stmt bran cond sub pod time code
1             #!/usr/bin/perl
2              
3             package Devel::ArgNames;
4              
5 1     1   29067 use strict;
  1         2  
  1         33  
6 1     1   5 use warnings;
  1         2  
  1         47  
7              
8             our $VERSION = "0.03";
9              
10 1     1   6 use base qw(Exporter);
  1         6  
  1         171  
11              
12             our @EXPORT_OK = our @EXPORT = qw(arg_names);
13              
14 1     1   10269 use PadWalker qw(peek_my peek_our);
  1         3232  
  1         252  
15              
16             sub arg_names (;$) {
17 1   50 1 1 16 my $level = shift || 2;
18 1         3 { package DB; () = caller($level - 1) }
  1         13  
19 1         4 @{{ reverse %{peek_my($level)}, %{peek_our($level)} }}{\(@DB::args)};
  1         2  
  1         14  
  1         21  
20             }
21              
22             __PACKAGE__
23              
24             __END__