diff core/src/luan/modules/PackageLuan.java @ 186:cf939124461a

don't import modules by default git-svn-id: https://luan-java.googlecode.com/svn/trunk@187 21e917c8-12df-6dd8-5cb6-c86387c605b9
author fschmidt@gmail.com <fschmidt@gmail.com@21e917c8-12df-6dd8-5cb6-c86387c605b9>
date Thu, 26 Jun 2014 00:36:50 +0000
parents bdbd4740121f
children 24ede40ee0aa
line wrap: on
line diff
--- a/core/src/luan/modules/PackageLuan.java	Wed Jun 25 07:06:16 2014 +0000
+++ b/core/src/luan/modules/PackageLuan.java	Thu Jun 26 00:36:50 2014 +0000
@@ -25,7 +25,7 @@
 			module.put("path","?.luan;java:luan/modules/?.luan");
 			module.put("jpath",jpath);
 			try {
-				add( module, "require", LuanState.class, String.class );
+				module.put("require",requireFn);
 				add( module, "load", LuanState.class, String.class );
 				add( module, "load_lib", String.class );
 				add( module, "search_path", String.class, String.class );
@@ -42,6 +42,15 @@
 		}
 	};
 
+	public static final LuanFunction requireFn;
+	static {
+		try {
+			requireFn = new LuanJavaFunction(PackageLuan.class.getMethod("require",LuanState.class,String.class),null);
+		} catch(NoSuchMethodException e) {
+			throw new RuntimeException(e);
+		}
+	}
+
 	private static void add(LuanTable t,String method,Class<?>... parameterTypes) throws NoSuchMethodException {
 		t.put( method, new LuanJavaFunction(PackageLuan.class.getMethod(method,parameterTypes),null) );
 	}