Changes for version 0.819
- Many parts of PPI are VASTLY changed in this revision
- Breaks API compatibility heavily
- Adds dependency on List::MoreUtils
- Added PPI::Lexer support for CHECK blocks
- Added PPI::Document::load method
- Added PPI::Document::save method
- Added PPI::Document::index_locations method
- Added PPI::Document::flush_locations method
- Added PPI::Element::top method
- Added PPI::Element::document method
- Renamed PPI::Element::extract -> PPI::Element::remove
- Added test script for element-y stuff
- Optimisation across the board using List::Any
- Added PPI::Node::first_child method
- Added PPI::Node::last_child method
- Added PPI::Element::clone method
- Removed Filehandle support from PPI::Tokenizer, to allow the ability to rollback source lines into the buffer if needed.
- Added POD documentation for PPI::Element
- Added POD documentation for PPI::Node
- Added POD documentation for PPI::Document
Documentation
Modules
- PPI - Parse and manipulate Perl code non-destructively, without using perl itself
- PPI::Document - A single cohesive Perl document
- PPI::Element - The abstract Element class, a base for all source objects
- PPI::Lexer - The PPI Lexer
- PPI::Node - Abstract PPI Node class, an Element that can contain other Elements
- AppLib::HTML
- AppLib::HTML::Form
Provides
- AppLib::CGI in sample/syntax/AppLib/CGI.pm
- AppLib::Error in sample/syntax/AppLib/Error.pm
- AppLib::Page in sample/syntax/AppLib/Page.pm
- AppLib::PageFactory in sample/syntax/AppLib/PageFactory.pm
- AppLib::Parser in sample/syntax/AppLib/Parser.pm
- PPI::Base in lib/PPI/Base.pm
- PPI::Format::HTML in lib/PPI/Format/HTML.pm
- PPI::Lexer::Dump in lib/PPI/Lexer/Dump.pm
- PPI::Statement in lib/PPI/Statement.pm
- PPI::Statement::Break in lib/PPI/Statement.pm
- PPI::Statement::Compound in lib/PPI/Statement.pm
- PPI::Statement::Expression in lib/PPI/Statement.pm
- PPI::Statement::Include in lib/PPI/Statement.pm
- PPI::Statement::Null in lib/PPI/Statement.pm
- PPI::Statement::Package in lib/PPI/Statement.pm
- PPI::Statement::Scheduled in lib/PPI/Statement.pm
- PPI::Statement::Sub in lib/PPI/Statement.pm
- PPI::Statement::Unknown in lib/PPI/Statement.pm
- PPI::Statement::Variable in lib/PPI/Statement.pm
- PPI::Structure in lib/PPI/Structure.pm
- PPI::Structure::Block in lib/PPI/Structure.pm
- PPI::Structure::Condition in lib/PPI/Structure.pm
- PPI::Structure::Constructor in lib/PPI/Structure.pm
- PPI::Structure::ForLoop in lib/PPI/Structure.pm
- PPI::Structure::List in lib/PPI/Structure.pm
- PPI::Structure::Subscript in lib/PPI/Structure.pm
- PPI::Structure::Unknown in lib/PPI/Structure.pm
- PPI::Token in lib/PPI/Token.pm
- PPI::Token::ArrayIndex in lib/PPI/Token/Classes.pm
- PPI::Token::Attribute in lib/PPI/Token/Classes.pm
- PPI::Token::Bareword in lib/PPI/Token/Classes.pm
- PPI::Token::Cast in lib/PPI/Token/Classes.pm
- PPI::Token::Comment in lib/PPI/Token/Classes.pm
- PPI::Token::DashedBareword in lib/PPI/Token/Classes.pm
- PPI::Token::Data in lib/PPI/Token/Classes.pm
- PPI::Token::End in lib/PPI/Token/Classes.pm
- PPI::Token::Label in lib/PPI/Token/Classes.pm
- PPI::Token::Magic in lib/PPI/Token/Classes.pm
- PPI::Token::Number in lib/PPI/Token/Classes.pm
- PPI::Token::Operator in lib/PPI/Token/Classes.pm
- PPI::Token::Pod in lib/PPI/Token/Classes.pm
- PPI::Token::Quote in lib/PPI/Token/Quote.pm
- PPI::Token::Quote::Double in lib/PPI/Token/Classes.pm
- PPI::Token::Quote::Execute in lib/PPI/Token/Classes.pm
- PPI::Token::Quote::Full in lib/PPI/Token/Quote/Full.pm
- PPI::Token::Quote::OperatorDouble in lib/PPI/Token/Classes.pm
- PPI::Token::Quote::OperatorExecute in lib/PPI/Token/Classes.pm
- PPI::Token::Quote::OperatorSingle in lib/PPI/Token/Classes.pm
- PPI::Token::Quote::Regex in lib/PPI/Token/Classes.pm
- PPI::Token::Quote::Simple in lib/PPI/Token/Quote/Simple.pm
- PPI::Token::Quote::Single in lib/PPI/Token/Classes.pm
- PPI::Token::Quote::Words in lib/PPI/Token/Classes.pm
- PPI::Token::RawInput::Operator in lib/PPI/Token/Classes.pm
- PPI::Token::RawInput::String in lib/PPI/Token/Classes.pm
- PPI::Token::RawInput::Terminator in lib/PPI/Token/Classes.pm
- PPI::Token::Regex::Match in lib/PPI/Token/Classes.pm
- PPI::Token::Regex::Pattern in lib/PPI/Token/Classes.pm
- PPI::Token::Regex::Replace in lib/PPI/Token/Classes.pm
- PPI::Token::Regex::Transform in lib/PPI/Token/Classes.pm
- PPI::Token::Structure in lib/PPI/Token/Classes.pm
- PPI::Token::SubPrototype in lib/PPI/Token/Classes.pm
- PPI::Token::Symbol in lib/PPI/Token/Classes.pm
- PPI::Token::Unknown in lib/PPI/Token/Unknown.pm
- PPI::Token::Whitespace in lib/PPI/Token/Classes.pm
- PPI::Token::_Pod in lib/PPI/Token/_Pod.pm
- PPI::Tokenizer in lib/PPI/Tokenizer.pm
- PPI::Tokenizer::Quote::Full in lib/PPI/Tokenizer/Quote/Full.pm
- PPI::Tokenizer::Quote::Simple in lib/PPI/Tokenizer/Quote/Simple.pm