well yes, I currently use JSON to do a similar recursive directory list output, where I don't need to retain the order of the pages:
use strict; use warnings; use JSON; sub rec_tree { my $n = $_[0] = {}; my @s; find( sub { $n = (pop @s)->[1] while @s and $File::Find::dir ne $s[-1][0]; return $n->{$_} = data_me($_) if -f; /$bandir/ and $File::Find::prune = 1; /$hidedir/ and $File::Find::prune = 1; push @s,[ $File::Find::name,$n ]; $n = $n->{$_} = {}; }, $_[1]); $_[0]{$_[1]} = delete $_[0]{'.'}; } my $out; rec_tree($out,shift); my $jsout = JSON->new->allow_nonref->encode($out);
but as I mentioned, a similar recursive approach to parsing the @path data above defeats me, hence the hard coding, which at least retains the correct order in the output..
In reply to Re^2: recursive alternative for nested array to JSON script?
by davepilbeam
in thread recursive alternative for nested array to JSON script?
by davepilbeam
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |