This is FooObject.m in view mode; [Download] [Up]
/* * You may freely copy, distribute, and reuse the code in this example. * NeXT disclaims any warranty of any kind, expressed or implied, as to its * fitness for any particular use. */ #import "FooObject.h" #import <objc/hashtable.h> #import <libc.h> @implementation FooObject static int memory = 0; - init { [super init]; /* Note that this counter does not get reset even if all foo objects * are freed. */ tag = memory++; return self; } - free { /* Make sure the string buffer allocated gets freed */ return [super free]; } - (int)tag { return tag; } - (struct ct_hmsf *) startFrame { return &startFrame; } - (struct ct_hmsf *) endFrame { return &endFrame; } - (char *) comment { return comment; } - setStartFrame: (struct ct_hmsf *) a { startFrame = *a; return self; } - setEndFrame: (struct ct_hmsf *) a { endFrame = *a; return self; } - setComment: (char *) s { strcpy( comment, s ); return comment; } @end
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.