macros.h
上传用户:shenzhenrh
上传日期:2013-05-12
资源大小:2904k
文件大小:2k
源码类别:

信息检索与抽取

开发平台:

Unix_Linux

  1. #if 1
  2. struct Zone_c;
  3. struct Object_s;
  4. struct ComponentZone_c;
  5. extern id (*_swarm_i_Zone_c__allocIVarsComponent_) (struct Zone_c *, struct objc_selector *, Class);
  6. extern void (*_swarm_i_Zone_c__freeIVarsComponent_) (struct Zone_c *, struct objc_selector *, id);
  7. extern void * (*_swarm_i_Zone_c__allocBlock_) (struct Zone_c *, struct objc_selector *, size_t);
  8. extern void (*_swarm_i_Zone_c__freeBlock_blockSize_) (struct Zone_c *, struct objc_selector *, void *, size_t);
  9. extern id (*_swarm_i_ComponentZone_c__allocIVars_) (struct ComponentZone_c *, struct objc_selector *, Class);
  10. extern id (*_swarm_i_Object_s__drop) (struct Object_s *, struct objc_selector *);
  11. #define ALLOCIVARSCOMPONENT(zone, class) _swarm_i_Zone_c__allocIVarsComponent_ (zone, M(allocIVarsComponent:), class)
  12. #define FREEIVARSCOMPONENT(zone, obj) _swarm_i_Zone_c__freeIVarsComponent_ ((struct Zone_c *) zone, M(freeIVarsComponent:), obj)
  13. #define COMPONENT_ALLOCIVARS(zone,class) _swarm_i_ComponentZone_c__allocIVars_ ((struct ComponentZone_c *) getCZone (zone), M(allocIVars:), class)
  14. #define ALLOCBLOCK(zone, size) _swarm_i_Zone_c__allocBlock_ ((struct Zone_c *) zone, M(allocBlock:), size)
  15. #define FREEBLOCK_SIZE(zone, ptr, size) _swarm_i_Zone_c__freeBlock_blockSize_ ((struct Zone_c *) zone, M(freeBlock:blockSize:), ptr, size);
  16. #define DROP(obj) _swarm_i_Object_s__drop (obj, M(drop)) 
  17. #else
  18. #define ALLOCIVARSCOMPONENT(zone, class) [zone allocIVarsComponent: class]
  19. #define FREEIVARSCOMPONENT(zone, obj) [zone freeIVarsComponent: obj]
  20. #define COMPONENT_ALLOCIVARS(zone,class) [getCZone (zone) allocIVars: class]
  21. #define ALLOCBLOCK(zone, size) [zone allocBlock: size]
  22. #define FREEBLOCK_SIZE(zone, ptr, size) [zone freeBlock: ptr blockSize: size]
  23. #define DROP(obj) [obj drop]
  24. #endif