diff options
| author | nicola <nicola@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-09-11 12:38:56 +0000 |
|---|---|---|
| committer | nicola <nicola@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-09-11 12:38:56 +0000 |
| commit | 344bfd093394bbfd16bfc4614972d6577b6413a8 (patch) | |
| tree | 34a7ed63e36b5323657af9af9dc423fa5a37dd3e /libobjc/objc/deprecated/struct_objc_class.h | |
| parent | 9dd72ec43737ca9d1ec49315d4a5e0fdd3d578f2 (diff) | |
| download | ppe42-gcc-344bfd093394bbfd16bfc4614972d6577b6413a8.tar.gz ppe42-gcc-344bfd093394bbfd16bfc4614972d6577b6413a8.zip | |
In libobjc:
* objc/deprecated/struct_objc_selector.h: New file. Definition of
'struct objc_selector' and 'sel_eq' moved here.
* objc/deprecated/struct_objc_protocol.h: New file. Definition of
'struct objc_procotol' moved here.
* objc/deprecated/struct_objc_class.h: New file. Definition of
'struct objc_class' moved here.
* objc/deprecated/MetaClass.h: New file. Definition of MetClass
moved here.
* objc/deprecated/STR.h: New file. Definition of STR moved here.
* objc/message.h: New file. Definitions for relval_t, apply_t,
arglist, arglist_t and objc_msg_lookup were moved here.
* objc/objc.h: Include the above files instead of defining the
corresponding structs, types and functions here. Added new opaque
definitions for SEL and Class. Use Class and not 'struct
objc_class *' in the definition of 'struct objc_object'.
Commented all types defined in the file. Removed special
definition of BOOL as 'int' on __vxworks; use 'unsigned char'
there as well.
* objc/deprecated/objc-unexpected-exception.h: Renamed to
objc_unexpected_exception.h.
* objc/objc-api.h: Updated include of
objc-unexpetected-exception.h
* objc/objc-exception.h: Updated comments.
* Makefile.in (OBJC_H, OBJC_DEPRECATED_H): Added the new header
files. Reindented list of files.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164212 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libobjc/objc/deprecated/struct_objc_class.h')
| -rw-r--r-- | libobjc/objc/deprecated/struct_objc_class.h | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/libobjc/objc/deprecated/struct_objc_class.h b/libobjc/objc/deprecated/struct_objc_class.h new file mode 100644 index 00000000000..4918e738e8d --- /dev/null +++ b/libobjc/objc/deprecated/struct_objc_class.h @@ -0,0 +1,44 @@ +/* This structure used to be public, but is now private to the runtime. */ + +/* +** The compiler generates one of these structures for each class. +** +** This structure is the definition for classes. +** +** This structure is generated by the compiler in the executable and used by +** the run-time during normal messaging operations. Therefore some members +** change type. The compiler generates "char* const" and places a string in +** the following member variables: super_class. +*/ +struct objc_class { + MetaClass class_pointer; /* Pointer to the class's + meta class. */ + struct objc_class* super_class; /* Pointer to the super + class. NULL for class + Object. */ + const char* name; /* Name of the class. */ + long version; /* Unknown. */ + unsigned long info; /* Bit mask. See class masks + defined above. */ + long instance_size; /* Size in bytes of the class. + The sum of the class + definition and all super + class definitions. */ + struct objc_ivar_list* ivars; /* Pointer to a structure that + describes the instance + variables in the class + definition. NULL indicates + no instance variables. Does + not include super class + variables. */ + struct objc_method_list* methods; /* Linked list of instance + methods defined for the + class. */ + struct sarray * dtable; /* Pointer to instance + method dispatch table. */ + struct objc_class* subclass_list; /* Subclasses */ + struct objc_class* sibling_class; + + struct objc_protocol_list *protocols; /* Protocols conformed to */ + void* gc_object_type; +}; |

