mirror of
https://github.com/gnustep/libs-base.git
synced 2025-04-22 16:33:29 +00:00
(RETAIN_ELT, RELEASE_ELT, AUTORELEASE_ELT): New macros.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@125 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
parent
45699fdcf1
commit
f92e432680
2 changed files with 24 additions and 0 deletions
|
@ -64,6 +64,18 @@
|
|||
#define CONTAINS_OBJECTS \
|
||||
(ENCODING_IS_OBJECT([self contentType]))
|
||||
|
||||
/* Used inside a method for sending "-retain" if necessary */
|
||||
#define RETAIN_ELT(ELT) \
|
||||
if (CONTAINS_OBJECTS) [ELT.id_u retain]
|
||||
|
||||
/* Used inside a method for sending "-release" if necessary */
|
||||
#define RELEASE_ELT(ELT) \
|
||||
if (CONTAINS_OBJECTS) [ELT.id_u release]
|
||||
|
||||
/* Used inside a method for sending "-autorelease" if necessary */
|
||||
#define AUTORELEASE_ELT(ELT) \
|
||||
({if (CONTAINS_OBJECTS) ((elt)[ELT.id_u autorelease]) else ELT;})
|
||||
|
||||
|
||||
/* Error Handling */
|
||||
|
||||
|
|
|
@ -64,6 +64,18 @@
|
|||
#define CONTAINS_OBJECTS \
|
||||
(ENCODING_IS_OBJECT([self contentType]))
|
||||
|
||||
/* Used inside a method for sending "-retain" if necessary */
|
||||
#define RETAIN_ELT(ELT) \
|
||||
if (CONTAINS_OBJECTS) [ELT.id_u retain]
|
||||
|
||||
/* Used inside a method for sending "-release" if necessary */
|
||||
#define RELEASE_ELT(ELT) \
|
||||
if (CONTAINS_OBJECTS) [ELT.id_u release]
|
||||
|
||||
/* Used inside a method for sending "-autorelease" if necessary */
|
||||
#define AUTORELEASE_ELT(ELT) \
|
||||
({if (CONTAINS_OBJECTS) ((elt)[ELT.id_u autorelease]) else ELT;})
|
||||
|
||||
|
||||
/* Error Handling */
|
||||
|
||||
|
|
Loading…
Reference in a new issue