Manual Reference Pages - PPI::TOKEN::WHITESPACE (3)
PPI::Token::Whitespace - Tokens representing ordinary white space
As a full round-trip parser, PPI records every last byte in a
file and ensure that it is included in the PPI::Document object.
This even includes whitespace. In fact, Perl documents are seen
as floating in a sea of whitespace, and thus any document will
contain vast quantities of PPI::Token::Whitespace objects.
For the most part, you shouldnt notice them. Or at least, you
shouldnt <B>haveB> to notice them.
This means doing things like consistently using the S for significant
series of PPI::Node and PPI::Element methods to do things.
If you want the nth child element, you should be using schild rather
than child, and likewise snext_sibling, sprevious_sibling, and
so on and so forth.
Again, for the most part you should really <B>notB> need to do anything
very significant with whitespace.
But there are a couple of convenience methods provided, beyond those
provided by the parent PPI::Token and PPI::Element classes.
Because PPI sees documents as sitting on a sort of substrate made of
whitespace, there are a couple of corner cases that get particularly
nasty if they dont find whitespace in certain places.
Imagine walking down the beach to go into the ocean, and then quite
unexpectedly falling off the side of the planet. Well its somewhat
equivalent to that, including the whole screaming death bit.
The null method is a convenience provided to get some internals
out of some of these corner cases.
Specifically it create a whitespace token that represents nothing,
or at least the null string . Its a handy way to have some
whitespace right where you need it, without having to have any
tidy is a convenience method for removing unneeded whitespace.
Specifically, it removes any whitespace from the end of a line.
Note that this <B>doesntB> include POD, where you may well need
to keep certain types of whitespace. The entire POD chunk lives
in its own PPI::Token::Pod object.
See the support section in the main module.
Adam Kennedy <firstname.lastname@example.org>
Copyright 2001 - 2011 Adam Kennedy.
This program is free software; you can redistribute
it and/or modify it under the same terms as Perl itself.
The full text of the license can be found in the
LICENSE file included with this module.
|perl v5.20.3 ||PPI::TOKEN::WHITESPACE (3) ||2014-11-11 |
Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.