q66 pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=85a135d32e26b29c842a37bb581ae0a7d0ab6d8a

commit 85a135d32e26b29c842a37bb581ae0a7d0ab6d8a
Author: Daniel Kolesa <[email protected]>
Date:   Wed Sep 24 13:37:26 2014 +0100

    elua: remove the eo_methods stuff, improve class registration
---
 src/bindings/luajit/eo.lua | 15 ++++-----------
 1 file changed, 4 insertions(+), 11 deletions(-)

diff --git a/src/bindings/luajit/eo.lua b/src/bindings/luajit/eo.lua
index e72db2a..a74bee4 100644
--- a/src/bindings/luajit/eo.lua
+++ b/src/bindings/luajit/eo.lua
@@ -137,11 +137,8 @@ M.class_get = function(name)
     return classes[name]
 end
 
-M.class_register = function(name, val, addr)
+M.class_register = function(name, val)
     classes[name] = val
-    if addr then
-        classes[tonumber(ffi.cast("intptr_t", addr))] = val
-    end
     return val
 end
 
@@ -181,24 +178,20 @@ M.__do_end = function()
                        -- only for cleanup (dtor)
 end
 
-local eo_methods = {
-}
-
 ffi.metatype("Eo", {
     __index = function(self, key)
-        local v = rawget(eo_methods, key)
-        if v ~= nil then return v end
         local cl = eo.eo_class_get(self)
         if cl == nil then return nil end
         local nm = eo.eo_class_name_get(cl)
         if nm == nil then return nil end
-        local mt == classes[nm]
+        local mt == classes[ffi.string(nm)]
         if mt == nil then return nil end
         return mt[key]
     end
 })
 
-M.Eo_Base = util.Object:clone {
+M.Base = util.Object:clone {
 }
+M.class_register("Eo.Base", M.Base)
 
 return M

-- 


Reply via email to