Fixes to subclassing Process.

This commit is contained in:
Hisham Muhammad
2015-03-31 23:23:10 -03:00
parent 5320bab202
commit 4c24a9b462
5 changed files with 51 additions and 13 deletions

View File

@ -171,6 +171,15 @@ typedef struct Process_ {
} Process;
typedef void (*Process_WriteField)(Process*, RichString*, ProcessField);
typedef struct ProcessClass_ {
const ObjectClass super;
const Process_WriteField writeField;
} ProcessClass;
#define As_Process(this_) ((ProcessClass*)((this_)->super.klass))
extern const char *Process_fieldNames[];
@ -189,9 +198,13 @@ void Process_setupColumnWidths();
#define ONE_DECIMAL_M (ONE_DECIMAL_K * ONE_DECIMAL_K)
#define ONE_DECIMAL_G (ONE_DECIMAL_M * ONE_DECIMAL_K)
void Process_writeField(Process* this, RichString* str, ProcessField field);
void Process_display(Object* cast, RichString* out);
void Process_done(Process* this);
extern ObjectClass Process_class;
extern ProcessClass Process_class;
void Process_init(Process* this, struct ProcessList_* pl);