HeaderDoc Class
Hierarchy
|
| HeaderElement (Root Class--any header entity that's significant)
|
| | (to HeaderDoc is a HeaderElement)
|
| |
|
| |
|
| |-----------APIOwner (Object that owns declared API)
|
| | |
|
| | |-------Header (Owner for header-wide API)
|
| | |
|
| | |-------CPPClass (Container for all non-Objective-C classes and
|
| | | C pseudoclass/COM Interface APIs).
|
| | |
|
| | |-------ObjCContainer
|
| | |
|
| | |-------ObjCClass (Owner for Objective-C class API)
|
| | |
|
| | |-------ObjCCategory (Owner for Objective-C category API)
|
| | |
|
| | |-------ObjCProtocol (Owner for Objective-C protocol API)
|
| |
|
| |
|
| |-----------Method (an Objective-C method)
|
| |
|
| |-----------Constant
|
| |
|
| |-----------Enum
|
| |
|
| |-----------Function (any non-objective-C function or method)
|
| |
|
| |-----------MinorAPIElement (parameter, members of structs)
|
| |
|
| |-----------PDefine
|
| |
|
| |-----------Struct (for both structs and unions)
|
| | |
|
| | |-------Var (subclass of Struct so that it can contain fields)
|
| |
|
| |-----------Typedef
|
|
|
|
|
| DocReference (Another root class. Used by gatherHeaderDoc to store
|
| information about documentation framesets within an
|
| input folder. The script uses this information to
|
| construct a top-level table of contents with links
|
| to each frameset.)
|
|
|
| ParseTree (Token tree instantiated from BlockParse.pm.)
|
|
|
In addition to the classes shown above, the headerDoc2HTML
script
also uses the non–object-oriented modules Utilities.pm, ClassArray.pm,
and BlockParse.pm. Most
class instances are instantiated from headerDoc2HTML.pl
based
on the results of a call to blockParse
.
The ParseTree
class is instantiated
in the block parser itself. It contains a token tree and a set of
operations on that tree (print the tree, return a text or html representation
of the tree, walk the parse tree for parameters, walk the parse
tree for embedded headerdoc markup, etc.
Finally, gatherHeaderDoc
uses an external
program, resolveLinks
, to convert special “link request”
comments into links to other files in the directory being processed.
This tool (written in C) resides in the bin
directory
within the HeaderDoc modules directory.
© 1999, 2004 Apple Computer, Inc. All Rights Reserved. (Last updated: 2004-05-27)