reorganized build-ins and implement a circular queue as an example

This commit is contained in:
cozis
2022-08-18 19:01:26 +02:00
parent b5b3a3e315
commit 782985e8b7
36 changed files with 486 additions and 259 deletions
+3 -3
View File
@@ -40,13 +40,13 @@ struct ClosureObject {
};
static void walk(Object *self, void (*callback)(Object **referer, void *userp), void *userp);
static Object *select(Object *self, Object *key, Heap *heap, Error *err);
static Object *select_(Object *self, Object *key, Heap *heap, Error *err);
static TypeObject t_closure = {
.base = (Object) { .type = &t_type, .flags = Object_STATIC },
.name = "closure",
.size = sizeof(ClosureObject),
.select = select,
.select = select_,
.walk = walk,
};
@@ -69,7 +69,7 @@ Object *Object_NewClosure(Object *parent, Object *new_map, Heap *heap, Error *er
return (Object*) obj;
}
static Object *select(Object *self, Object *key, Heap *heap, Error *err)
static Object *select_(Object *self, Object *key, Heap *heap, Error *err)
{
ClosureObject *closure = (ClosureObject*) self;