#!/usr/bin/perl --
use strict; use warnings;
my $foops = {
"xmlout.xml" => {
"/panoply/classes" => [
"\n \n \n ",
"\n ",
],
"/panoply/files" => [
"\n ",
"\n ",
],
"/panoply/namespaces" => [
"\n ",
],
},
};
print $foops, "\n";
print $foops->{"xmlout.xml"}, "\n";
print $foops->{"xmlout.xml"}{"/panoply/classes"}, "\n";
print $foops->{"xmlout.xml"}{"/panoply/classes"}[0], "\n";
print $foops->{"xmlout.xml"}{"/panoply/classes"}[1], "\n\n";
use Data::Diver qw( Dive );
my $classes = Dive( $foops, "xmlout.xml", "/panoply/classes" );
print $classes, "\n";
print scalar @{$classes}, "\n";
print @{$classes}, "\n\n";
while( my( $filename, $datahash ) = each %$foops ){
print "$filename => $datahash\n";
while( my( $branchname, $brancharray ) = each %$datahash ){
printf "%-20s => n(%3d) => %s\n",
$branchname, scalar(@$brancharray), $brancharray;
}
}
__END__
HASH(0x9ad1bc)
HASH(0x99a36c)
ARRAY(0x3f8a8c)
ARRAY(0x3f8a8c)
2
xmlout.xml => HASH(0x99a36c)
/panoply/namespaces => n( 1) => ARRAY(0x99a2fc)
/panoply/files => n( 2) => ARRAY(0x99a26c)
/panoply/classes => n( 2) => ARRAY(0x3f8a8c)