From c66148484cad66972348ffe850fd23bc9dca60f9 Mon Sep 17 00:00:00 2001 From: Tavian Barnes Date: Thu, 17 Dec 2009 03:12:34 -0500 Subject: Tokenize on-the-fly. No more manual tokenization and parsing, giving a simpler interface. Also, this brings us closer to a dmnsn_realize_string() interface. --- dimension/realize.c | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) (limited to 'dimension/realize.c') diff --git a/dimension/realize.c b/dimension/realize.c index 1a42be9..7ca3ae2 100644 --- a/dimension/realize.c +++ b/dimension/realize.c @@ -536,8 +536,8 @@ dmnsn_realize_sphere(dmnsn_astnode astnode) return sphere; } -dmnsn_scene * -dmnsn_realize(const dmnsn_array *astree) +static dmnsn_scene * +dmnsn_realize_astree(const dmnsn_array *astree) { dmnsn_scene *scene = dmnsn_new_scene(); if (!scene) { @@ -607,3 +607,13 @@ dmnsn_realize(const dmnsn_array *astree) return scene; } + +dmnsn_scene * +dmnsn_realize(FILE *file, const char *filename) +{ + dmnsn_array *astree = dmnsn_parse(file, filename); + if (!astree) { + return NULL; + } + return dmnsn_realize_astree(astree); +} -- cgit v1.2.3