NAME
Data::Type::Digger - digging types from data structures
SYNOPSIS
use Data::Type::Digger;
my $in_data = { ... };
my $out_data = dig( $in_data, do_scalar => { uc @_ } );
DESCRIPTION
dig helps you to deal with deep data structores.
METHODS
dig
Perform recursive digging required types from data structure
my $out_data = dig( $in_data, %params );
in_data = source structure, required
Params: # all param keys are optional
do_all => coderef, function called for all nodes
do_hash => coderef, function called for all hashref nodes
do_array => coderef, function called for all arrayref nodes
do_scalar => coderef, function called for all scalar nodes
do_type => coderef, function called for all nodes with ref = 'type'
unbless => 0 || 1, turn all blessed objects into simple hashrefs
clone => 1, make all actions on cloned structure and save the source data
max_deep => -1, int -1, undef (not limited) || int (limited to INT) depth of work
max_deep_cut => 0 || 1, save or cut the data deeper then max_deep
coderef
assumes two params:
node - value of current node
key - name or index of parent_node (if parent node ref is hash or array)
returns:
new value of node
SUPPORT AND DOCUMENTATION
After installing, you can find documentation for this module with the perldoc command.
perldoc Data::Type::Digger
You can also look for information at:
RT, CPAN's request tracker (report bugs here)
http://rt.cpan.org/NoAuth/Bugs.html?Dist=Data-Type-Digger
AnnoCPAN, Annotated CPAN documentation
http://annocpan.org/dist/Data-Type-Digger
CPAN Ratings
http://cpanratings.perl.org/d/Data-Type-Digger
Search CPAN
http://search.cpan.org/dist/Data-Type-Digger/
AUTHOR
<rolidk@yandex.ua>
LICENSE
This program is free software; you can redistribute it and/or modify it
under the terms of the the Artistic License (2.0). You may obtain a
copy of the full license at:
L<http://www.perlfoundation.org/artistic_license_2_0>
FUNCTIONS
dig($data, %param)
initialization of digging
_dig($data, $up_key)
Working with current node and make recursive call for all subnodes