summaryrefslogtreecommitdiff
path: root/libobjc/objc/deprecated/struct_objc_module.h
diff options
context:
space:
mode:
Diffstat (limited to 'libobjc/objc/deprecated/struct_objc_module.h')
-rw-r--r--libobjc/objc/deprecated/struct_objc_module.h24
1 files changed, 24 insertions, 0 deletions
diff --git a/libobjc/objc/deprecated/struct_objc_module.h b/libobjc/objc/deprecated/struct_objc_module.h
new file mode 100644
index 000000000..57950851f
--- /dev/null
+++ b/libobjc/objc/deprecated/struct_objc_module.h
@@ -0,0 +1,24 @@
+/*
+** The compiler generates one of these structures for each module that
+** composes the executable (eg main.m).
+**
+** This data structure is the root of the definition tree for the module.
+**
+** A collect program runs between ld stages and creates a ObjC ctor array.
+** That array holds a pointer to each module structure of the executable.
+*/
+typedef struct objc_module {
+ unsigned long version; /* Version of the Module data structure. */
+ unsigned long size; /* sizeof(Module) according to the compiler -
+ only used to sanity check that it matches
+ sizeof(Module) according to the
+ runtime. */
+ const char* name; /* Name of the file used to compile the
+ module - not set by modern compilers for
+ security reasons. */
+ Symtab_t symtab; /* Pointer to the Symtab of the module. The
+ Symtab holds an array of pointers to the
+ classes and categories defined in the
+ module. */
+} Module, *Module_t;
+