-
-
30 Aug 2019 08:12:04 UTC
- Distribution: Devel-PerlySense
- Module version: 0.0221
- Source (raw)
- Browse (raw)
- Changes
- How to Contribute
- Issues (5)
- Testers (86 / 100 / 0)
- Kwalitee
Bus factor: 1- % Coverage
- License: perl_5
- Activity
24 month- Tools
- Download (433.75KB)
- MetaCPAN Explorer
- Permissions
- Subscribe to distribution
- Permalinks
- This version
- Latest version
- Dependencies
- App::Ack
- Cache::Cache
- Cache::FileCache
- Carp
- Cwd
- Data::Dumper
- Digest::SHA
- Exporter
- File::Basename
- File::Find
- File::Find::Rule
- File::Path
- File::Slurp
- File::Spec::Functions
- File::chdir
- Getopt::Long
- Graph::Easy
- HTTP::Date
- IO::String
- List::AllUtils
- List::MoreUtils
- List::Util
- Module::Pluggable
- Module::Runtime
- Moo
- POSIX
- PPI
- PPI::Document
- PPI::Dumper
- Params::Util
- Path::Class
- Path::Tiny
- Perl::Critic
- Perl::Tidy
- Pod::Text
- Pod::Usage
- Spiffy
- Storable
- Sub::Exporter
- Text::Table
- Time::HiRes
- Tree::Parser
- YAML::Tiny
- base
- lib
- strict
- utf8
- warnings
- Reverse dependencies
- CPAN Testers List
- Dependency graph
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 Lindstrom,
<johanl@cpan.org>
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 Lindstrom, All Rights Reserved.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
Module Install Instructions
To install Devel::PerlySense, copy and paste the appropriate command in to your terminal.
cpanm Devel::PerlySense
perl -MCPAN -e shell install Devel::PerlySense
For more information on module installation, please visit the detailed CPAN module installation guide.