=head1 NAME
OODoc::Object - base class for all OODoc classes.
=head1 SYNOPSIS
# Never instantiated directly.
=head1 DESCRIPTION
Any object used in the OODoc module is derived from this OODoc::Object
class. This means that all functionality in this class is provided
for all of the other classes.
=head1 OVERLOADED
=head1 METHODS
=head2 Constructors
OODoc::Object-E<gt>B<new>(OPTIONS)
=over 4
Create a new object (instantiation). All objects in OODoc are created
the same way: they carry a list of key-value pairs as option. For
examples, see the description of this method in the manual page of
the specific object.
The validity of the options for C<new> is checked, in contrary to the
options when used with many other method defined by OODoc.
=back
=head2 Inheritance knowledge
$obj-E<gt>B<extends>([OBJECT])
=over 4
Close to all elements used within OODoc can have an inheritance relation.
The returned object is extended by the current object. Multiple inheritance
is not supported here.
=back
=head2 Commonly used functions
$obj-E<gt>B<filenameToPackage>(FILENAME)
OODoc::Object-E<gt>B<filenameToPackage>(FILENAME)
=over 4
I<Example:>
print $self->filenameToPackage('Mail/Box.pm'); # prints Mail::Box
=back
$obj-E<gt>B<mkdirhier>(DIRECTORY)
OODoc::Object-E<gt>B<mkdirhier>(DIRECTORY)
=over 4
Creates this DIRECTORY and all its non-existing parents.
=back
=head2 Manual Repository
All manuals can be reached everywhere in the program: it is a global
collection.
$obj-E<gt>B<addManual>(MANUAL)
=over 4
The MANUAL will be added to the list of known manuals. The same package
name can appear in more than one manual. This OBJECT shall be of type
L<OODoc::Manual|OODoc::Manual>.
=back
$obj-E<gt>B<mainManual>(NAME)
=over 4
Returns the manual of the named package which contains the primar
documentation for the code of the package NAME.
=back
$obj-E<gt>B<manual>(NAME)
=over 4
Returns the manual with the specified name, or else C<undef>.
=back
$obj-E<gt>B<manuals>
=over 4
All manuals are returned.
=back
$obj-E<gt>B<manualsForPackage>(NAME)
=over 4
Returns a list package objects which are related to the specified NAME.
One NAME can appear in more than one file, and therefore a list is
returned.
=back
$obj-E<gt>B<packageNames>
=over 4
Returns the names of all defined packages.
=back
=head1 DIAGNOSTICS
I<Warning:> Unknown option $name
You have used the option with $name, which is not defined with the
instantiation (the C<new> method) of this object.
I<Warning:> Unknown options @names
You have used more than one option which is not defined to instantiate
the object.
I<Error:> manual definition requires manual object
A call to L<addManual()|OODoc::Object/"Manual Repository"> expects a new manual object (a L<OODoc::Manual|OODoc::Manual>),
however an incompatible thing was passed. Usually, intended was a call
to L<manualsForPackage()|OODoc::Object/"Manual Repository"> or L<mainManual()|OODoc::Object/"Manual Repository">.
=head1 SEE ALSO
This module is part of OODoc distribution version 0.98,
built on December 19, 2006. Website: F<http://perl.overmeer.net/oodoc/>
=head1 LICENSE
Copyrights 2003-2006 by Mark Overmeer. For contributors see ChangeLog.
This program is free software; you can redistribute it and/or modify it
under the same terms as Perl itself.