table of contents
other versions
- wheezy 5.14.2-21+deb7u3
- jessie 5.20.2-3+deb8u6
- testing 5.24.1-3
- unstable 5.24.1-3
- experimental 5.26.0-1
other sections
Module::Metadata(3perl) | Perl Programmers Reference Guide | Module::Metadata(3perl) |
NAME¶
Module::Metadata - Gather package and POD information from perl module filesDESCRIPTION¶
- new_from_file($filename, collect_pod => 1)
- Construct a "ModuleInfo" object given the path to a file. Takes an optional argument "collect_pod" which is a boolean that determines whether POD data is collected and stored for reference. POD data is not collected by default. POD headings are always collected.
- new_from_module($module, collect_pod => 1, inc => \@dirs)
- Construct a "ModuleInfo" object given a module or package name. In addition to accepting the "collect_pod" argument as described above, this method accepts a "inc" argument which is a reference to an array of of directories to search for the module. If none are given, the default is @INC.
- name()
- Returns the name of the package represented by this module. If there are more than one packages, it makes a best guess based on the filename. If it's a script (i.e. not a *.pm) the package name is 'main'.
- version($package)
- Returns the version as defined by the $VERSION variable for the package as returned by the "name" method if no arguments are given. If given the name of a package it will attempt to return the version of that package if it is specified in the file.
- filename()
- Returns the absolute path to the file.
- packages_inside()
- Returns a list of packages.
- pod_inside()
- Returns a list of POD sections.
- contains_pod()
- Returns true if there is any POD in the file.
- pod($section)
- Returns the POD data in the given section.
- find_module_by_name($module, \@dirs)
- Returns the path to a module given the module or package
name. A list of directories can be passed in as an optional parameter,
otherwise @INC is searched.
- find_module_dir_by_name($module, \@dirs)
- Returns the entry in @dirs (or @INC by default) that
contains the module $module. A list of directories can be passed in as an
optional parameter, otherwise @INC is searched.
- package_versions_from_directory($dir, \@files?)
- Scans $dir for .pm files (unless @files is given, in which
case looks for those files in $dir - and reads each file for packages and
versions, returning a hashref of the form:
{ 'Package::Name' => { version => '0.123', file => 'Package/Name.pm' }, 'OtherPackage::Name' => ... }
- log_info (internal)
- Used internally to perform logging; imported from Log::Contextual if Log::Contextual has already been loaded, otherwise simply calls warn.
AUTHOR¶
Ken Williams <kwilliams@cpan.org>, Randy W. Sims <RandyS@ThePierianSpring.org> Released as Module::Metadata by Matt S Trout (mst) <mst@shadowcat.co.uk> with assistance from David Golden (xdg) <dagolden@cpan.org>COPYRIGHT¶
Copyright (c) 2001-2011 Ken Williams. All rights reserved. This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.2011-09-26 | perl v5.14.2 |