Data::TreeDumper::OO - Object oriented interface to Data::TreeDumper


SYNOPSIS

  use Data::TreeDumper ;
  use Data::TreeDumper::OO ;

  my $sub = sub {} ;

  my $s = 
  {
  A => 
        {
        a => 
                {
                }
        , bbbbbb => $sub
        , c123 => $sub
        , d => \$sub
        }

  , C =>
        {
        b =>
                {
                a => 
                        {
                        a => 
                                {
                                }

                        , b => sub
                                {
                                }
                        , c => 42
                        }

                }
        }
  , ARRAY => [qw(elment_1 element_2 element_3)]
  } ;

  my $dumper = new Data::TreeDumper::OO() ;
  $dumper->UseAnsi(1) ;
  $dumper->SetMaxDepth(2) ;
  $dumper->SetFilter(\&Data::TreeDumper::HashKeysSorter) ;

  print $dumper->Dump($s, "Using OO interface") ;
  print $dumper->DumpMany
          (
            [$s, "title", MAX_DEPTH => 1]
          , [$s2, "other_title", DISPLAY_ADDRESS => 0]
          , USE_ASCII => 1
          , MAX_DEPTH => 5
          ) ;

=head1 Output
  title:
  |- A [H1]
  |  |- a [H2]
  |  |- bbbbbb = CODE(0x8139fa0) [C3]
  |  |- c123 [C4 -> C3]
  |  `- d [R5]
  |     `- REF(0x8139fb8) [R5 -> C3]
  |- ARRAY [A6]
  |  |- 0 [S7] = elment_1
  |  |- 1 [S8] = element_2
  |  `- 2 [S9] = element_3
  `- C [H10]
     `- b [H11]
        `- a [H12]
           |- a [H13]
           |- b = CODE(0x81ab130) [C14]
           `- c [S15] = 42

=head1 DESCRIPTION

Object oriented interface to Data::TreeDumper.

Object oriented Methods

  # constructor
  my $dumper = new Data::TreeDumper::OO(MAX_DEPTH => 1) ;

  $dumper->UseAnsi(1) ;
  $dumper->UseAscii(1) ;
  $dumper->SetMaxDepth(2) ;
  $dumper->SetIndentation('   ') ;
  $dumper->SetVirtualWidth(80) ;
  $dumper->SetFilter(\&Data::TreeDumper::HashKeysSorter) ;
  $dumper->SetLevelFilters({1 => \&Filter_1, 5 => \&Filter_5) ;
  $dumper->SetStartLevel(0) ;
  $dumper->QuoteHashKeys(1) ;
  $dumper->QuoteValues(0) ;
  $dumper->DisplayNoElements(1) ;
  $dumper->DisplayRootAddress(1) ;
  $dumper->DisplayAddress(0) ;
  $dumper->DisplayObjectType(0) ;
  $dumper->Displayinheritance(0) ;
  $dumper->DisplayAutoload(0) ;
  $dumper->DisplayTie(0) ;
  $dumper->DisplayPerlAddress(1) ;
  $dumper->DisplayPerlSize(0) ;
  $dumper->NumberLevels(2) ;
  $dumper->ColorLevels(\&ColorLevelSub) ;
  $dumper->SetGlyphs(['.  ', '.  ', '.  ', '.  ']) ;
  $dumper->NoOutput(1) ;
  $dumper->SetRenderer('DHTML') ;

  $dumper->Dump($s, "Using OO interface", %OVERRIDES) ;
  $dumper->DumpMany
            (
              [$s, "dump1", %OVERRIDES]
            , [$s, "dump2", %OVERRIDES]
            , %OVERRIDES
            ) ;

=head1 DEPENDENCY

Data::TreeDumper.


EXPORT

None.


AUTHOR

Khemir Nadim ibn Hamouda. <nadim@khemir.net>

  Copyright (c) 2003-2005 Nadim Ibn Hamouda el Khemir. All rights
  reserved.  This program is free software; you can redis-
  tribute it and/or modify it under the same terms as Perl
  itself.

If you find any value in this module, mail me!  All hints, tips, flames and wishes
are welcome at <nadim@khemir.net>.


SEE ALSO

Data::TreeDumper. Data::Dumper.

 Data::TreeDumper::OO - Object oriented interface to Data::TreeDumper