NAME

OODoc::Manifest - maintain the information inside a manifest file.

INHERITANCE

OODoc::Manifest
  is a OODoc::Object

SYNOPSIS

my $manifest = OODoc::Manifest->new(filename => ...);

DESCRIPTION

OVERLOADED

overload: @{}

    Referencing this object as array will produce all filenames from the manifest.

METHODS

Constructors

OODoc::Manifest->new(OPTIONS)

    Option  --Default
    filename  undef

    . filename => FILENAME

      The filename where the manifest is in. When the name is not defined, the data will not be written.

Inheritance knowledge

$obj->extends([OBJECT])

Attributes

$obj->filename

    The name of the file which is read or will be written.

The manifest list

$obj->add(FILENAMES)

    Adds the FILENAMES to the manifest, doubles are ignored.

$obj->files

    Returns an unsorted list with all filenames in this manifest.

Internals

$obj->modified([BOOLEAN])

    Whether filenames have been added to the list after initiation.

$obj->read

    Read the MANIFEST file. The comments are stripped from the lines.

$obj->relative(FILENAME)

    Returns the name of the file relative to the location of the MANIFEST file. The MANIFEST file should always be in top of the directory tree, so the FILENAME should be in the same directory and below.

$obj->write

    Write the MANIFEST file if it has changed. The file will automatically be written when the object leaves scope.

Commonly used functions

$obj->filenameToPackage(FILENAME)

OODoc::Manifest->filenameToPackage(FILENAME)

$obj->mkdirhier(DIRECTORY)

OODoc::Manifest->mkdirhier(DIRECTORY)

Manual Repository

$obj->addManual(MANUAL)

$obj->mainManual(NAME)

$obj->manual(NAME)

$obj->manuals

$obj->manualsForPackage(NAME)

$obj->packageNames

DIAGNOSTICS

Error: Cannot read manifest file $filename: $!

    The manifest file could not be opened for reading.

Warning: MANIFEST file $name lists filename outside (sub)directory: $file

    The MANIFEST file of a distributed package should be located in the top directory of that packages. All files of the distribution are in that same directory, or one of its sub-directories, otherwise they will not be packaged.

Error: manual definition requires manual object

SEE ALSO

This module is part of OODoc distribution version 1.02, built on November 09, 2007. Website: http://perl.overmeer.net/oodoc/

LICENSE

Copyrights 2003-2007 by Mark Overmeer. For other contributors see ChangeLog.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See http://www.perl.com/perl/misc/Artistic.html