X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=p5sagit%2FDevel-REPL.git;a=blobdiff_plain;f=lib%2FDevel%2FREPL%2FPlugin%2FDDS.pm;h=b9c3f33ac77d5aa88d74624d0f3d3d3b3dfcdfe1;hp=50464e008467197ba4ce6296d54c223cd0ae6263;hb=75a08365ddd836a78f37d82b8d38c1642e7b20af;hpb=cfd1094b45c394258ccda08216f1435bf40e1d50 diff --git a/lib/Devel/REPL/Plugin/DDS.pm b/lib/Devel/REPL/Plugin/DDS.pm index 50464e0..b9c3f33 100644 --- a/lib/Devel/REPL/Plugin/DDS.pm +++ b/lib/Devel/REPL/Plugin/DDS.pm @@ -1,6 +1,6 @@ package Devel::REPL::Plugin::DDS; -use Moose::Role; +use Devel::REPL::Plugin; use Data::Dump::Streamer (); around 'format_result' => sub { @@ -9,10 +9,14 @@ around 'format_result' => sub { my $to_dump = (@_ > 1) ? [@_] : $_[0]; my $out; if (ref $to_dump) { - my $dds = Data::Dump::Streamer->new; - $dds->Freezer(sub { "$_[0]"; }); - $dds->Data($to_dump); - $out = $dds->Out; + if (overload::Method($to_dump, '""')) { + $out = "$to_dump"; + } else { + my $dds = Data::Dump::Streamer->new; + $dds->Freezer(sub { "$_[0]"; }); + $dds->Data($to_dump); + $out = $dds->Out; + } } else { $out = $to_dump; }