Selaa lähdekoodia

Lua : move some utility methods from Boot to a new Lib class

Justin Donaldson 9 vuotta sitten
vanhempi
commit
b6b9648d57
2 muutettua tiedostoa jossa 57 lisäystä ja 20 poistoa
  1. 0 20
      std/lua/Boot.hx
  2. 57 0
      std/lua/Lib.hx

+ 0 - 20
std/lua/Boot.hx

@@ -44,23 +44,6 @@ class Boot {
 	static function __unhtml(s : String)
 		return s.split("&").join("&amp;").split("<").join("&lt;").split(">").join("&gt;");
 
-	public static function patternQuote(str:String)
-		return lua.StringTools.gsub(str, "[%(%)%.%%%+%-%*%?%[%]%^%$]", function(c:String){ return "%" + c; });
-
-	public inline static function tableToArray<T>(t:Table<Int,T>, ?length:Int) : Array<T> {
-		if (length == null) length = Table.maxn(t);
-		return cast defArray(t,length);
-	}
-
-	public static function luaIteratorToArray<T>(itr:Void->T) : Array<T> {
-		var i: T = null;
-		var ret : Array<T> = [];
-		while({i = itr(); i != null;}){
-			ret.push(i);
-		}
-		return ret;
-	}
-
 	@:keep
 	public static function bind(o:Dynamic, m: Function) : Function{
 		if (m == null) return null;
@@ -152,9 +135,6 @@ class Boot {
 	}
 
 
-	public static function defArray(tab: Dynamic, length : Int) : Array<Dynamic>  untyped {
-		return untyped _hx_tabArray(tab, length);
-	}
 
 	public static function urlDecode(str:String){
 		str = lua.StringTools.gsub (str, "+", " ");

+ 57 - 0
std/lua/Lib.hx

@@ -0,0 +1,57 @@
+/*
+ * Copyright (C)2005-2016 Haxe Foundation
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+ * DEALINGS IN THE SOFTWARE.
+ */
+package lua;
+
+class Lib {
+
+	public static inline function println( v : Dynamic ) : Void {
+		lua.Lua.print(Std.string(v));
+	}
+	
+	public static inline function print(v:Dynamic) : Void {
+		lua.Io.write(Std.string(v));
+		lua.Io.flush();
+	}
+
+	public inline static function tableToArray<T>(t:Table<Int,T>, ?length:Int) : Array<T> {
+		if (length == null) length = Table.maxn(t);
+		return cast Lib.defArray(t,length);
+	}
+
+	public static function patternQuote(str:String) : String {
+		return lua.StringTools.gsub(str, "[%(%)%.%%%+%-%*%?%[%]%^%$]", function(c:String){ return "%" + c; });
+	}
+
+	public static function defArray<T>(tab: Table<Int,T>, length : Int) : Array<T> {
+		return untyped _hx_tabArray(tab, length);
+	}
+
+	public static function fillArray<T>(itr:Void->T) : Array<T> {
+		var i: T = null;
+		var ret : Array<T> = [];
+		while({i = itr(); i != null;}){
+			ret.push(i);
+		}
+		return ret;
+	}
+
+}