#ifndef arc_h #define arc_h /** * Retains an Objective-C object and returns a pointer that can be passed to C. * @param object The object to retain * @return Pointer suitable to be stored in C code. */ static inline void *arc_retain(id object) { return (__bridge_retained void *)object; } /** * Releases the Objective-C object pointed to by a C pointer. * @param pointer Object pointer to release. */ static inline void arc_release(void *pointer) { id object = (__bridge_transfer id)pointer; object = nil; } #endif