Provided by: perl-doc_5.14.2-6ubuntu2_all bug

NAME

       Module::Metadata - Gather package and POD information from perl module files

DESCRIPTION

       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.

           Can be called as either an object or a class method.

       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.

           Can be called as either an object or a class method.

       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.