GNUStep Macros

From GNUstepWiki
Revision as of 21:32, 14 July 2012 by Awiebe (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
  • ASSIGN(object,value) to assign an object variable, performing the appropriate re- tain/release as necessary.
  • ASSIGNCOPY(object,value) to copy the value and assign it to the object.
  • DESTROY(object) to release an object variable and set it to nil.
  • CREATE AUTORELEASE POOL(name) to create an autorelease pool with the spec- ified name.
  • IF NO GC(X) compile the code ’X’ only if GarbageCollection is not in use.
  • #ifdef __OBJC_GC__ /*Code*/ #endif If garbage collection is on then include, otherwise skip.
  • __weak This object is weak, if nothing references it, it will be collected.
    1. ifndef _WIN64 if not 64-bit windows
  • GS_WITH_GC is gnustep && has garbage collection

GCC

Platform Dependant

  • ifdef __MINGW__ /*do*/ #endif Windows POSIX

Memory Managment

  • RETAIN(x) Bump the retain cound of x where x does not inherit from NSObject. As in foundation objects.
  • RELEASE(x) Decrement the retain count of X


Misc