eolian: refactoring step four

Move from all isntances of Eolian_Function_Parameter to Eolian_Function_Parameter* plus const fixes.
This commit is contained in:
Daniel Kolesa 2014-07-09 17:01:19 +01:00
parent c9119b0c88
commit 1a4f87d365
10 changed files with 81 additions and 87 deletions

View File

@ -106,7 +106,7 @@ eo_fundef_generate(const Eolian_Class *class, Eolian_Function func, Eolian_Funct
if (eina_list_count(l) == 1)
{
data = eina_list_data_get(l);
eolian_parameter_information_get((Eolian_Function_Parameter)data, NULL, &rettypet, NULL, NULL);
eolian_parameter_information_get((Eolian_Function_Parameter*)data, NULL, &rettypet, NULL, NULL);
var_as_ret = EINA_TRUE;
ret_const = eolian_parameter_const_attribute_get(data, EINA_TRUE);
}
@ -156,7 +156,7 @@ eo_fundef_generate(const Eolian_Class *class, Eolian_Function func, Eolian_Funct
const char *pname;
const char *ptype;
const char *pdesc = NULL;
eolian_parameter_information_get((Eolian_Function_Parameter)data, NULL, &ptypet, &pname, &pdesc);
eolian_parameter_information_get((Eolian_Function_Parameter*)data, NULL, &ptypet, &pname, &pdesc);
ptype = eolian_type_c_type_get(ptypet);
@ -177,7 +177,7 @@ eo_fundef_generate(const Eolian_Class *class, Eolian_Function func, Eolian_Funct
const char *pdesc;
Eina_Bool add_star = EINA_FALSE;
Eolian_Parameter_Dir pdir;
eolian_parameter_information_get((Eolian_Function_Parameter)data, &pdir, &ptypet, &pname, &pdesc);
eolian_parameter_information_get((Eolian_Function_Parameter*)data, &pdir, &ptypet, &pname, &pdesc);
ptype = eolian_type_c_type_get(ptypet);
@ -357,7 +357,7 @@ eo_bind_func_generate(const Eolian_Class *class, Eolian_Function funcid, Eolian_
if (eina_list_count(l) == 1)
{
void* data = eina_list_data_get(l);
eolian_parameter_information_get((Eolian_Function_Parameter)data, NULL, &rettypet, &retname, NULL);
eolian_parameter_information_get((Eolian_Function_Parameter*)data, NULL, &rettypet, &retname, NULL);
var_as_ret = EINA_TRUE;
ret_const = eolian_parameter_const_attribute_get(data, EINA_TRUE);
}
@ -376,7 +376,7 @@ eo_bind_func_generate(const Eolian_Class *class, Eolian_Function funcid, Eolian_
Eolian_Type ptypet;
const char *pname;
const char *ptype;
eolian_parameter_information_get((Eolian_Function_Parameter)data, NULL, &ptypet, &pname, NULL);
eolian_parameter_information_get((Eolian_Function_Parameter*)data, NULL, &ptypet, &pname, NULL);
ptype = eolian_type_c_type_get(ptypet);
@ -396,7 +396,7 @@ eo_bind_func_generate(const Eolian_Class *class, Eolian_Function funcid, Eolian_
const char *pname;
const char *ptype;
Eolian_Parameter_Dir pdir;
eolian_parameter_information_get((Eolian_Function_Parameter)data, &pdir, &ptypet, &pname, NULL);
eolian_parameter_information_get((Eolian_Function_Parameter*)data, &pdir, &ptypet, &pname, NULL);
ptype = eolian_type_c_type_get(ptypet);

View File

@ -11,7 +11,7 @@ static Eina_Bool
_params_generate(Eolian_Function foo, Eolian_Function_Type ftype, Eina_Bool var_as_ret, Eina_Strbuf *params, Eina_Strbuf *short_params)
{
const Eina_List *itr;
Eolian_Function_Parameter param;
Eolian_Function_Parameter *param;
eina_strbuf_reset(params);
eina_strbuf_reset(short_params);
EINA_LIST_FOREACH(eolian_property_keys_list_get(foo), itr, param)
@ -148,7 +148,7 @@ _prototype_generate(Eolian_Function foo, Eolian_Function_Type ftype, Eina_Strbuf
const Eina_List *l = eolian_parameters_list_get(foo);
if (eina_list_count(l) == 1)
{
Eolian_Function_Parameter param = eina_list_data_get(l);
Eolian_Function_Parameter *param = eina_list_data_get(l);
eolian_parameter_information_get(param, NULL, &rettypet, NULL, NULL);
var_as_ret = EINA_TRUE;
ret_const = eolian_parameter_const_attribute_get(param, EINA_TRUE);

View File

@ -74,7 +74,7 @@ _eapi_decl_func_generate(const Eolian_Class *class, Eolian_Function funcid, Eoli
if (eina_list_count(l) == 1)
{
data = eina_list_data_get(l);
eolian_parameter_information_get((Eolian_Function_Parameter)data, NULL, &rettypet, NULL, NULL);
eolian_parameter_information_get((Eolian_Function_Parameter*)data, NULL, &rettypet, NULL, NULL);
var_as_ret = EINA_TRUE;
ret_const = eolian_parameter_const_attribute_get(data, EINA_TRUE);
}
@ -110,7 +110,7 @@ _eapi_decl_func_generate(const Eolian_Class *class, Eolian_Function funcid, Eoli
const char *pname;
const char *pdesc;
const char *ptype;
eolian_parameter_information_get((Eolian_Function_Parameter)data, NULL, &ptypet, &pname, &pdesc);
eolian_parameter_information_get((Eolian_Function_Parameter*)data, NULL, &ptypet, &pname, &pdesc);
ptype = eolian_type_c_type_get(ptypet);
leg_param_idx++;
eina_strbuf_append_printf(fparam, ", %s%s %s",
@ -118,7 +118,7 @@ _eapi_decl_func_generate(const Eolian_Class *class, Eolian_Function funcid, Eoli
ptype, pname);
eina_stringshare_del(ptype);
eina_strbuf_append_printf(descparam, " * @param[in] %s %s\n", pname, pdesc?pdesc:"No description supplied.");
if (eolian_parameter_is_nonull((Eolian_Function_Parameter)data))
if (eolian_parameter_is_nonull((Eolian_Function_Parameter*)data))
{
if (!flags)
{
@ -139,7 +139,7 @@ _eapi_decl_func_generate(const Eolian_Class *class, Eolian_Function funcid, Eoli
const char *ptype;
Eolian_Parameter_Dir pdir;
const char *str_dir[] = {"in", "out", "inout"};
eolian_parameter_information_get((Eolian_Function_Parameter)data, &pdir, &ptypet, &pname, &pdesc);
eolian_parameter_information_get((Eolian_Function_Parameter*)data, &pdir, &ptypet, &pname, &pdesc);
ptype = eolian_type_c_type_get(ptypet);
Eina_Bool had_star = !!strchr(ptype, '*');
if (ftype == EOLIAN_UNRESOLVED || ftype == EOLIAN_METHOD) add_star = (pdir == EOLIAN_OUT_PARAM || pdir == EOLIAN_INOUT_PARAM);
@ -152,7 +152,7 @@ _eapi_decl_func_generate(const Eolian_Class *class, Eolian_Function funcid, Eoli
eina_stringshare_del(ptype);
const char *dir_str = str_dir[(int)pdir];
eina_strbuf_append_printf(descparam, " * @param[%s] %s %s\n", dir_str, pname, pdesc?pdesc:"No description supplied.");
if (eolian_parameter_is_nonull((Eolian_Function_Parameter)data))
if (eolian_parameter_is_nonull((Eolian_Function_Parameter*)data))
{
if (!flags)
{
@ -228,7 +228,7 @@ _eapi_func_generate(const Eolian_Class *class, Eolian_Function funcid, Eolian_Fu
if (eina_list_count(l) == 1)
{
void* data = eina_list_data_get(l);
eolian_parameter_information_get((Eolian_Function_Parameter)data, NULL, &rettypet, &retname, NULL);
eolian_parameter_information_get((Eolian_Function_Parameter*)data, NULL, &rettypet, &retname, NULL);
var_as_ret = EINA_TRUE;
ret_const = eolian_parameter_const_attribute_get(data, EINA_TRUE);
}
@ -257,7 +257,7 @@ _eapi_func_generate(const Eolian_Class *class, Eolian_Function funcid, Eolian_Fu
Eolian_Type ptypet;
const char *pname;
const char *ptype;
eolian_parameter_information_get((Eolian_Function_Parameter)data, NULL, &ptypet, &pname, NULL);
eolian_parameter_information_get((Eolian_Function_Parameter*)data, NULL, &ptypet, &pname, NULL);
ptype = eolian_type_c_type_get(ptypet);
eina_strbuf_append_printf(fparam, ", %s%s %s",
eolian_parameter_const_attribute_get(data, ftype == EOLIAN_PROP_GET)?"const ":"",
@ -274,7 +274,7 @@ _eapi_func_generate(const Eolian_Class *class, Eolian_Function funcid, Eolian_Fu
const char *pname;
const char *ptype;
Eolian_Parameter_Dir pdir;
eolian_parameter_information_get((Eolian_Function_Parameter)data, &pdir, &ptypet, &pname, NULL);
eolian_parameter_information_get((Eolian_Function_Parameter*)data, &pdir, &ptypet, &pname, NULL);
ptype = eolian_type_c_type_get(ptypet);
Eina_Bool had_star = !!strchr(ptype, '*');
if (ftype == EOLIAN_UNRESOLVED || ftype == EOLIAN_METHOD) add_star = (pdir == EOLIAN_OUT_PARAM || pdir == EOLIAN_INOUT_PARAM);

View File

@ -34,8 +34,8 @@ convert_eolian_parameters(Eina_List const* parameters,
efl::eolian::parameters_container_type list;
EINA_LIST_FOREACH (parameters, it, curr)
{
Eolian_Function_Parameter id =
(static_cast<Eolian_Function_Parameter>(curr));
const Eolian_Function_Parameter *id =
(static_cast<const Eolian_Function_Parameter*>(curr));
list.push_back
({
parameter_type(id, func_type),

View File

@ -5,7 +5,7 @@
namespace eolian_cxx {
static std::string
_comment_parameter(Eolian_Function_Parameter param)
_comment_parameter(Eolian_Function_Parameter *param)
{
Eolian_Parameter_Dir direction;
Eina_Stringshare *description;
@ -35,7 +35,7 @@ _comment_parameters_list(const Eina_List *params)
EINA_LIST_FOREACH (params, it, curr)
{
doc += _comment_parameter
(static_cast<Eolian_Function_Parameter>(curr)) + "\n";
(static_cast<Eolian_Function_Parameter*>(curr)) + "\n";
}
return doc;
}

View File

@ -234,13 +234,13 @@ property_is_setter(Eolian_Function const& func)
}
inline std::string
parameter_name(Eolian_Function_Parameter const& parameter)
parameter_name(Eolian_Function_Parameter const *& parameter)
{
return safe_strshare(::eolian_parameter_name_get(parameter)) + "_";
}
inline bool
parameter_is_out(Eolian_Function_Parameter const& parameter)
parameter_is_out(Eolian_Function_Parameter const *& parameter)
{
Eolian_Parameter_Dir direction;
::eolian_parameter_information_get(parameter, &direction, NULL, NULL, NULL);
@ -248,7 +248,7 @@ parameter_is_out(Eolian_Function_Parameter const& parameter)
}
inline bool
parameter_is_const(Eolian_Function_Parameter const& parameter,
parameter_is_const(Eolian_Function_Parameter const *& parameter,
Eolian_Function_Type func_type)
{
return ::eolian_parameter_const_attribute_get
@ -256,7 +256,7 @@ parameter_is_const(Eolian_Function_Parameter const& parameter,
}
inline bool
parameter_is_const(Eolian_Function_Parameter const& parameter,
parameter_is_const(Eolian_Function_Parameter const *& parameter,
getter_t func_type)
{
return ::eolian_parameter_const_attribute_get
@ -264,7 +264,7 @@ parameter_is_const(Eolian_Function_Parameter const& parameter,
}
inline bool
parameter_is_const(Eolian_Function_Parameter const& parameter,
parameter_is_const(Eolian_Function_Parameter const *& parameter,
setter_t func_type)
{
return ::eolian_parameter_const_attribute_get
@ -272,7 +272,7 @@ parameter_is_const(Eolian_Function_Parameter const& parameter,
}
inline bool
parameter_is_const(Eolian_Function_Parameter const& parameter,
parameter_is_const(Eolian_Function_Parameter const *& parameter,
Eolian_Function const& func)
{
assert(function_type(func) != EOLIAN_PROPERTY);
@ -281,7 +281,7 @@ parameter_is_const(Eolian_Function_Parameter const& parameter,
}
inline efl::eolian::eolian_type_instance
parameter_type(Eolian_Function_Parameter const& parameter,
parameter_type(Eolian_Function_Parameter const *& parameter,
Eolian_Function_Type func_type = method_t::value)
{
efl::eolian::eolian_type_instance type
@ -296,13 +296,13 @@ parameter_type(Eolian_Function_Parameter const& parameter,
}
inline efl::eolian::eolian_type_instance
parameter_type(Eolian_Function_Parameter const& parameter, getter_t func_type)
parameter_type(Eolian_Function_Parameter const *& parameter, getter_t func_type)
{
return parameter_type(parameter, func_type.value);
}
inline efl::eolian::eolian_type_instance
parameter_type(Eolian_Function_Parameter const& parameter, setter_t func_type)
parameter_type(Eolian_Function_Parameter const *& parameter, setter_t func_type)
{
return parameter_type(parameter, func_type.value);
}

View File

@ -60,7 +60,7 @@ typedef struct _Eolian_Type* Eolian_Type;
*
* @ingroup Eolian
*/
typedef struct _Eolian_Function_Parameter* Eolian_Function_Parameter;
typedef struct _Eolian_Function_Parameter Eolian_Function_Parameter;
/* Class implement information
*
@ -472,13 +472,13 @@ EAPI Eina_Bool eolian_function_is_virtual_pure(Eolian_Function function_id, Eoli
*
* @ingroup Eolian
*/
EAPI Eolian_Function_Parameter eolian_function_parameter_get(const Eolian_Function function_id, const char *param_name);
EAPI Eolian_Function_Parameter *eolian_function_parameter_get(const Eolian_Function function_id, const char *param_name);
/*
* @brief Returns a list of keys params of a given function.
*
* @param[in] function_id Id of the function
* @return list of Eolian_Function_Parameter
* @return list of Eolian_Function_Parameter*
*
* @ingroup Eolian
*/
@ -488,7 +488,7 @@ EAPI const Eina_List *eolian_property_keys_list_get(Eolian_Function foo_id);
* @brief Returns a list of values params of a given function.
*
* @param[in] function_id Id of the function
* @return list of Eolian_Function_Parameter
* @return list of Eolian_Function_Parameter*
*
* @ingroup Eolian
*/
@ -498,7 +498,7 @@ EAPI const Eina_List *eolian_property_values_list_get(Eolian_Function foo_id);
* @brief Returns a list of parameter handles for a method/ctor/dtor.
*
* @param[in] function_id Id of the function
* @return list of Eolian_Function_Parameter
* @return list of Eolian_Function_Parameter*
*
* @ingroup Eolian
*/
@ -515,7 +515,7 @@ EAPI const Eina_List *eolian_parameters_list_get(Eolian_Function function_id);
*
* @ingroup Eolian
*/
EAPI void eolian_parameter_information_get(const Eolian_Function_Parameter param_desc, Eolian_Parameter_Dir *param_dir, Eolian_Type *type, const char **name, const char **description);
EAPI void eolian_parameter_information_get(const Eolian_Function_Parameter *param_desc, Eolian_Parameter_Dir *param_dir, Eolian_Type *type, const char **name, const char **description);
/*
* @brief Get type of a parameter
@ -525,7 +525,7 @@ EAPI void eolian_parameter_information_get(const Eolian_Function_Parameter param
*
* @ingroup Eolian
*/
EAPI Eolian_Type eolian_parameter_type_get(const Eolian_Function_Parameter param);
EAPI Eolian_Type eolian_parameter_type_get(const Eolian_Function_Parameter *param);
/*
* @brief Get name of a parameter
@ -535,7 +535,7 @@ EAPI Eolian_Type eolian_parameter_type_get(const Eolian_Function_Parameter param
*
* @ingroup Eolian
*/
EAPI Eina_Stringshare *eolian_parameter_name_get(const Eolian_Function_Parameter param);
EAPI Eina_Stringshare *eolian_parameter_name_get(const Eolian_Function_Parameter *param);
/*
* @brief Indicates if a parameter has a const attribute.
@ -549,7 +549,7 @@ EAPI Eina_Stringshare *eolian_parameter_name_get(const Eolian_Function_Parameter
*
* @ingroup Eolian
*/
EAPI Eina_Bool eolian_parameter_const_attribute_get(Eolian_Function_Parameter param_desc, Eina_Bool is_get);
EAPI Eina_Bool eolian_parameter_const_attribute_get(const Eolian_Function_Parameter *param_desc, Eina_Bool is_get);
/*
* @brief Indicates if a parameter cannot be NULL.
@ -559,7 +559,7 @@ EAPI Eina_Bool eolian_parameter_const_attribute_get(Eolian_Function_Parameter pa
*
* @ingroup Eolian
*/
EAPI Eina_Bool eolian_parameter_is_nonull(Eolian_Function_Parameter param_desc);
EAPI Eina_Bool eolian_parameter_is_nonull(const Eolian_Function_Parameter *param_desc);
/*
* @brief Get the return type of a function.

View File

@ -1244,14 +1244,14 @@ _db_fill_class(Eo_Class_Def *kls, const char *filename)
database_function_scope_set(foo_id, prop->scope);
EINA_LIST_FOREACH(prop->keys, m, param)
{
Eolian_Function_Parameter p = database_property_key_add(
Eolian_Function_Parameter *p = database_property_key_add(
foo_id, (Eolian_Type)param->type, param->name, param->comment);
database_parameter_nonull_set(p, param->nonull);
param->type = NULL;
}
EINA_LIST_FOREACH(prop->values, m, param)
{
Eolian_Function_Parameter p = database_property_value_add(
Eolian_Function_Parameter *p = database_property_value_add(
foo_id, (Eolian_Type)param->type, param->name, param->comment);
database_parameter_nonull_set(p, param->nonull);
param->type = NULL;
@ -1285,7 +1285,7 @@ _db_fill_class(Eo_Class_Def *kls, const char *filename)
Eina_List *m2;
EINA_LIST_FOREACH(accessor->params, m2, acc_param)
{
Eolian_Function_Parameter desc = eolian_function_parameter_get(foo_id, acc_param->name);
Eolian_Function_Parameter *desc = eolian_function_parameter_get(foo_id, acc_param->name);
if (!desc)
{
printf("Error - %s not known as parameter of property %s\n", acc_param->name, prop->name);
@ -1328,7 +1328,7 @@ _db_fill_class(Eo_Class_Def *kls, const char *filename)
database_function_object_set_as_const(foo_id, meth->obj_const);
EINA_LIST_FOREACH(meth->params, m, param)
{
Eolian_Function_Parameter p = database_method_parameter_add(foo_id,
Eolian_Function_Parameter *p = database_method_parameter_add(foo_id,
(Eolian_Parameter_Dir)param->way, (Eolian_Type)param->type, param->name, param->comment);
database_parameter_nonull_set(p, param->nonull);
param->type = NULL;

View File

@ -51,8 +51,8 @@ typedef struct
typedef struct
{
Eina_Stringshare *name;
Eina_List *keys; /* list of _Eolian_Function_Parameter */
Eina_List *params; /* list of _Eolian_Function_Parameter */
Eina_List *keys; /* list of Eolian_Function_Parameter */
Eina_List *params; /* list of Eolian_Function_Parameter */
Eolian_Function_Type type;
Eolian_Function_Scope scope;
Eolian_Type get_ret_type;
@ -65,7 +65,7 @@ typedef struct
Eina_Bool set_return_warn_unused :1;
} _Eolian_Function;
typedef struct
typedef struct _Eolian_Function_Parameter
{
Eina_Stringshare *name;
Eolian_Type type;
@ -74,7 +74,7 @@ typedef struct
Eina_Bool is_const_on_get :1; /* True if const in this the get property */
Eina_Bool is_const_on_set :1; /* True if const in this the set property */
Eina_Bool nonull :1; /* True if this argument cannot be NULL */
} _Eolian_Function_Parameter;
} Eolian_Function_Parameter;
/* maps directly to Eo_Type_Def */
@ -119,7 +119,7 @@ typedef struct _Eolian_Event
} Eolian_Event;
static void
_param_del(_Eolian_Function_Parameter *pdesc)
_param_del(Eolian_Function_Parameter *pdesc)
{
eina_stringshare_del(pdesc->name);
@ -138,7 +138,7 @@ database_type_del(Eolian_Type type)
static void
_fid_del(_Eolian_Function *fid)
{
_Eolian_Function_Parameter *param;
Eolian_Function_Parameter *param;
if (!fid) return;
eina_stringshare_del(fid->name);
eina_hash_free(fid->data);
@ -776,10 +776,10 @@ eolian_function_data_get(Eolian_Function function_id, const char *key)
return eina_hash_find(fid->data, key);
}
static _Eolian_Function_Parameter *
static Eolian_Function_Parameter *
_parameter_new(Eolian_Type type, const char *name, const char *description)
{
_Eolian_Function_Parameter *param = NULL;
Eolian_Function_Parameter *param = NULL;
param = calloc(1, sizeof(*param));
param->name = eina_stringshare_add(name);
param->type = type;
@ -787,64 +787,64 @@ _parameter_new(Eolian_Type type, const char *name, const char *description)
return param;
}
Eolian_Function_Parameter
Eolian_Function_Parameter *
database_property_key_add(Eolian_Function foo_id, Eolian_Type type, const char *name, const char *description)
{
_Eolian_Function *fid = (_Eolian_Function *)foo_id;
EINA_SAFETY_ON_NULL_RETURN_VAL(fid, NULL);
_Eolian_Function_Parameter *param = _parameter_new(type, name, description);
Eolian_Function_Parameter *param = _parameter_new(type, name, description);
fid->keys = eina_list_append(fid->keys, param);
return (Eolian_Function_Parameter)param;
return param;
}
Eolian_Function_Parameter
Eolian_Function_Parameter *
database_property_value_add(Eolian_Function foo_id, Eolian_Type type, const char *name, const char *description)
{
_Eolian_Function *fid = (_Eolian_Function *)foo_id;
EINA_SAFETY_ON_NULL_RETURN_VAL(fid, NULL);
_Eolian_Function_Parameter *param = _parameter_new(type, name, description);
Eolian_Function_Parameter *param = _parameter_new(type, name, description);
fid->params = eina_list_append(fid->params, param);
return (Eolian_Function_Parameter)param;
return param;
}
Eolian_Function_Parameter
Eolian_Function_Parameter *
database_method_parameter_add(Eolian_Function foo_id, Eolian_Parameter_Dir param_dir, Eolian_Type type, const char *name, const char *description)
{
_Eolian_Function *fid = (_Eolian_Function *)foo_id;
EINA_SAFETY_ON_NULL_RETURN_VAL(fid, NULL);
_Eolian_Function_Parameter *param = _parameter_new(type, name, description);
Eolian_Function_Parameter *param = _parameter_new(type, name, description);
param->param_dir = param_dir;
fid->params = eina_list_append(fid->params, param);
return (Eolian_Function_Parameter)param;
return param;
}
EAPI Eolian_Function_Parameter
EAPI Eolian_Function_Parameter *
eolian_function_parameter_get(const Eolian_Function foo_id, const char *param_name)
{
_Eolian_Function *fid = (_Eolian_Function *)foo_id;
EINA_SAFETY_ON_NULL_RETURN_VAL(fid, NULL);
Eina_List *itr;
_Eolian_Function_Parameter *param;
Eolian_Function_Parameter *param;
EINA_LIST_FOREACH(fid->keys, itr, param)
if (!strcmp(param->name, param_name)) return (Eolian_Function_Parameter)param;
if (!strcmp(param->name, param_name)) return param;
EINA_LIST_FOREACH(fid->params, itr, param)
if (!strcmp(param->name, param_name)) return (Eolian_Function_Parameter)param;
if (!strcmp(param->name, param_name)) return param;
return NULL;
}
EAPI Eolian_Type
eolian_parameter_type_get(const Eolian_Function_Parameter param)
eolian_parameter_type_get(const Eolian_Function_Parameter *param)
{
EINA_SAFETY_ON_NULL_RETURN_VAL(param, NULL);
return ((_Eolian_Function_Parameter*)param)->type;
return param->type;
}
EAPI Eina_Stringshare *
eolian_parameter_name_get(const Eolian_Function_Parameter param)
eolian_parameter_name_get(const Eolian_Function_Parameter *param)
{
EINA_SAFETY_ON_NULL_RETURN_VAL(param, NULL);
eina_stringshare_ref(((_Eolian_Function_Parameter*)param)->name);
return ((_Eolian_Function_Parameter*)param)->name;
eina_stringshare_ref(param->name);
return param->name;
}
EAPI const Eina_List *
@ -871,9 +871,8 @@ eolian_parameters_list_get(Eolian_Function foo_id)
/* Get parameter information */
EAPI void
eolian_parameter_information_get(const Eolian_Function_Parameter param_desc, Eolian_Parameter_Dir *param_dir, Eolian_Type *type, const char **name, const char **description)
eolian_parameter_information_get(const Eolian_Function_Parameter *param, Eolian_Parameter_Dir *param_dir, Eolian_Type *type, const char **name, const char **description)
{
_Eolian_Function_Parameter *param = (_Eolian_Function_Parameter *)param_desc;
EINA_SAFETY_ON_NULL_RETURN(param);
if (param_dir) *param_dir = param->param_dir;
if (type) *type = param->type;
@ -882,9 +881,8 @@ eolian_parameter_information_get(const Eolian_Function_Parameter param_desc, Eol
}
void
database_parameter_const_attribute_set(Eolian_Function_Parameter param_desc, Eina_Bool is_get, Eina_Bool is_const)
database_parameter_const_attribute_set(Eolian_Function_Parameter *param, Eina_Bool is_get, Eina_Bool is_const)
{
_Eolian_Function_Parameter *param = (_Eolian_Function_Parameter *)param_desc;
EINA_SAFETY_ON_NULL_RETURN(param);
if (is_get)
param->is_const_on_get = is_const;
@ -893,17 +891,15 @@ database_parameter_const_attribute_set(Eolian_Function_Parameter param_desc, Ein
}
void
database_parameter_type_set(Eolian_Function_Parameter param_desc, Eolian_Type types)
database_parameter_type_set(Eolian_Function_Parameter *param, Eolian_Type types)
{
_Eolian_Function_Parameter *param = (_Eolian_Function_Parameter *)param_desc;
EINA_SAFETY_ON_NULL_RETURN(param);
param->type = types;
}
EAPI Eina_Bool
eolian_parameter_const_attribute_get(Eolian_Function_Parameter param_desc, Eina_Bool is_get)
eolian_parameter_const_attribute_get(const Eolian_Function_Parameter *param, Eina_Bool is_get)
{
_Eolian_Function_Parameter *param = (_Eolian_Function_Parameter *)param_desc;
EINA_SAFETY_ON_NULL_RETURN_VAL(param, EINA_FALSE);
if (is_get)
return param->is_const_on_get;
@ -912,17 +908,15 @@ eolian_parameter_const_attribute_get(Eolian_Function_Parameter param_desc, Eina_
}
void
database_parameter_nonull_set(Eolian_Function_Parameter param_desc, Eina_Bool nonull)
database_parameter_nonull_set(Eolian_Function_Parameter *param, Eina_Bool nonull)
{
_Eolian_Function_Parameter *param = (_Eolian_Function_Parameter *)param_desc;
EINA_SAFETY_ON_NULL_RETURN(param);
param->nonull = nonull;
}
EAPI Eina_Bool
eolian_parameter_is_nonull(Eolian_Function_Parameter param_desc)
eolian_parameter_is_nonull(const Eolian_Function_Parameter *param)
{
_Eolian_Function_Parameter *param = (_Eolian_Function_Parameter *)param_desc;
EINA_SAFETY_ON_NULL_RETURN_VAL(param, EINA_FALSE);
return param->nonull;
}
@ -1526,7 +1520,7 @@ static Eina_Bool _function_print(const _Eolian_Function *fid, int nb_spaces)
return EINA_FALSE;
}
Eina_List *itr;
_Eolian_Function_Parameter *param;
Eolian_Function_Parameter *param;
EINA_LIST_FOREACH(fid->params, itr, param)
{
char *param_dir = NULL;

View File

@ -85,19 +85,19 @@ void database_function_data_set(Eolian_Function function_id, const char *key, co
#define database_function_description_set(foo_id, key, desc) database_function_data_set((foo_id), (key), (desc))
/* Add a key to a property */
Eolian_Function_Parameter database_property_key_add(Eolian_Function foo_id, Eolian_Type type, const char *name, const char *description);
Eolian_Function_Parameter *database_property_key_add(Eolian_Function foo_id, Eolian_Type type, const char *name, const char *description);
/* Add a value to a property */
Eolian_Function_Parameter database_property_value_add(Eolian_Function foo_id, Eolian_Type type, const char *name, const char *description);
Eolian_Function_Parameter *database_property_value_add(Eolian_Function foo_id, Eolian_Type type, const char *name, const char *description);
/* Add a parameter to a method */
Eolian_Function_Parameter database_method_parameter_add(Eolian_Function foo_id, Eolian_Parameter_Dir param_dir, Eolian_Type type, const char *name, const char *description);
Eolian_Function_Parameter *database_method_parameter_add(Eolian_Function foo_id, Eolian_Parameter_Dir param_dir, Eolian_Type type, const char *name, const char *description);
void database_type_del(Eolian_Type type);
void database_parameter_const_attribute_set(Eolian_Function_Parameter param_desc, Eina_Bool is_get, Eina_Bool is_const);
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, Eina_Bool nonull);
void database_parameter_nonull_set(Eolian_Function_Parameter *param, Eina_Bool nonull);
void database_function_return_type_set(Eolian_Function foo_id, Eolian_Function_Type ftype, Eolian_Type ret_type);