--- trunk/lib/Frey/Dumper.pm 2008/11/06 20:25:04 325
+++ trunk/lib/Frey/Dumper.pm 2008/11/06 20:56:44 327
@@ -1,6 +1,8 @@
package Frey::Dumper;
use Moose;
+with 'Frey::Escape';
+
use Data::Dump qw/dump/;
=head1 NAME
@@ -16,30 +18,29 @@
sub markup {
my ($self) = @_;
+ qq|
| . $self->unroll( $self->data ) . qq|
|;
+}
- sub unroll {
- my ($data,$ref,$key) = @_;
- my $out;
- my $title = $ref ? qq| title="$ref"| : '';
- if ( ref($data) eq 'ARRAY' ) {
- $out .= "$key" if $key;
- $out .= qq|\n|;
- $out .= unroll($_,ref($_)) foreach @$data;
- $out .= "
\n";
- } elsif ( ref($data) ) {
- $out .= "$key" if $key;
- $out .= qq|\n|;
- $out .= unroll($data->{$_},ref($data->{$_}),$_) foreach keys %$data;
- $out .= "
\n";
- } else {
- $out .= qq||;
- $out .= "$key → " if $key;
- $out .= dump( $data ) . "";
- }
- return $out;
+sub unroll {
+ my ($self,$data,$ref,$key) = @_;
+ my $out;
+ my $title = $ref ? qq| title="$ref"| : '';
+ if ( ref($data) eq 'ARRAY' ) {
+ $out .= "$key ↓" if $key;
+ $out .= qq|\n|;
+ $out .= $self->unroll($_,ref($_)) foreach @$data;
+ $out .= "
\n";
+ } elsif ( ref($data) ) {
+ $out .= "$key ↓" if $key;
+ $out .= qq|\n|;
+ $out .= $self->unroll($data->{$_},ref($data->{$_}),$_) foreach keys %$data;
+ $out .= "
\n";
+ } else {
+ $out .= qq||;
+ $out .= "$key → " if $key;
+ $out .= "" . $self->html_dump( $data ) . "";
}
-
- unroll( $self->data );
+ return $out;
}
1;