64 #define createUndefined(obj) ;undefinedt obj; initiateUndefined(&obj) 65 #define createAllocateUndefined(obj) ;undefinedt *obj; initiateAllocateUndefined(&obj) 92 #define cleanUndefinedP(name) undefinedt *name CLEANUP(cleanUpUndefinedTerminateG) 97 #define cleanAllocateUndefined(obj) ;cleanUndefinedP(obj); initiateAllocateUndefined(&obj) 102 #define cleanUndefined(name) undefinedt name CLEANUP(cleanUpUndefinedFreeLocalG); initiateUndefined(&name) 107 #define cleanFreeUndefined(name) undefinedt *name CLEANUP(cleanUpUndefinedFreeG) 112 #define cleanFinishUndefinedP(name) undefinedt *name CLEANUP(cleanUpUndefinedFinishG) 117 #define cleanSmashUndefinedP(name) undefinedt *name CLEANUP(cleanUpUndefinedSmashG) terminateUndefinedFt smash
void initiateUndefined(undefinedt *self)
terminateUndefinedFt terminate
void finalizeRecycleUndefined(void *arg UNUSED)
undefinedt *(* duplicateUndefinedFt)(undefinedt *self)
void(* finishUndefinedFt)(undefinedt **self)
free container
void cleanUpUndefinedTerminateG(undefinedt **val)
void cleanUpUndefinedFinishG(undefinedt **val)
duplicateUndefinedFt duplicate
undefinedt * allocUndefined(void)
void cleanUpUndefinedFreeG(undefinedt **val)
void cleanUpUndefinedFreeLocalG(undefinedt *val)
class functions allocated once for all objects
toStringUndefinedFt toString
void finalizeUndefined(void)
undefinedt * duplicateUndefinedG(undefinedt *self)
void freeUndefinedG(undefinedt *self)
char *(* toStringUndefinedFt)(undefinedt *self)
void(* terminateUndefinedFt)(undefinedt **self)
void(* freeUndefinedFt)(undefinedt *self)
void cleanUpUndefinedSmashG(undefinedt **val)
void initiateAllocateUndefined(undefinedt **self)