We have new keywords \o/

This commit is contained in:
overflowerror 2017-03-09 18:36:36 +01:00
parent 5a0e743b5d
commit a73a5ead20
3 changed files with 10 additions and 9 deletions

View file

@ -12,8 +12,8 @@ class(test, test_class, object_class, true) {
const char* string;
void (*print)(struct test*);
void (*destruct)(struct test*);
void (*print)(defclass test*);
void (*destruct)(defclass test*);
} test_t;
void method(test, print)(test_t* this) {

View file

@ -19,6 +19,7 @@
#define call(obj, method) (obj)->method((obj))
#define new
#define defclass struct
#define MAX_CLASSES 1024
#define NO_CLASS_ID -1
@ -47,7 +48,7 @@ extern class_t object_class;
class(object, object_class, NO_SUPER_CLASS, true) {
meta_object_t meta_obj;
void (*destruct)(struct object*);
void (*destruct)(defclass object*);
} object_t;

View file

@ -15,12 +15,12 @@ class(strbuilder, strbuilder_class, object_class, true) {
char** strings;
int nrstrings;
void (*destruct)(struct strbuilder*);
void (*add)(struct strbuilder*, const char*);
void (*build)(struct strbuilder*);
const char* (*get)(struct strbuilder*);
void (*clear)(struct strbuilder*);
size_t (*length)(struct strbuilder*);
void (*destruct)(defclass strbuilder*);
void (*add)(defclass strbuilder*, const char*);
void (*build)(defclass strbuilder*);
const char* (*get)(defclass strbuilder*);
void (*clear)(defclass strbuilder*);
size_t (*length)(defclass strbuilder*);
} strbuilder_t;
strbuilder_t* method(strbuilder, construct)(const char*);