File Coverage

blib/lib/Package/New/Dump.pm
Criterion Covered Total %
statement 35 35 100.0
branch 6 6 100.0
condition n/a
subroutine 9 9 100.0
pod 1 1 100.0
total 51 51 100.0


line stmt bran cond sub pod time code
1             package Package::New::Dump;
2 3     3   258461 use base qw{Package::New};
  3         7  
  3         942  
3 3     3   23 use strict;
  3         7  
  3         84  
4 3     3   15 use warnings;
  3         4  
  3         659  
5              
6             our $VERSION='0.10';
7              
8             =head1 NAME
9              
10             Package::New::Dump - Simple base package from which to inherit
11              
12             =head1 SYNOPSIS
13              
14             package My::Package;
15             use base qw{Package::New::Dump}; #provides new, initialize and dump
16              
17             =head1 DESCRIPTION
18              
19             The Package::New::Dump object provides a consistent object constructor for objects.
20              
21             =head1 RECOMMENDATIONS
22              
23             I recommend using this package only during development and reverting back to L when in full production
24              
25             =head1 USAGE
26              
27             =head1 CONSTRUCTOR
28              
29             See L
30              
31             =cut
32              
33             =head1 METHODS
34              
35             =head2 dump
36              
37             Returns the object serialized by L
38              
39             =cut
40              
41             sub dump {
42 7     7 1 53950 my $self = shift;
43 7         19 my $depth = shift;
44 7 100       30 $depth = 2 unless defined $depth;
45 7         13 local $@;
46 7     2   812 eval 'use Data::Dumper qw{}';
  2     2   868  
  1     1   35290  
  1     1   21  
  2     1   30  
  1         3  
  1         16  
  1         38  
  1         3  
  1         18  
  1         12  
  1         59  
  1         21  
  1         9  
  1         3  
  1         16  
47 7         565 my $error = $@;
48 7 100       29 if ($error) {
49 2 100       15 return wantarray ? () : '';
50             } else {
51 5         32 my $d = Data::Dumper->new([$self]);
52 5         248 $d->Maxdepth($depth);
53 5         55 return $d->Dump;
54             }
55             }
56              
57             =head1 AUTHOR
58              
59             Michael R. Davis
60              
61             =head1 COPYRIGHT
62              
63             This program is free software licensed under the...
64              
65             The BSD License
66              
67             The full text of the license can be found in the LICENSE file included with this module.
68              
69             =head1 SEE ALSO
70              
71             =cut
72              
73             1;