a colorful? data dumper for perl6
Perl6
Switch branches/tags
Nothing to show
Latest commit 794dae4 Apr 13, 2017 @tony-o committed on GitHub Merge pull request #26 from zoffixznet/patch-1
Bump version
Permalink
Failed to load latest commit information.
lib/Data Avoid use of removed method Apr 11, 2017
t fix method call from PR not passing :$color Feb 4, 2017
.gitignore update for issue #7 Jan 12, 2016
.travis.yml travis Feb 4, 2017
META6.json Bump version Apr 12, 2017
README.md adding travis tag - Feb 7, 2017

README.md

Data::Dump

Build Status

for perl6

that's right folks, here's a quicky for your data dump needs. if you have Terminal::ANSIColor installed then the output will be so colorful your eyes might bleed.

feel free to submit bugs or make suggestions, if you submit a bug please provide a concise example that replicates the problem and i'll add some tests and make this thing better.

options

indent

default: 2

<...>
say Dump({ some => object }, :indent(4));
<...>

max-recursion

default: 50

<...>
say Dump({ some => object }, :max-recursion(3));
<...>

color

default: True

This will override the default decision to use color on the output if Terminal::ANSIColor is installed. Passing a value of False will ensure that the output is vanilla.

<...>
say Dump({ some => object }, :color(False));
<...>

gist

default: False

This will override the default object determination and output and use the output of .gist

<...>
say Dump({ some => object}, :gist);
<...>

skip-methods

default: False

This will skip the methods if you dump custom classes.

<...>
say Dump($object, :skip-methods(True));
<...>

usage

use Data::Dump;

say Dump(%( 
  key1 => 'value1',
  key256 => 1,
));

output:

{
  key1   => "value1".Str,
  key256 => 1.Int,
}

note: if you have Terminal::ANSIColor installed then it's going to be amazing. so, prepare yourself.

oh you want to Dump your custom class?

here you go, dude

use Data::Dump;

class E {
  has $.public;
  has Int $!private = 5;
  method r(Str $a) { };
  method s($b, :$named? = 5) { };
  method e returns Int { say $!private; };
};

say Dump(E.new);

output:

E :: (
  $!private => 5.Int,
  $!public  => (Any),

  method e () returns Int {...},
  method public () returns Mu {...},
  method r (Str $a) returns Mu {...},
  method s (Any $b, Any :named($named) = 5) returns Mu {...},
)