Module::Build::ModuleInfo(3p)

NAME
Module::Build::ModuleInfo - Gather package and POD information from a perl module file

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.

AUTHOR
Ken Williams <kwilliams@cpan.org>, Randy W. Sims <RandyS@ThePierianSpring.org>

COPYRIGHT
Copyright (c) 2001-2006 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.

SEE ALSO
perl(1), Module::Build(3)