q66 pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=72b26fd49bb34f2468f80728476143e67f5b6477
commit 72b26fd49bb34f2468f80728476143e67f5b6477 Author: Daniel Kolesa <d.kol...@samsung.com> Date: Thu Feb 26 17:07:33 2015 +0000 elua: minor eo bindings optimization --- src/bindings/luajit/eo.lua | 37 ++++++++++++++++++------------------- 1 file changed, 18 insertions(+), 19 deletions(-) diff --git a/src/bindings/luajit/eo.lua b/src/bindings/luajit/eo.lua index 09add8b..37c483f 100644 --- a/src/bindings/luajit/eo.lua +++ b/src/bindings/luajit/eo.lua @@ -125,27 +125,28 @@ local eo local classes = {} local eo_classes = {} +local connect = function(self, ename, func) + local ev = self.__events[ename] + if not ev then + error("invalid event '" .. ename .. "'", 2) + end + local cl = eo_classes["Eo_Base"] + M.__do_start(self, cl) + eo.eo_event_callback_priority_add(ev, 0, + function(data, obj, desc, einfo) + return func(obj, einfo) ~= false + end, + nil) + M.__do_end() +end + local init = function() eo = util.lib_load("eo") eo.eo_init() local eocl = eo.eo_base_class_get() local addr = eo_class_addr_get(eocl) classes["Eo_Base"] = util.Object:clone { - connect = function(self, ename, func) - local ev = self.__events[ename] - if not ev then - error("invalid event '" .. ename .. "'", 2) - end - local cl = eo_classes["Eo_Base"] - M.__do_start(self, cl) - eo.eo_event_callback_priority_add(ev, 0, - function(data, obj, desc, einfo) - return func(obj, einfo) ~= false - end, - nil) - M.__do_end() - end, - + connect = connect, __events = util.Object:clone {}, __properties = util.Object:clone {} } @@ -224,10 +225,8 @@ end M.class_unregister = function(name) local addr = eo_class_addr_get(eo_classes[name]) - classes[name] = nil - classes[addr] = nil - eo_classes[name] = nil - eo_classes[addr] = nil + classes [name], classes [addr] = nil + eo_classes[name], eo_classes[addr] = nil end local obj_gccb = function(obj) --