Mercurial Hosting > luan
diff core/src/luan/impl/EqExpr.java @ 404:d55e873e1f0d
metatables now only apply to tables
author | Franklin Schmidt <fschmidt@gmail.com> |
---|---|
date | Wed, 29 Apr 2015 07:04:40 -0600 |
parents | 17b02b56d806 |
children | 23a93c118042 |
line wrap: on
line diff
--- a/core/src/luan/impl/EqExpr.java Tue Apr 28 22:49:33 2015 -0600 +++ b/core/src/luan/impl/EqExpr.java Wed Apr 29 07:04:40 2015 -0600 @@ -34,10 +34,12 @@ byte[] b2 = (byte[])o2; return Arrays.equals(b1,b2); } - if( o1==null || o2==null || !o1.getClass().equals(o2.getClass()) ) + if( !(o1 instanceof LuanTable && o2 instanceof LuanTable) ) return false; - LuanTable mt1 = luan.getMetatable(o1); - LuanTable mt2 = luan.getMetatable(o2); + LuanTable t1 = (LuanTable)o1; + LuanTable t2 = (LuanTable)o2; + LuanTable mt1 = t1.getMetatable(); + LuanTable mt2 = t2.getMetatable(); if( mt1==null || mt2==null ) return false; Object f = mt1.get("__eq");