2014-09-23 12:48:16 -07:00
|
|
|
#ifdef HAVE_CONFIG_H
|
|
|
|
# include "config.h"
|
|
|
|
#endif
|
|
|
|
|
2014-07-10 05:13:46 -07:00
|
|
|
#include <Eina.h>
|
|
|
|
#include "eolian_database.h"
|
|
|
|
|
2019-09-26 07:56:13 -07:00
|
|
|
EAPI Eolian_Parameter_Direction
|
2014-08-13 06:08:00 -07:00
|
|
|
eolian_parameter_direction_get(const Eolian_Function_Parameter *param)
|
|
|
|
{
|
2019-09-26 07:56:13 -07:00
|
|
|
EINA_SAFETY_ON_NULL_RETURN_VAL(param, EOLIAN_PARAMETER_UNKNOWN);
|
2014-08-13 06:08:00 -07:00
|
|
|
return param->param_dir;
|
|
|
|
}
|
|
|
|
|
2014-07-10 05:13:46 -07:00
|
|
|
EAPI const Eolian_Type *
|
|
|
|
eolian_parameter_type_get(const Eolian_Function_Parameter *param)
|
|
|
|
{
|
|
|
|
EINA_SAFETY_ON_NULL_RETURN_VAL(param, NULL);
|
|
|
|
return param->type;
|
|
|
|
}
|
|
|
|
|
2014-09-02 02:47:38 -07:00
|
|
|
EAPI const Eolian_Expression *
|
|
|
|
eolian_parameter_default_value_get(const Eolian_Function_Parameter *param)
|
|
|
|
{
|
|
|
|
EINA_SAFETY_ON_NULL_RETURN_VAL(param, NULL);
|
|
|
|
return param->value;
|
|
|
|
}
|
|
|
|
|
2015-06-03 08:16:53 -07:00
|
|
|
EAPI const Eolian_Documentation *
|
|
|
|
eolian_parameter_documentation_get(const Eolian_Function_Parameter *param)
|
|
|
|
{
|
|
|
|
EINA_SAFETY_ON_NULL_RETURN_VAL(param, NULL);
|
|
|
|
return param->doc;
|
|
|
|
}
|
|
|
|
|
2015-02-12 05:24:06 -08:00
|
|
|
EAPI Eina_Bool
|
|
|
|
eolian_parameter_is_optional(const Eolian_Function_Parameter *param)
|
|
|
|
{
|
|
|
|
EINA_SAFETY_ON_NULL_RETURN_VAL(param, EINA_FALSE);
|
|
|
|
return param->optional;
|
|
|
|
}
|
2019-08-30 08:04:44 -07:00
|
|
|
|
|
|
|
EAPI Eina_Bool
|
|
|
|
eolian_parameter_is_move(const Eolian_Function_Parameter *param)
|
|
|
|
{
|
|
|
|
EINA_SAFETY_ON_NULL_RETURN_VAL(param, EINA_FALSE);
|
|
|
|
return param->move;
|
|
|
|
}
|
|
|
|
|
|
|
|
EAPI Eina_Bool
|
|
|
|
eolian_parameter_is_by_ref(const Eolian_Function_Parameter *param)
|
|
|
|
{
|
|
|
|
EINA_SAFETY_ON_NULL_RETURN_VAL(param, EINA_FALSE);
|
|
|
|
return param->by_ref;
|
|
|
|
}
|
2019-09-04 06:56:32 -07:00
|
|
|
|
|
|
|
EAPI Eina_Stringshare *
|
|
|
|
eolian_parameter_c_type_get(const Eolian_Function_Parameter *param_desc,
|
|
|
|
Eina_Bool as_return)
|
|
|
|
{
|
|
|
|
EINA_SAFETY_ON_NULL_RETURN_VAL(param_desc, NULL);
|
|
|
|
Eina_Strbuf *buf = eina_strbuf_new();
|
|
|
|
database_type_to_str(param_desc->type, buf, NULL,
|
|
|
|
as_return ? EOLIAN_C_TYPE_RETURN : EOLIAN_C_TYPE_PARAM,
|
|
|
|
param_desc->by_ref);
|
|
|
|
Eina_Stringshare *ret = eina_stringshare_add(eina_strbuf_string_get(buf));
|
|
|
|
eina_strbuf_free(buf);
|
|
|
|
return ret;
|
|
|
|
}
|