Mercurial > repos > tabletprog
comparison runtime/object.c @ 31:668f533e5284
Add initial version of C backend
author | Mike Pavone <pavone@retrodev.com> |
---|---|
date | Sat, 07 Jul 2012 16:48:36 -0700 |
parents | |
children | a10f1b049193 |
comparison
equal
deleted
inserted
replaced
30:608eb70fe261 | 31:668f533e5284 |
---|---|
1 #include "object.h" | |
2 #include <stdarg.h> | |
3 #include <stdlib.h> | |
4 | |
5 object * make_object(obj_meta * meta, void * parent, int num_props, ...) | |
6 { | |
7 va_list args; | |
8 object * newobj = malloc(meta->size); | |
9 newobj->meta = meta; | |
10 newobj->parent = parent; | |
11 | |
12 va_start(args, num_props); | |
13 object ** curprop = ((object **)(newobj + 1)); | |
14 for (; num_props > 0; num_props--) | |
15 { | |
16 *curprop = va_arg(args, object *); | |
17 } | |
18 va_end(args); | |
19 return newobj; | |
20 } | |
21 |