diff src/luan/tools/CmdLine.java @ 52:0c0f2b107099

add WebRun git-svn-id: https://luan-java.googlecode.com/svn/trunk@53 21e917c8-12df-6dd8-5cb6-c86387c605b9
author fschmidt@gmail.com <fschmidt@gmail.com@21e917c8-12df-6dd8-5cb6-c86387c605b9>
date Mon, 31 Dec 2012 03:15:20 +0000
parents 8ede219cd111
children 9381b23ea9e1
line wrap: on
line diff
--- a/src/luan/tools/CmdLine.java	Fri Dec 28 20:43:06 2012 +0000
+++ b/src/luan/tools/CmdLine.java	Mon Dec 31 03:15:20 2012 +0000
@@ -6,6 +6,7 @@
 import luan.lib.JavaLib;
 import luan.lib.StringLib;
 import luan.lib.TableLib;
+import luan.lib.HtmlLib;
 import luan.Luan;
 import luan.LuanState;
 import luan.LuanFunction;
@@ -16,12 +17,18 @@
 
 public class CmdLine {
 
-	public static void main(String[] args) {
+	public static LuanState newStandardLuan() {
 		LuanState luan = LuanCompiler.newLuanState();
 		BasicLib.register(luan);
 		JavaLib.register(luan);
 		StringLib.register(luan);
 		TableLib.register(luan);
+		HtmlLib.register(luan);
+		return luan;
+	}
+
+	public static void main(String[] args) {
+		LuanState luan = newStandardLuan();
 		BasicLib.make_standard(luan);
 		boolean interactive = false;
 		boolean showVersion = false;
@@ -106,8 +113,7 @@
 			System.out.print("> ");
 			String input = new Scanner(System.in).nextLine();
 			try {
-				LuanFunction fn = BasicLib.load(luan,input,"stdin");
-				Object[] rtn = luan.call(fn,null,null);
+				Object[] rtn = eval(luan,input,"stdin");
 				if( rtn.length > 0 )
 					BasicLib.print(luan,rtn);
 			} catch(LuanException e) {
@@ -115,4 +121,9 @@
 			}
 		}
 	}
+
+	public static Object[] eval(LuanState luan,String cmd,String sourceName) throws LuanException {
+		LuanFunction fn = BasicLib.load(luan,cmd,sourceName);
+		return luan.call(fn,null,null);
+	}
 }