File Coverage

blib/lib/TERN/it.pm
Criterion Covered Total %
statement 22 22 100.0
branch 4 4 100.0
condition n/a
subroutine 7 7 100.0
pod 0 4 0.0
total 33 37 89.1


line stmt bran cond sub pod time code
1             package TERN::it;
2              
3 1     1   14363 use 5.00000;
  1         3  
  1         35  
4 1     1   4 use strict;
  1         3  
  1         43  
5              
6             require Exporter;
7 1     1   5 use vars qw($VERSION @ISA @EXPORT @EXPORT_OK %EXPORT_TAGS);
  1         12  
  1         366  
8             @ISA = qw(Exporter);
9              
10             @EXPORT = qw(
11             it
12             exists_it
13             exists_itA
14             exists_itH
15             defined_it
16             );
17              
18             $VERSION = '0.01';
19              
20              
21             # Preloaded methods go here.
22              
23             my $it;
24              
25             sub it(){
26 4     4 0 47 return $$it;
27             };
28              
29             sub defined_it(\$){
30 3     3 0 162 return defined(${$it=shift});
  3         12  
31             };
32              
33             sub exists_itH(\%$);
34             sub exists_it(\%$){
35 3     3 0 68 my ($hr, $key) = @_;
36 3 100       10 if (exists $hr->{$key}){
37 2         7 return $it = \$hr->{$key};
38             }else{
39 1         2 return ${$it = \undef};
  1         3  
40             };
41             };
42              
43             *exists_itH = \&exists_it;
44              
45             sub exists_itA(\@$){
46 2     2 0 61 my ($ar, $key) = @_;
47 2 100       8 if (exists $ar->[$key]){
48 1         3 return $it = \($ar->[$key]);
49             }else{
50 1         1 return ${$it = \undef};
  1         4  
51             };
52             };
53              
54             1;
55              
56             __END__