q66 pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=81a1d9659a12d3bee981309a3b7eb3a695169f04

commit 81a1d9659a12d3bee981309a3b7eb3a695169f04
Author: Daniel Kolesa <d.kol...@osg.samsung.com>
Date:   Fri May 26 14:52:44 2017 +0200

    eolian: type_class_get takes unit
---
 src/bindings/luajit/eolian.lua     | 6 +++---
 src/lib/eolian/Eolian.h            | 3 ++-
 src/lib/eolian/database_type_api.c | 5 ++---
 src/lib/eolian/database_validate.c | 3 ++-
 4 files changed, 9 insertions(+), 8 deletions(-)

diff --git a/src/bindings/luajit/eolian.lua b/src/bindings/luajit/eolian.lua
index b59dc37f3d..19c91bdc4e 100644
--- a/src/bindings/luajit/eolian.lua
+++ b/src/bindings/luajit/eolian.lua
@@ -333,7 +333,7 @@ ffi.cdef [[
     const Eolian_Type *eolian_type_aliased_base_get(const Eolian_Type *tp);
     const Eolian_Type *eolian_typedecl_aliased_base_get(const Eolian_Typedecl 
*tp);
 
-    const Eolian_Class *eolian_type_class_get(const Eolian_Type *tp);
+    const Eolian_Class *eolian_type_class_get(const Eolian_Unit *unit, const 
Eolian_Type *tp);
     size_t eolian_type_array_size_get(const Eolian_Type *tp);
     Eina_Bool eolian_type_is_own(const Eolian_Type *tp);
     Eina_Bool eolian_type_is_const(const Eolian_Type *tp);
@@ -691,8 +691,8 @@ M.Type = ffi.metatype("Eolian_Type", {
             return v
         end,
 
-        class_get = function(self)
-            local v = eolian.eolian_type_class_get(self)
+        class_get = function(self, unit)
+            local v = eolian.eolian_type_class_get(unit, self)
             if v == nil then return nil end
             return v
         end,
diff --git a/src/lib/eolian/Eolian.h b/src/lib/eolian/Eolian.h
index 97c10d8280..13e4770c23 100644
--- a/src/lib/eolian/Eolian.h
+++ b/src/lib/eolian/Eolian.h
@@ -1808,12 +1808,13 @@ EAPI const Eolian_Type 
*eolian_type_aliased_base_get(const Eolian_Type *tp);
 /*
  * @brief Get the class associated with an EOLIAN_TYPE_CLASS type.
  *
+ * @param[in] unit the unit to look in
  * @param[in] tp the type.
  * @return the class or NULL.
  *
  * @ingroup Eolian
  */
-EAPI const Eolian_Class *eolian_type_class_get(const Eolian_Type *tp);
+EAPI const Eolian_Class *eolian_type_class_get(const Eolian_Unit *unit, const 
Eolian_Type *tp);
 
 /*
  * @brief Get the size of an EOLIAN_TYPE_STATIC_ARRAY.
diff --git a/src/lib/eolian/database_type_api.c 
b/src/lib/eolian/database_type_api.c
index ef9d397896..2c8fd9a133 100644
--- a/src/lib/eolian/database_type_api.c
+++ b/src/lib/eolian/database_type_api.c
@@ -311,13 +311,12 @@ eolian_typedecl_aliased_base_get(const Eolian_Typedecl 
*tp)
 }
 
 EAPI const Eolian_Class *
-eolian_type_class_get(const Eolian_Type *tp)
+eolian_type_class_get(const Eolian_Unit *unit, const Eolian_Type *tp)
 {
    EINA_SAFETY_ON_NULL_RETURN_VAL(tp, NULL);
    if (eolian_type_type_get(tp) != EOLIAN_TYPE_CLASS)
      return NULL;
-   /* FIXME: pass unit properly */
-   return eolian_class_get_by_name(NULL, tp->full_name);
+   return eolian_class_get_by_name(unit, tp->full_name);
 }
 
 EAPI size_t
diff --git a/src/lib/eolian/database_validate.c 
b/src/lib/eolian/database_validate.c
index f361ceac13..f8dac39aa5 100644
--- a/src/lib/eolian/database_validate.c
+++ b/src/lib/eolian/database_validate.c
@@ -154,7 +154,8 @@ _validate_type(const Eolian_Type *tp)
         return _validate_type(tp->base_type);
       case EOLIAN_TYPE_CLASS:
         {
-           if (!eolian_type_class_get(tp))
+           /* FIXME: pass unit properly */
+           if (!eolian_type_class_get(NULL, tp))
              {
                 char buf[256];
                 snprintf(buf, sizeof(buf), "undefined class %s "

-- 


Reply via email to