New doc system done for core
[io.git] / libs / iovm / source / IoContext.h
blob5345633fd14de390ab58f8de5a2e9e491d6d98c8
2 //metadoc Context copyright Steve Dekorte 2002
3 //metadoc Context license BSD revised
5 #ifndef IOCONTEXT_DEFINED
6 #define IOCONTEXT_DEFINED 1
8 #include "IoObject_struct.h"
10 #ifdef __cplusplus
11 extern "C" {
12 #endif
14 typedef struct
16 void *self; // activationContext
17 void *locals; // currentContext
18 void *message;
19 void *slotContext;
20 } IoContext;
22 #define IOCONTEXT(self, locals, message) ((IoContext *){self, locals, message})
26 #define SELF (context->self)
27 #define LOCALS (context->locals)
28 #define MESSAGE (context->message)
30 example:
32 IoObject *IoDuration_days(IoDuration *self, IoObject *locals, IoMessage *m);
34 becomes:
36 IoObject *IoDuration_days(IoContext *context);
39 #ifdef __cplusplus
41 #endif
42 #endif