diff tpc.js @ 66:25b697c91629

Finish implementation of external module access
author Mike Pavone <pavone@retrodev.com>
date Sat, 14 Jul 2012 12:30:25 -0700
parents 976a0924e1d4
children 3a169ebb3224
line wrap: on
line diff
--- a/tpc.js	Sat Jul 14 04:56:05 2012 -0700
+++ b/tpc.js	Sat Jul 14 12:30:25 2012 -0700
@@ -3,7 +3,7 @@
 
 var file = null;
 var argtype = 'normal';
-var includes = [];
+var includes = ['.'];
 var basedir = '';
 var debugmode = false;
 for (var i = 0; i < arguments.length; i++) {
@@ -53,14 +53,9 @@
 compileFile(file, basedir, includes, debugmode);
 
 
-function compileFile(filename, basedir, includes, debugmode)
+function parseFile(filename)
 {
 	var text = read(filename);
-	load(basedir + 'peg.js');
-	PEG = module.exports;
-	load(basedir + 'parser.js');
-	load(basedir + 'compiler.js');
-	load(basedir + 'cbackend.js');
 	try {
 		var parsed = parser.parse(text);	
 	} catch (error) {
@@ -78,9 +73,23 @@
 		print(spacer + '^');
 		quit(1);
 	}
+	return parsed;
+}
+
+
+function compileFile(filename, basedir, includes, debugmode)
+{
+	
+	load(basedir + 'peg.js');
+	PEG = module.exports;
+	load(basedir + 'parser.js');
+	load(basedir + 'compiler.js');
+	load(basedir + 'cbackend.js');
+	var parsed = parseFile(filename);
 	if (debugmode) {
 		debugprint = print;
 	}
+	toplevel = new topsymbols(includes);
 	var c = parsed.toCModule();
 	print(c);
 }