diff core/src/luan/impl/EqExpr.java @ 576:4723d22062ce

remove LuanBit
author Franklin Schmidt <fschmidt@gmail.com>
date Mon, 13 Jul 2015 20:38:26 -0600
parents b48cfa14ba60
children 859c0dedc8b6
line wrap: on
line diff
--- a/core/src/luan/impl/EqExpr.java	Mon Jul 13 18:34:31 2015 -0600
+++ b/core/src/luan/impl/EqExpr.java	Mon Jul 13 20:38:26 2015 -0600
@@ -6,7 +6,6 @@
 import luan.LuanTable;
 import luan.LuanException;
 import luan.LuanElement;
-import luan.LuanBit;
 
 
 final class EqExpr extends BinaryOpExpr {
@@ -45,9 +44,13 @@
 		Object f = mt1.rawGet("__eq");
 		if( f == null || !f.equals(mt2.rawGet("__eq")) )
 			return false;
-		LuanBit bit = luan.bit(el);
-		LuanFunction fn = bit.checkFunction(f);
-		return bit.checkBoolean( Luan.first(bit.call(fn,"__eq",new Object[]{o1,o2})) );
+		luan.push(el,"__eq");
+		try {
+			LuanFunction fn = luan.checkFunction(f);
+			return luan.checkBoolean( Luan.first(fn.call(luan,new Object[]{o1,o2})) );
+		} finally {
+			luan.pop();
+		}
 	}
 
 	@Override public String toString() {