The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

Data::Dumper::Table - A more tabular way to Dumper your Data

VERSION

Version 0.012

SYNOPSIS

use Data::Dumper::Table;

my $x = [qw(one two three)];

say Tabulate [
    { foo => $x, bar => 2 },
    { foo => 3, bar => { apple => q(or'ange) } },
    $x,
    [
        { bar => q(baz), flibble => q(quux), flobble => undef() },
        { bar => q(baz2), flobble => qr/foo/ }
    ]
];

ARRAY(1) [0] HASH(2)
             -----------------------------
             'bar' => '2'
             'foo' => ARRAY(3) [0] 'one'
                               [1] 'two'
                               [2] 'three'
         [1] HASH(4)
             ------------------------------
             'bar' => HASH(5)
                      ---------------------
                      'apple' => 'or\'ange'
             'foo' => '3'
         [2] -> ARRAY(3)
         [3] ARRAY<HASH>(6)
              'bar'  | 'flibble' | 'flobble'
             --------+-----------+-------------
              'baz'  | 'quux'    | undef()
              'baz2' | -         | /(?^u:foo)/

DESCRIPTION

The goal of Data::Dumper::Table is to provide a more-tabular alternative to Data::Dumper.

EXPORTED FUNCTIONS

Tabulate DATA

Turn the provided DATA into a (hopefully) nicely-formatted table. More verbose and space-hungry than Data::Dumper, but possibly easier to read.

CAVEATS

This is Alpha software

This module is explicitly alpha-quality software. If you successfully use it in production, you're a braver being than I am. See also the TODO list for things that are known not to be handled well.

TODO

Sortkeys

Replicate $Data::Dumper::Sortkeys

Deparse

Replicate $Data::Dumper::Deparse

Filehandles and other weird globs

Handle them, somehow

Tied data

Handle it, somehow. Be especially wary of stuff tied to databases, files, and other not-supposed-to-be-dumped things

Data::Dumper::Table::HTML

Should be a SMOP once this thing's in the air properly ;-)

LICENSE

Artistic 2.0