Data::Printerが助けてくれます! オブジェクト ダンプは人間が読める形式になっています。
my $obj = SomeClass->new;
p($obj);
# produces:
\ SomeClass {
Parents Moose::Object
Linear @ISA SomeClass, Moose::Object
public methods (3) : bar, foo, meta
private methods (0)
internals: {
_something => 42,
}
}
テンプレート ツールキットと互換性があります。
[% USE DataPrinter %]
html-formatted, colored dump of the same data structure:
[% DataPrinter.dump_html( myvar ) %]
また、DBIx::Class の処理方法も「認識」しています。
use Data::Printer
filters => {
-external => [qw[DB]], # use DB filter
}, class => {
expand => 2, # traverse object 2-levels deep
linear_isa => 0, # hide not-so-relevant information
};
...
my $obj = $schema
->resultset('AddressState')
->search({}, { prefetch => [qw[country]] })
->single;
p $obj;