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
METHODS
overload: @{}
Referencing this object as array will produce all filenames from the manifest.
$obj->add(FILENAMES)
Adds the FILENAMES to the manifest, doubles are ignored.
$obj->filename
The name of the file which is read or will be written.
$obj->files
Returns an unsorted list with all filenames in this manifest.
$obj->modified([BOOLEAN])
Whether filenames have been added to the list after initiation.
$obj->read
Read the manifest file.
$obj->write
Write the MANIFEST file if it has changed. The file will automatically be written when the object leaves scope.
Initiation
OODoc::Manifest->new(OPTIONS)
Inheritance
$obj->extends([OBJECT])
Commonly used functions
$obj->filenameToPackage(FILENAME)
OODoc::Manifest->filenameToPackage(FILENAME)
$obj->mergeObjects(OPTIONS)
$obj->mkdirhier(DIRECTORY)
OODoc::Manifest->mkdirhier(DIRECTORY)
$obj->unique
Manual database
All manuals can be reached everywhere in the program: it is a global collection.
$obj->addManual(MANUAL)
$obj->mainManual(NAME)
$obj->manuals
$obj->manualsForPackage(NAME)
$obj->packageNames
DIAGNOSTICS
Error: Cannot read manifest file $filename: $!
The manifest file could not be opened for reading.
Error: manual definition requires manual object
A call to addManual() expects a new manual object (a OODoc::Manual), however an incompatible thing was passed. Usually, intended was a call to manualsForPackage() or mainManual().
Warning: order conflict "$take" before "$insert" in $file line $number
The order of the objects in a sub-class shall be the same as that of the super class, otherwise the result of merging of the information received from both classes is undertermined.