File Coverage

blib/lib/Perl6/Perl.pm
Criterion Covered Total %
statement 25 28 89.2
branch 5 6 83.3
condition 3 3 100.0
subroutine 7 8 87.5
pod 1 2 50.0
total 41 47 87.2


line stmt bran cond sub pod time code
1             package Perl6::Perl;
2             #
3             # $Id: Perl.pm,v 0.1 2006/12/23 23:12:17 dankogai Exp dankogai $
4             #
5 2     2   40261 use 5.008001;
  2         8  
  2         88  
6 2     2   10 use strict;
  2         4  
  2         71  
7 2     2   10 use warnings;
  2         563  
  2         77  
8 2     2   2423 use Data::Dumper ();
  2         49519  
  2         60  
9 2     2   19 use Scalar::Util qw/blessed/;
  2         3  
  2         263  
10 2     2   12 use base 'Exporter';
  2         3  
  2         1049  
11             our $VERSION = sprintf "%d.%02d", q$Revision: 0.1 $ =~ /(\d+)/g;
12             our @EXPORT = qw();
13             our %EXPORT_TAGS = ( 'all' => [ qw(
14             p perl
15             ) ] );
16             our @EXPORT_OK = ( @{ $EXPORT_TAGS{'all'} } );
17              
18             # Default Values
19             our %DD_Default = (
20             Deparse => 1,
21             Terse => 1,
22             Useqq => 1,
23             );
24              
25             sub perl {
26 7     7 0 12193 my $self = shift;
27 7 100       71 return $self unless ref $self;
28 6         36 my $dd = Data::Dumper->new( [$self] );
29 6         190 $dd->$_( $DD_Default{$_} ) for keys %DD_Default;
30 6 50 100     182 $dd->Indent(
    100          
31             blessed($self) && $self->isa('CODE') ? 2
32             : ref $self eq 'CODE' ? 2 : 0
33             );
34 6         69 while ( my ( $k, $v ) = splice( @_, 0, 2 ) ){
35 0         0 $k = ucfirst $k;
36 0         0 $dd->$k($v);
37             }
38 6         21 return $dd->Dump;
39             }
40              
41 0     0 1   sub p{ print perl(@_), "\n" }
42              
43             *UNIVERSAL::perl = \&perl;
44              
45             # Preloaded methods go here.
46              
47             1;
48             __END__