view runtime/object.c @ 33:96e21f525b78

Forgot to add kernel.tp
author Mike Pavone <pavone@retrodev.com>
date Sun, 08 Jul 2012 12:32:24 -0700
parents 668f533e5284
children a10f1b049193
line wrap: on
line source

#include "object.h"
#include <stdarg.h>
#include <stdlib.h>

object * make_object(obj_meta * meta, void * parent, int num_props, ...)
{
	va_list args;
	object * newobj = malloc(meta->size);
	newobj->meta = meta;
	newobj->parent = parent;
	
	va_start(args, num_props);
	object ** curprop = ((object **)(newobj + 1));
	for (; num_props > 0; num_props--)
	{
		*curprop = va_arg(args, object *);
	}
	va_end(args);
	return newobj;
}