objc-class.h File Reference

#include "objc/objc.h"

Go to the source code of this file.

Classes

struct  objc_cache
struct  objc_category
struct  objc_class
struct  objc_ivar
struct  objc_ivar_list
struct  objc_method
struct  objc_method_list
struct  objc_protocol_list

Defines

#define _C_ARY_B   '['
#define _C_ARY_E   ']'
#define _C_BFLD   'b'
#define _C_CHARPTR   '*'
#define _C_CHR   'c'
#define _C_CLASS   '#'
#define _C_DBL   'd'
#define _C_FLT   'f'
#define _C_ID   '@'
#define _C_INT   'i'
#define _C_LNG   'l'
#define _C_PTR   '^'
#define _C_SEL   ':'
#define _C_SHT   's'
#define _C_STRUCT_B   '{'
#define _C_STRUCT_E   '}'
#define _C_UCHR   'C'
#define _C_UINT   'I'
#define _C_ULNG   'L'
#define _C_UNDEF   '?'
#define _C_UNION_B   '('
#define _C_UNION_E   ')'
#define _C_USHT   'S'
#define _C_VOID   'v'
#define CACHE_BUCKET_IMP(B)   ((B)->method_imp)
#define CACHE_BUCKET_NAME(B)   ((B)->method_name)
#define CACHE_BUCKET_VALID(B)   (B)
#define CACHE_HASH(sel, mask)   (((uarith_t)(sel)>>2) & (mask))
#define CLS_CLASS   0x1L
#define CLS_FLUSH_CACHE   0x20L
#define CLS_GETINFO(cls, infomask)   ((cls)->info & (infomask))
#define CLS_GROW_CACHE   0x40L
#define CLS_INITIALIZED   0x4L
#define CLS_INITIALIZING   0x800
#define CLS_JAVA_CLASS   0x400L
#define CLS_JAVA_HYBRID   0x200L
#define CLS_MAPPED   0x10L
#define CLS_META   0x2L
#define CLS_METHOD_ARRAY   0x100L
#define CLS_NEED_BIND   0x80L
#define CLS_POSING   0x8L
#define CLS_SETINFO(cls, infomask)   ((cls)->info |= (infomask))
#define marg_adjustedOffset(method, offset)   (marg_prearg_size + offset)
#define marg_free(margs)
#define marg_getRef(margs, offset, type)   ( (type *)((char *)margs + marg_adjustedOffset(method,offset) ) )
#define marg_getValue(margs, offset, type)   ( *marg_getRef(margs, offset, type) )
#define marg_malloc(margs, method)
#define marg_prearg_size   0
#define marg_setValue(margs, offset, type, value)   ( marg_getValue(margs, offset, type) = (value) )
#define OBJC_NEXT_METHOD_LIST   1

Typedefs

typedef objc_cacheCache
typedef objc_categoryCategory
typedef objc_ivarIvar
typedef void * marg_list
typedef objc_methodMethod

Functions

OBJC_EXPORT void class_addMethods (Class, struct objc_method_list *)
OBJC_EXPORT id class_createInstance (Class, unsigned idxIvars)
OBJC_EXPORT id class_createInstanceFromZone (Class, unsigned idxIvars, void *z)
OBJC_EXPORT Method class_getClassMethod (Class, SEL)
OBJC_EXPORT Method class_getInstanceMethod (Class, SEL)
OBJC_EXPORT Ivar class_getInstanceVariable (Class, const char *)
OBJC_EXPORT int class_getVersion (Class)
OBJC_EXPORT struct objc_method_listclass_nextMethodList (Class, void **)
OBJC_EXPORT Class class_poseAs (Class imposter, Class original)
OBJC_EXPORT void class_removeMethods (Class, struct objc_method_list *)
OBJC_EXPORT void class_setVersion (Class, int)
OBJC_EXPORT unsigned method_getArgumentInfo (Method m, int arg, const char **type, int *offset)
OBJC_EXPORT unsigned method_getNumberOfArguments (Method)
OBJC_EXPORT unsigned method_getSizeOfArguments (Method)
OBJC_EXPORT Ivar object_getInstanceVariable (id, const char *name, void **)
OBJC_EXPORT Ivar object_setInstanceVariable (id, const char *name, void *)


Define Documentation

#define _C_ARY_B   '['
 

Definition at line 200 of file objc-class.h.

#define _C_ARY_E   ']'
 

Definition at line 201 of file objc-class.h.

#define _C_BFLD   'b'
 

Definition at line 195 of file objc-class.h.

#define _C_CHARPTR   '*'
 

Definition at line 199 of file objc-class.h.

#define _C_CHR   'c'
 

Definition at line 185 of file objc-class.h.

#define _C_CLASS   '#'
 

Definition at line 183 of file objc-class.h.

#define _C_DBL   'd'
 

Definition at line 194 of file objc-class.h.

#define _C_FLT   'f'
 

Definition at line 193 of file objc-class.h.

#define _C_ID   '@'
 

Definition at line 182 of file objc-class.h.

#define _C_INT   'i'
 

Definition at line 189 of file objc-class.h.

#define _C_LNG   'l'
 

Definition at line 191 of file objc-class.h.

#define _C_PTR   '^'
 

Definition at line 198 of file objc-class.h.

#define _C_SEL   ':'
 

Definition at line 184 of file objc-class.h.

#define _C_SHT   's'
 

Definition at line 187 of file objc-class.h.

#define _C_STRUCT_B   '{'
 

Definition at line 204 of file objc-class.h.

#define _C_STRUCT_E   '}'
 

Definition at line 205 of file objc-class.h.

#define _C_UCHR   'C'
 

Definition at line 186 of file objc-class.h.

#define _C_UINT   'I'
 

Definition at line 190 of file objc-class.h.

#define _C_ULNG   'L'
 

Definition at line 192 of file objc-class.h.

#define _C_UNDEF   '?'
 

Definition at line 197 of file objc-class.h.

#define _C_UNION_B   '('
 

Definition at line 202 of file objc-class.h.

#define _C_UNION_E   ')'
 

Definition at line 203 of file objc-class.h.

#define _C_USHT   'S'
 

Definition at line 188 of file objc-class.h.

#define _C_VOID   'v'
 

Definition at line 196 of file objc-class.h.

#define CACHE_BUCKET_IMP  )     ((B)->method_imp)
 

Definition at line 212 of file objc-class.h.

#define CACHE_BUCKET_NAME  )     ((B)->method_name)
 

Definition at line 211 of file objc-class.h.

#define CACHE_BUCKET_VALID  )     (B)
 

Definition at line 213 of file objc-class.h.

#define CACHE_HASH sel,
mask   )     (((uarith_t)(sel)>>2) & (mask))
 

Definition at line 214 of file objc-class.h.

#define CLS_CLASS   0x1L
 

Definition at line 53 of file objc-class.h.

#define CLS_FLUSH_CACHE   0x20L
 

Definition at line 58 of file objc-class.h.

#define CLS_GETINFO cls,
infomask   )     ((cls)->info & (infomask))
 

Definition at line 50 of file objc-class.h.

#define CLS_GROW_CACHE   0x40L
 

Definition at line 59 of file objc-class.h.

#define CLS_INITIALIZED   0x4L
 

Definition at line 55 of file objc-class.h.

#define CLS_INITIALIZING   0x800
 

Definition at line 66 of file objc-class.h.

#define CLS_JAVA_CLASS   0x400L
 

Definition at line 64 of file objc-class.h.

#define CLS_JAVA_HYBRID   0x200L
 

Definition at line 63 of file objc-class.h.

#define CLS_MAPPED   0x10L
 

Definition at line 57 of file objc-class.h.

#define CLS_META   0x2L
 

Definition at line 54 of file objc-class.h.

#define CLS_METHOD_ARRAY   0x100L
 

Definition at line 61 of file objc-class.h.

#define CLS_NEED_BIND   0x80L
 

Definition at line 60 of file objc-class.h.

#define CLS_POSING   0x8L
 

Definition at line 56 of file objc-class.h.

#define CLS_SETINFO cls,
infomask   )     ((cls)->info |= (infomask))
 

Definition at line 51 of file objc-class.h.

#define marg_adjustedOffset method,
offset   )     (marg_prearg_size + offset)
 

Definition at line 269 of file objc-class.h.

#define marg_free margs   ) 
 

Value:

do { \
        free(margs); \
    } while (0)

Definition at line 264 of file objc-class.h.

#define marg_getRef margs,
offset,
type   )     ( (type *)((char *)margs + marg_adjustedOffset(method,offset) ) )
 

Definition at line 275 of file objc-class.h.

#define marg_getValue margs,
offset,
type   )     ( *marg_getRef(margs, offset, type) )
 

Definition at line 278 of file objc-class.h.

#define marg_malloc margs,
method   ) 
 

Value:

do { \
        margs = (marg_list *)malloc (marg_prearg_size + ((7 + method_getSizeOfArguments(method)) & ~7)); \
    } while (0)

Definition at line 258 of file objc-class.h.

#define marg_prearg_size   0
 

Definition at line 255 of file objc-class.h.

#define marg_setValue margs,
offset,
type,
value   )     ( marg_getValue(margs, offset, type) = (value) )
 

Definition at line 281 of file objc-class.h.

#define OBJC_NEXT_METHOD_LIST   1
 

Definition at line 247 of file objc-class.h.


Typedef Documentation

typedef struct objc_cache* Cache
 

Definition at line 209 of file objc-class.h.

typedef struct objc_category* Category
 

Definition at line 113 of file objc-class.h.

typedef struct objc_ivar* Ivar
 

Definition at line 126 of file objc-class.h.

typedef void* marg_list
 

Definition at line 250 of file objc-class.h.

typedef struct objc_method* Method
 

Definition at line 151 of file objc-class.h.


Function Documentation

OBJC_EXPORT void class_addMethods Class  ,
struct objc_method_list
 

OBJC_EXPORT id class_createInstance Class  ,
unsigned  idxIvars
 

OBJC_EXPORT id class_createInstanceFromZone Class  ,
unsigned  idxIvars,
void *  z
 

OBJC_EXPORT Method class_getClassMethod Class  ,
SEL 
 

OBJC_EXPORT Method class_getInstanceMethod Class  ,
SEL 
 

OBJC_EXPORT Ivar class_getInstanceVariable Class  ,
const char * 
 

OBJC_EXPORT int class_getVersion Class   ) 
 

OBJC_EXPORT struct objc_method_list* class_nextMethodList Class  ,
void ** 
 

OBJC_EXPORT Class class_poseAs Class  imposter,
Class  original
 

OBJC_EXPORT void class_removeMethods Class  ,
struct objc_method_list
 

OBJC_EXPORT void class_setVersion Class  ,
int 
 

OBJC_EXPORT unsigned method_getArgumentInfo Method  m,
int  arg,
const char **  type,
int *  offset
 

OBJC_EXPORT unsigned method_getNumberOfArguments Method   ) 
 

OBJC_EXPORT unsigned method_getSizeOfArguments Method   ) 
 

OBJC_EXPORT Ivar object_getInstanceVariable id  ,
const char *  name,
void ** 
 

OBJC_EXPORT Ivar object_setInstanceVariable id  ,
const char *  name,
void * 
 


Generated on Tue Sep 19 21:18:37 2006 for Boomerang by  doxygen 1.4.6