home *** CD-ROM | disk | FTP | other *** search
- typedef int (*funcp)();
- typedef struct METH_T {
- int msg;
- funcp procc;
- struct METH_T near *next;
- } METH_TABLE;
-
- #define MAX_METHS 32 /* must be multi of 2 */
- typedef struct class_def {
- METH_TABLE near *tbl;
- char *name;
- int size;
- struct class_def *super;
- METH_TABLE near *hash[MAX_METHS];
- void *array;
- void *stack;
- } CLASS_DEF;
-
- typedef void *Obj;
- void *send(Obj,int,...);
- void *sendSuper(CLASS_DEF *,int,...);
- #define RSend (void *)send
- #define RSendSuper (void *)sendSuper
- #define Send (int)send
- #define SendSuper (int)sendSuper
-
- #define Nil (void *)0
- Obj New( CLASS_DEF near * );
- #define New(x) New(&x)
-
-
- /*Class Names*/
- extern CLASS_DEF near OtherDataTwll;
- extern CLASS_DEF near MyDataTwll;
- extern CLASS_DEF near DataTwll;
- extern CLASS_DEF near Twll;
- extern CLASS_DEF near TwllHead;
- extern CLASS_DEF near ObjRoot;
-
- /*Messages*/
- #define SetA 10
- #define Print 9
- #define SetX 8
- #define SendAll 7
- #define AddItem 6
- #define ObjPrintName 5
- #define ObjKill 4
- #define QQSize 3
- #define Replicate 2
- #define ObjInit 1
-