NAME
Devel::PerlySense::Document::Meta - Document information generated during a parse
PROPERTIES
raPackage
Package declarations.
Array ref with cloned PPI::Statement::Package objects.
Default: []
raNameModuleUse
Array ref with module names that are "use"d.
Default: []
raNameModuleBase
Array ref with module names that are base classes.
Default: []
rhRowColModule
Module names.
Hash ref with (keys: row, values: hash ref with (keys: col, values: hash with keys: oNode => cloned PPI::Node objects module => module name string ) ) )
rhRowColModule->{43}->{2}-> node
Default: {}
rhRowColMethod
Method calls.
Hash ref with (keys: row, values: hash ref with (keys: col, values: { oNode => cloned PPI::Node object, oNodePrev => node to the left of the -> } ) )
rhRowColModule->{43}->{2}-> node
Default: {}
raLocationPod
POD blocks.
Array ref with Location objects, representing each pod chunk that is a heading/item. They have the following properties:
podSection
pod
Default: []
raLocationSub
sub definition.
Array ref with Location objects, representing each sub declaration. They have the following properties:
nameSub
source
namePackage
oLocationEnd
Default: []
aPluginSyntax
Array ref with Devel::PerlySense::Plugin::Syntax objects.
Return whatever plugins under Devel::PerlySense::Plugin::Syntax::* are found.
Readonly.
API METHODS
new() Create new empty Meta object
parse($oDocument)
Parse the Devel::PerlySense::Document and extract metadata. Fill appropriate data structures.
Return 1 or die on errors.
moduleAt(row => $row, col => $col)
Find the module mentioned on line $row (1..) at $col (1..).
Return string like "My::Module" or "Module", or undef if none was found.
rhMethodAt(row => $row, col => $col)
Find the module mentioned on line $row (1..) at $col (1..).
Return hash ref with { oNode, oNodeObject } or undef if none was found.
rhTokenOfAt($rhRowCol, $row, $col)
Find the token mentioned in $rhRowCol on line $row (1..) at $col (1..).
Return hash ref with keys oNode and possibly oNodeObject, or undef if none was found.
parsePod($oDocument, $oNode, $raLocationPod, $raPodHeadingCurrent)
Parse $oNode and add one or more Location objects to $raLocationPod.
Add pod chunks that are =head or =item. Prefix the pod chunks with their immediate pod heading level.
Return 1 on success, die on errors.
oLocationSub($oDocument, $oNode, $nameSub, $packageCurrent)
Create a Document::Location object from the sub $nameSub consisting of $oNode, found in $oDocument in $packageCurrent.
Set appropriate Location->rhProperty keys:
nameSub
source
namePackage
oLocationEnd
Return the new Location object.
AUTHOR
Johan Lindstr�m, <johanl[�T]DarSerMan.com>
BUGS
Please report any bugs or feature requests to bug-devel-perlysense@rt.cpan.org
, or through the web interface at http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Devel-PerlySense. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.
ACKNOWLEDGEMENTS
COPYRIGHT & LICENSE
Copyright 2005 Johan Lindstr�m, All Rights Reserved.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.