2 ** The compiler generates one of these structures for each module that
3 ** composes the executable (eg main.m).
5 ** This data structure is the root of the definition tree for the module.
7 ** A collect program runs between ld stages and creates a ObjC ctor array.
8 ** That array holds a pointer to each module structure of the executable.
10 typedef struct objc_module
{
11 unsigned long version
; /* Version of the Module data structure. */
12 unsigned long size
; /* sizeof(Module) according to the compiler -
13 only used to sanity check that it matches
14 sizeof(Module) according to the
16 const char* name
; /* Name of the file used to compile the
17 module - not set by modern compilers for
19 Symtab_t symtab
; /* Pointer to the Symtab of the module. The
20 Symtab holds an array of pointers to the
21 classes and categories defined in the