eolian: remove the remaining superfluous database_ functions
authorDaniel Kolesa <d.kolesa@samsung.com>
Fri, 15 Aug 2014 13:14:43 +0000 (14:14 +0100)
committerDaniel Kolesa <d.kolesa@samsung.com>
Thu, 21 Aug 2014 08:26:05 +0000 (09:26 +0100)
src/lib/eolian/database_class.c
src/lib/eolian/database_fill.c
src/lib/eolian/database_function_parameter.c
src/lib/eolian/database_implement_api.c
src/lib/eolian/eolian_database.h

index a93a104..a8e31ed 100644 (file)
@@ -68,133 +68,3 @@ database_class_add(const char *class_name, Eolian_Class_Type type)
    free(full_name);
    return cl;
 }
-
-/*
- * ret false -> clash, class = NULL
- * ret true && class -> only one class corresponding
- * ret true && !class -> no class corresponding
- */
-Eina_Bool database_class_name_validate(const char *class_name, const Eolian_Class **cl)
-{
-   char *name = strdup(class_name);
-   char *colon = name + 1;
-   const Eolian_Class *found_class = NULL;
-   const Eolian_Class *candidate;
-   if (cl) *cl = NULL;
-   do
-     {
-        colon = strchr(colon, '.');
-        if (colon) *colon = '\0';
-        candidate = eolian_class_get_by_name(name);
-        if (candidate)
-          {
-             if (found_class)
-               {
-                  ERR("Name clash between class %s and class %s",
-                        candidate->full_name,
-                        found_class->full_name);
-                  free(name);
-                  return EINA_FALSE; // Names clash
-               }
-             found_class = candidate;
-          }
-        if (colon) *colon++ = '.';
-     }
-   while(colon);
-   if (cl) *cl = found_class;
-   free(name);
-   return EINA_TRUE;
-}
-
-Eina_Bool
-database_class_inherit_add(Eolian_Class *cl, const char *inherit_class_name)
-{
-   EINA_SAFETY_ON_NULL_RETURN_VAL(cl, EINA_FALSE);
-   cl->inherits = eina_list_append(cl->inherits, eina_stringshare_add(inherit_class_name));
-   return EINA_TRUE;
-}
-
-void
-database_class_description_set(Eolian_Class *cl, const char *description)
-{
-   EINA_SAFETY_ON_NULL_RETURN(cl);
-   cl->description = eina_stringshare_add(description);
-}
-
-void
-database_class_legacy_prefix_set(Eolian_Class *cl, const char *legacy_prefix)
-{
-   EINA_SAFETY_ON_NULL_RETURN(cl);
-   cl->legacy_prefix = eina_stringshare_add(legacy_prefix);
-}
-
-void
-database_class_eo_prefix_set(Eolian_Class *cl, const char *eo_prefix)
-{
-   EINA_SAFETY_ON_NULL_RETURN(cl);
-   cl->eo_prefix = eina_stringshare_add(eo_prefix);
-}
-
-void
-database_class_data_type_set(Eolian_Class *cl, const char *data_type)
-{
-   EINA_SAFETY_ON_NULL_RETURN(cl);
-   cl->data_type = eina_stringshare_add(data_type);
-}
-
-Eina_Bool database_class_function_add(Eolian_Class *cl, Eolian_Function *fid)
-{
-   EINA_SAFETY_ON_NULL_RETURN_VAL(cl, EINA_FALSE);
-   EINA_SAFETY_ON_FALSE_RETURN_VAL(fid && cl, EINA_FALSE);
-   switch (fid->type)
-     {
-      case EOLIAN_PROPERTY:
-      case EOLIAN_PROP_SET:
-      case EOLIAN_PROP_GET:
-         cl->properties = eina_list_append(cl->properties, fid);
-         break;
-      case EOLIAN_METHOD:
-         cl->methods = eina_list_append(cl->methods, fid);
-         break;
-      case EOLIAN_CTOR:
-         cl->constructors = eina_list_append(cl->constructors, fid);
-         break;
-      default:
-         ERR("Bad function type %d.", fid->type);
-         return EINA_FALSE;
-     }
-   return EINA_TRUE;
-}
-
-Eina_Bool
-database_class_implement_add(Eolian_Class *cl, Eolian_Implement *impl_desc)
-{
-   EINA_SAFETY_ON_NULL_RETURN_VAL(impl_desc, EINA_FALSE);
-   EINA_SAFETY_ON_NULL_RETURN_VAL(cl, EINA_FALSE);
-   cl->implements = eina_list_append(cl->implements, impl_desc);
-   return EINA_TRUE;
-}
-
-Eina_Bool
-database_class_event_add(Eolian_Class *cl, Eolian_Event *event_desc)
-{
-   EINA_SAFETY_ON_FALSE_RETURN_VAL(event_desc && cl, EINA_FALSE);
-   cl->events = eina_list_append(cl->events, event_desc);
-   return EINA_TRUE;
-}
-
-Eina_Bool
-database_class_ctor_enable_set(Eolian_Class *cl, Eina_Bool enable)
-{
-   EINA_SAFETY_ON_NULL_RETURN_VAL(cl, EINA_FALSE);
-   cl->class_ctor_enable = enable;
-   return EINA_TRUE;
-}
-
-Eina_Bool
-database_class_dtor_enable_set(Eolian_Class *cl, Eina_Bool enable)
-{
-   EINA_SAFETY_ON_NULL_RETURN_VAL(cl, EINA_FALSE);
-   cl->class_dtor_enable = enable;
-   return EINA_TRUE;
-}
index e3745f6..6135fd2 100644 (file)
@@ -7,7 +7,7 @@ _db_fill_key(Eolian_Function *foo_id, Eo_Param_Def *param)
                                                          param->name,
                                                          param->comment);
    foo_id->keys = eina_list_append(foo_id->keys, p);
-   database_parameter_nonull_set(p, param->nonull);
+   p->nonull = param->nonull;
    param->type = NULL;
 
    p->base = param->base;
@@ -35,7 +35,7 @@ _db_fill_value(Eolian_Function *foo_id, Eo_Param_Def *param)
                                                          param->name,
                                                          param->comment);
    foo_id->params = eina_list_append(foo_id->params, p);
-   database_parameter_nonull_set(p, param->nonull);
+   p->nonull = param->nonull;
    param->type = NULL;
 
    p->base = param->base;
@@ -64,7 +64,7 @@ _db_fill_param(Eolian_Function *foo_id, Eo_Param_Def *param)
                                                          param->comment);
    p->param_dir = param->way;
    foo_id->params = eina_list_append(foo_id->params, p);
-   database_parameter_nonull_set(p, param->nonull);
+   p->nonull = param->nonull;
    param->type = NULL;
 
    p->base = param->base;
@@ -145,9 +145,10 @@ _db_fill_accessor(Eolian_Function *foo_id, Eo_Class_Def *kls,
           }
         else if (acc_param->is_const)
           {
-             database_parameter_const_attribute_set(desc,
-                                                    accessor->type == GETTER,
-                                                    EINA_TRUE);
+             if (accessor->type == GETTER)
+               desc->is_const_on_get = EINA_TRUE;
+             else
+               desc->is_const_on_set = EINA_TRUE;
           }
      }
 
@@ -205,7 +206,7 @@ _db_fill_property(Eolian_Class *cl, Eo_Class_Def *kls, Eo_Property_Def *prop)
         prop->base.file = NULL;
      }
 
-   database_class_function_add(cl, foo_id);
+   cl->properties = eina_list_append(cl->properties, foo_id);
 
    return EINA_TRUE;
 
@@ -233,7 +234,7 @@ _db_fill_method(Eolian_Class *cl, Eo_Class_Def *kls, Eo_Method_Def *meth)
 
    foo_id->scope = meth->scope;
 
-   database_class_function_add(cl, foo_id);
+   cl->methods = eina_list_append(cl->methods, foo_id);
 
    if (meth->ret)
      {
@@ -278,7 +279,7 @@ _db_fill_ctor(Eolian_Class *cl, Eo_Method_Def *meth)
 {
    Eolian_Function *foo_id = database_function_new(meth->name, EOLIAN_CTOR);
 
-   database_class_function_add(cl, foo_id);
+   cl->constructors = eina_list_append(cl->constructors, foo_id);
 
    if (meth->ret)
      foo_id->get_return_comment = eina_stringshare_ref(meth->ret->comment);
@@ -312,13 +313,13 @@ _db_fill_implement(Eolian_Class *cl, Eolian_Implement *impl)
 
    if (!strcmp(impl_name, "class.constructor"))
      {
-        database_class_ctor_enable_set(cl, EINA_TRUE);
+        cl->class_ctor_enable = EINA_TRUE;
         return 1;
      }
 
    if (!strcmp(impl_name, "class.destructor"))
      {
-        database_class_dtor_enable_set(cl, EINA_TRUE);
+        cl->class_dtor_enable = EINA_TRUE;
         return 1;
      }
 
@@ -361,7 +362,7 @@ _db_fill_implement(Eolian_Class *cl, Eolian_Implement *impl)
           foo_id->get_virtual_pure = EINA_TRUE;
         return 1;
      }
-   database_class_implement_add(cl, impl);
+   cl->implements = eina_list_append(cl->implements, impl);
    return 0;
 }
 
@@ -390,7 +391,7 @@ _db_fill_events(Eolian_Class *cl, Eo_Class_Def *kls)
 
    EINA_LIST_FOREACH(kls->events, l, event)
      {
-        database_class_event_add(cl, event);
+        cl->events = eina_list_append(cl->events, event);
         eina_list_data_set(l, NULL); /* prevent double free */
      }
 
@@ -407,27 +408,17 @@ _db_fill_class(Eo_Class_Def *kls)
    eina_hash_set(_classesf, kls->base.file, cl);
 
    if (kls->comment)
-     {
-        database_class_description_set(cl, kls->comment);
-     }
+     cl->description = eina_stringshare_ref(kls->comment);
 
    EINA_LIST_FOREACH(kls->inherits, l, s)
-     {
-        database_class_inherit_add(cl, s);
-     }
+     cl->inherits = eina_list_append(cl->inherits, eina_stringshare_add(s));
 
    if (kls->legacy_prefix)
-     {
-        database_class_legacy_prefix_set(cl, kls->legacy_prefix);
-     }
+     cl->legacy_prefix = eina_stringshare_ref(kls->legacy_prefix);
    if (kls->eo_prefix)
-     {
-        database_class_eo_prefix_set(cl, kls->eo_prefix);
-     }
+     cl->eo_prefix = eina_stringshare_ref(kls->eo_prefix);
    if (kls->data_type)
-     {
-        database_class_data_type_set(cl, kls->data_type);
-     }
+     cl->data_type = eina_stringshare_ref(kls->data_type);
 
    if (!_db_fill_ctors     (cl, kls)) return EINA_FALSE;
    if (!_db_fill_properties(cl, kls)) return EINA_FALSE;
index fde8c86..d649816 100644 (file)
@@ -22,27 +22,3 @@ database_parameter_del(Eolian_Function_Parameter *pdesc)
    eina_stringshare_del(pdesc->description);
    free(pdesc);
 }
-
-void
-database_parameter_const_attribute_set(Eolian_Function_Parameter *param, Eina_Bool is_get, Eina_Bool is_const)
-{
-   EINA_SAFETY_ON_NULL_RETURN(param);
-   if (is_get)
-      param->is_const_on_get = is_const;
-   else
-      param->is_const_on_set = is_const;
-}
-
-void
-database_parameter_type_set(Eolian_Function_Parameter *param, Eolian_Type *types)
-{
-   EINA_SAFETY_ON_NULL_RETURN(param);
-   param->type = types;
-}
-
-void
-database_parameter_nonull_set(Eolian_Function_Parameter *param, Eina_Bool nonull)
-{
-   EINA_SAFETY_ON_NULL_RETURN(param);
-   param->nonull = nonull;
-}
index 437d22d..d668b3f 100644 (file)
@@ -8,13 +8,51 @@ eolian_implement_full_name_get(const Eolian_Implement *impl)
    return impl->full_name;
 }
 
+/*
+ * ret false -> clash, class = NULL
+ * ret true && class -> only one class corresponding
+ * ret true && !class -> no class corresponding
+ */
+static Eina_Bool
+_class_name_validate(const char *class_name, const Eolian_Class **cl)
+{
+   char *name = strdup(class_name);
+   char *colon = name + 1;
+   const Eolian_Class *found_class = NULL;
+   const Eolian_Class *candidate;
+   if (cl) *cl = NULL;
+   do
+     {
+        colon = strchr(colon, '.');
+        if (colon) *colon = '\0';
+        candidate = eolian_class_get_by_name(name);
+        if (candidate)
+          {
+             if (found_class)
+               {
+                  ERR("Name clash between class %s and class %s",
+                        candidate->full_name,
+                        found_class->full_name);
+                  free(name);
+                  return EINA_FALSE; // Names clash
+               }
+             found_class = candidate;
+          }
+        if (colon) *colon++ = '.';
+     }
+   while(colon);
+   if (cl) *cl = found_class;
+   free(name);
+   return EINA_TRUE;
+}
+
 static Eina_Bool
 _fill_class(Eolian_Implement *impl)
 {
    const Eolian_Class *class = NULL;
    if (impl->klass)
      return EINA_TRUE;
-   if (!database_class_name_validate(impl->full_name, &class) || !class)
+   if (!_class_name_validate(impl->full_name, &class) || !class)
      return EINA_FALSE;
    impl->klass = class;
    return EINA_TRUE;
index 35290f5..baec897 100644 (file)
@@ -262,6 +262,8 @@ struct _Eolian_Variable
 int database_init();
 int database_shutdown();
 
+char *database_class_to_filename(const char *cname);
+
 /* types */
 
 Eina_Bool database_type_add(Eolian_Type *def);
@@ -289,22 +291,6 @@ Eina_Bool database_var_add(Eolian_Variable *var);
 Eolian_Class *database_class_add(const char *class_name, Eolian_Class_Type type);
 void database_class_del(Eolian_Class *cl);
 
-char *database_class_to_filename(const char *cname);
-
-Eina_Bool database_class_inherit_add(Eolian_Class *cl, const char *inherit_class_name);
-Eina_Bool database_class_function_add(Eolian_Class *cl, Eolian_Function *foo_id);
-Eina_Bool database_class_implement_add(Eolian_Class *cl, Eolian_Implement *impl_id);
-Eina_Bool database_class_event_add(Eolian_Class *cl, Eolian_Event *event_desc);
-
-void database_class_description_set(Eolian_Class *cl, const char *description);
-void database_class_legacy_prefix_set(Eolian_Class *cl, const char *legacy_prefix);
-void database_class_eo_prefix_set(Eolian_Class *cl, const char *eo_prefix);
-void database_class_data_type_set(Eolian_Class *cl, const char *data_type);
-Eina_Bool database_class_ctor_enable_set(Eolian_Class *cl, Eina_Bool enable);
-Eina_Bool database_class_dtor_enable_set(Eolian_Class *cl, Eina_Bool enable);
-
-Eina_Bool database_class_name_validate(const char *class_name, const Eolian_Class **cl);
-
 /* functions */
 
 Eolian_Function *database_function_new(const char *function_name, Eolian_Function_Type foo_type);
@@ -315,9 +301,6 @@ void database_function_del(Eolian_Function *fid);
 Eolian_Function_Parameter *database_parameter_add(Eolian_Type *type, const char *name, const char *description);
 void database_parameter_del(Eolian_Function_Parameter *pdesc);
 
-void database_parameter_const_attribute_set(Eolian_Function_Parameter *param, Eina_Bool is_get, Eina_Bool is_const);
-void database_parameter_nonull_set(Eolian_Function_Parameter *param, Eina_Bool nonull);
-
 /* implements */
 
 void database_implement_del(Eolian_Implement *impl);