HeaderDoc Class Hierarchy

author: Matt Morse (matt@apple.com)
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   (Owner for C++ class API)
        |               |                
        |               |-------CClass     (Owner for C pseudoclass API)
        |               |                
        |               |-------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            (a C function or a C++ member function)
        |                
        |-----------MinorAPIElement     (parameter, members of structs)
        |                
        |-----------PDefine
        |                
        |-----------Struct
        |                |        
        |                |-------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.)


headerDoc2HTML also uses the non object-oriented module, Utilities.pm.