diff core/src/luan/LuanBit.java @ 416:91af5337b9ae

add LuanMeta.__tostring()
author Franklin Schmidt <fschmidt@gmail.com>
date Thu, 30 Apr 2015 06:28:25 -0600
parents d55e873e1f0d
children 8fbb961aabd5
line wrap: on
line diff
--- a/core/src/luan/LuanBit.java	Thu Apr 30 06:04:17 2015 -0600
+++ b/core/src/luan/LuanBit.java	Thu Apr 30 06:28:25 2015 -0600
@@ -89,7 +89,13 @@
 
 	public String toString(Object obj) throws LuanException {
 		if( obj instanceof LuanTable ) {
-			LuanFunction fn = getHandlerFunction("__tostring",(LuanTable)obj);
+			LuanTable tbl = (LuanTable)obj;
+			Object h = luan.getHandler("__tostring",tbl);
+			if( h instanceof LuanMeta ) {
+				LuanMeta meta = (LuanMeta)h;
+				return meta.__tostring(luan,tbl);
+			}
+			LuanFunction fn = checkFunction(h);
 			if( fn != null )
 				return checkString( Luan.first( call(fn,"__tostring",new Object[]{obj}) ) );
 		}