eolian_cxx: Fix behavior with explicit void return
Only perform the single value/return type substitution on properties if the void return type is implicit (i.e. NULL return from function_return_type_get), following the eolian-C implementation as we use the generated headers. Also update example after Eo-Efl changes.
This commit is contained in:
parent
7828d0e072
commit
16986ffc7a
|
@ -24,14 +24,14 @@ _colourable_eo_base_constructor(Eo *obj, Colourable_Data *self)
|
||||||
{
|
{
|
||||||
EINA_CXX_DOM_LOG_DBG(domain) << __func__ << std::endl;
|
EINA_CXX_DOM_LOG_DBG(domain) << __func__ << std::endl;
|
||||||
self->r = self->g = self->b = 0;
|
self->r = self->g = self->b = 0;
|
||||||
return eo_constructor(eo_super(obj, MY_CLASS));
|
return efl_constructor(efl_super(obj, MY_CLASS));
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
_colourable_eo_base_destructor(Eo *obj, Colourable_Data *self EINA_UNUSED)
|
_colourable_eo_base_destructor(Eo *obj, Colourable_Data *self EINA_UNUSED)
|
||||||
{
|
{
|
||||||
EINA_CXX_DOM_LOG_DBG(domain) << __func__ << std::endl;
|
EINA_CXX_DOM_LOG_DBG(domain) << __func__ << std::endl;
|
||||||
eo_destructor(eo_super(obj, MY_CLASS));
|
efl_destructor(efl_super(obj, MY_CLASS));
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
|
|
|
@ -424,7 +424,7 @@ struct function_def
|
||||||
values.push_back(&*param_iterator);
|
values.push_back(&*param_iterator);
|
||||||
}
|
}
|
||||||
|
|
||||||
if(type == EOLIAN_PROP_GET && values.size() == 1 && return_type == void_)
|
if(!r_type && type == EOLIAN_PROP_GET && values.size() == 1)
|
||||||
{
|
{
|
||||||
return_type = values[0].type;
|
return_type = values[0].type;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue