ppix::utilities::node(3) centos man page | unix.com

Man Page: ppix::utilities::node

Operating Environment: centos

Section: 3

PPIx::Utilities::Node(3)				User Contributed Perl Documentation				  PPIx::Utilities::Node(3)

NAME
PPIx::Utilities::Node - Extensions to PPI::Node.
VERSION
This document describes PPIx::Utilities::Node version 1.1.0.
SYNOPSIS
use PPIx::Utilities::Node qw< split_ppi_node_by_namespace >; my $dom = PPI::Document->new("..."); while ( my ($namespace, $sub_doms) = each split_ppi_node_by_namespace($dom) ) { foreach my $sub_dom ( @{$sub_doms} ) { ... } }
DESCRIPTION
This is a collection of functions for dealing with PPI::Nodes.
INTERFACE
Nothing is exported by default. split_ppi_node_by_namespace($node) Returns the sub-trees for each namespace in the node as a reference to a hash of references to arrays of PPI::Nodes. Say we've got the following code: #!perl my $x = blah(); package Foo; my $y = blah_blah(); { say 'Whee!'; package Bar; something(); } thingy(); package Baz; da_da_da(); package Foo; foreach ( blrfl() ) { ... } Calling this function on a PPI::Document for the above returns a value that looks like this, using multi-line string literals for the actual code parts instead of PPI trees to make this easier to read: { main => [ q< #!perl my $x = blah(); >, ], Foo => [ q< package Foo; my $y = blah_blah(); { say 'Whee!'; } thingy(); >, q< package Foo; foreach ( blrfl() ) { ... } >, ], Bar => [ q< package Bar; something(); >, ], Baz => [ q< package Baz; da_da_da(); >, ], } Note that the return value contains copies of the original nodes, and not the original nodes themselves due to the need to handle namespaces that are not file-scoped. (Notice how the first element for "Foo" above differs from the original code.)
BUGS AND LIMITATIONS
Please report any bugs or feature requests to "bug-ppix-utilities@rt.cpan.org", or through the web interface at <http://rt.cpan.org>.
AUTHOR
Elliot Shank "<perl@galumph.com>"
COPYRIGHT
Copyright (c)2009-2010, Elliot Shank "<perl@galumph.com>". This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. The full text of this license can be found in the LICENSE file included with this module. perl v5.16.3 2010-12-02 PPIx::Utilities::Node(3)
Related Man Pages
ppix::regexp::token::interpolation(3) - centos
perl::critic::document(3) - centos
perl::critic::policy::modules::requirefilenamematchespackage(3) - centos
ppi::statement::package(3pm) - debian
perl::critic::document(3pm) - debian
Similar Topics in the Unix Linux Community
Weird 'find' results
Set hard block limit for user using quota
Best performance UNIX just for HOST Virtualization?
DB2 convert digits to binary format
Shopt -s histappend