X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=scripts%2Foreilly_prettyp.pl;h=9c858e3dbd5715a49d9198d8c1e42a152142561d;hb=45e51047c2df703229843193e49fb9829489170f;hp=814a9735f2642cf278e0a49865fb97bdea65e4ed;hpb=bb482ed34735d13cad2a02cf0f5cdc322b6b9f89;p=infobot.git diff --git a/scripts/oreilly_prettyp.pl b/scripts/oreilly_prettyp.pl old mode 100644 new mode 100755 index 814a973..9c858e3 --- a/scripts/oreilly_prettyp.pl +++ b/scripts/oreilly_prettyp.pl @@ -1,14 +1,15 @@ -@sample = (11.233,{3 => 4, "hello" => [6,7]}); +@sample = ( 11.233, { 3 => 4, "hello" => [ 6, 7 ] } ); pretty_print(@sample); -$level = -1; # Level of indentation +$level = -1; # Level of indentation sub pretty_print { my $var; foreach $var (@_) { - if (ref ($var)) { + if ( ref($var) ) { print_ref($var); - } else { + } + else { print_scalar($var); } } @@ -16,68 +17,75 @@ sub pretty_print { sub print_scalar { ++$level; - print_indented ($_[0]); + print_indented( $_[0] ); --$level; } sub print_ref { my $r = $_[0]; - if (exists ($already_seen{$r})) { - print_indented ("$r (Seen earlier)"); + if ( exists( $already_seen{$r} ) ) { + print_indented("$r (Seen earlier)"); return; - } else { - $already_seen{$r}=1; + } + else { + $already_seen{$r} = 1; } my $ref_type = ref($r); - if ($ref_type eq "ARRAY") { + if ( $ref_type eq "ARRAY" ) { print_array($r); - } elsif ($ref_type eq "SCALAR") { + } + elsif ( $ref_type eq "SCALAR" ) { print "Ref -> $r"; print_scalar($$r); - } elsif ($ref_type eq "HASH") { + } + elsif ( $ref_type eq "HASH" ) { print_hash($r); - } elsif ($ref_type eq "REF") { + } + elsif ( $ref_type eq "REF" ) { ++$level; print_indented("Ref -> ($r)"); print_ref($$r); --$level; - } else { - print_indented ("$ref_type (not supported)"); + } + else { + print_indented("$ref_type (not supported)"); } } sub print_array { my ($r_array) = @_; ++$level; - print_indented ("[ # $r_array"); + print_indented("[ # $r_array"); foreach $var (@$r_array) { - if (ref ($var)) { + if ( ref($var) ) { print_ref($var); - } else { + } + else { print_scalar($var); } } - print_indented ("]"); + print_indented("]"); --$level; } sub print_hash { - my($r_hash) = @_; - my($key, $val); - ++$level; - print_indented ("{ # $r_hash"); - while (($key, $val) = each %$r_hash) { - $val = ($val ? $val : '""'); + my ($r_hash) = @_; + my ( $key, $val ); + ++$level; + print_indented("{ # $r_hash"); + while ( ( $key, $val ) = each %$r_hash ) { + $val = ( $val ? $val : '""' ); ++$level; - if (ref ($val)) { - print_indented ("$key => "); + if ( ref($val) ) { + print_indented("$key => "); print_ref($val); - } else { - print_indented ("$key => $val"); + } + else { + print_indented("$key => $val"); } --$level; } - print_indented ("}"); + print_indented("}"); --$level; } @@ -85,3 +93,5 @@ sub print_indented { $spaces = ": " x $level; print "${spaces}$_[0]\n"; } + +# vim:ts=4:sw=4:expandtab:tw=80