sub Dumper {
my $dd = Data::Dumper->new([]);
$dd->Terse(1)->Indent(1)->Useqq(1)->Deparse(1)->Quotekeys(0)->Sortkeys(1);
- return $dd unless @_;
return $dd->Values([ @_ ])->Dump;
}
warn Dumper($var);
}
-whereas
-
- my $dd = Dumper;
-
-is equivalent to:
-
- my $dd = Data::Dumper->new([])
- ->Terse(1)
- ->Indent(1)
- ->Useqq(1)
- ->Deparse(1)
- ->Quotekeys(0)
- ->Sortkeys(1);
-
So for the structure:
{ foo => "bar\nbaz", quux => sub { "fleem" } };
=head1 DESCRIPTION
This module always exports a single function, Dumper, which can be called
-with an array of values to dump those values or with no arguments to
-return the Data::Dumper object it's created. Note that this means that
-
- Dumper @list
-
-will probably not do what you wanted when @list is empty. In this case use
-
- Dumper \@list
-
-instead.
+with an array of values to dump those values.
It exists, fundamentally, as a convenient way to reproduce a set of Dumper
options that we've found ourselves using across large numbers of applications,
=head1 COPYRIGHT
-Copyright (c) 2009 the Data::Dumper::Concise L</AUTHOR> and L</CONTRIBUTORS>
+Copyright (c) 2010 the Data::Dumper::Concise L</AUTHOR> and L</CONTRIBUTORS>
as listed above.
=head1 LICENSE
->Quotekeys(0)
->Sortkeys(1);
-my $dd_c = Dumper;
-
foreach my $to_dump (
[ { foo => "bar\nbaz", quux => sub { "fleem" } } ],
[ 'one', 'two' ]
) {
- $dd_c->Values([ @$to_dump ]);
$dd->Values([ @$to_dump ]);
-
+
my $example = do {
local $Data::Dumper::Terse = 1;
local $Data::Dumper::Indent = 1;
local $Data::Dumper::Sortkeys = 1;
Data::Dumper::Dumper(@$to_dump);
};
-
+
is($example, $dd->Dump, 'Both Data::Dumper usages equivalent');
-
- is($example, $dd_c->Dump, 'Returned object usage equivalent');
-
+
is($example, Dumper(@$to_dump), 'Subroutine call usage equivalent');
}