Mark Overmeer > OODoc > OODoc::Parser

Download:
OODoc-2.00.tar.gz

Dependencies

Annotate this POD

CPAN RT

Open  1
View/Report Bugs
Module Version: 2.00   Source  

NAME ^

OODoc::Parser - base class for all OODoc parsers.

INHERITANCE ^

 OODoc::Parser
   is a OODoc::Object

 OODoc::Parser is extended by
   OODoc::Parser::Markov

SYNOPSIS ^

 # Never instantiated directly.

DESCRIPTION ^

A parser is used to process files which contain POD or contain code: their filename extension is pod, pm, or pl (actually, this can be configured).

Currently distributed parsers:

METHODS ^

Constructors

OODoc::Parser->new(OPTIONS)
 -Option    --Default
  skip_links  undef
skip_links => ARRAY|REGEXP|STRING

The parser should not attempt to load modules which match the REGEXP or are equal or sub-namespace of STRING. More than one of these can be passed in an ARRAY.

Inheritance knowledge

$obj->extends([OBJECT])

See "Inheritance knowledge" in OODoc::Object

Parsing a file

$obj->parse(OPTIONS)

Parse the specified input file into a code file and an object tree which describes the pod. Returned is a list of package objects which contain the docs found in this file.

 -Option--Default
  input   <required>
  output  <black hole>
input => FILENAME

The name of the input file.

output => FILENAME

Where to write the produced code to. If no filename is specified, the platform dependend black hole is used (/dev/null on UNIX).

Formatting text pieces

After the manuals have been parsed into objects, the information can be formatted in various ways, for instance into POD and HTML. However, the parsing is not yet complete: the structure has been decomposed with parse(), but the text blocks not yet. This is because the transformations which are needed are context dependent. For each text section cleanup() is called for the final touch.

$obj->cleanup(FORMATTER, MANUAL, STRING)
$obj->skipManualLink(PACKAGE)

Returns true is the PACKAGE name matches one of the links to be skipped, set by new(skip_links).

Commonly used functions

$obj->filenameToPackage(FILENAME)
OODoc::Parser->filenameToPackage(FILENAME)

See "Commonly used functions" in OODoc::Object

$obj->mkdirhier(DIRECTORY)
OODoc::Parser->mkdirhier(DIRECTORY)

See "Commonly used functions" in OODoc::Object

Manual Repository

$obj->addManual(MANUAL)

See "Manual Repository" in OODoc::Object

$obj->mainManual(NAME)

See "Manual Repository" in OODoc::Object

$obj->manual(NAME)

See "Manual Repository" in OODoc::Object

$obj->manuals()

See "Manual Repository" in OODoc::Object

$obj->manualsForPackage(NAME)

See "Manual Repository" in OODoc::Object

$obj->packageNames()

See "Manual Repository" in OODoc::Object

DIAGNOSTICS ^

Error: The formatter type $class is not known for cleanup

Text blocks have to get the finishing touch in the final formatting phase. The parser has to fix the text block segments to create a formatter dependent output. Only a few formatters are predefined.

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().

SEE ALSO ^

This module is part of OODoc distribution version 2.00, built on January 11, 2013. Website: http://perl.overmeer.net/oodoc/

LICENSE ^

Copyrights 2003-2013 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

syntax highlighting: