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;
|
||||
self->r = self->g = self->b = 0;
|
||||
return eo_constructor(eo_super(obj, MY_CLASS));
|
||||
return efl_constructor(efl_super(obj, MY_CLASS));
|
||||
}
|
||||
|
||||
void
|
||||
_colourable_eo_base_destructor(Eo *obj, Colourable_Data *self EINA_UNUSED)
|
||||
{
|
||||
EINA_CXX_DOM_LOG_DBG(domain) << __func__ << std::endl;
|
||||
eo_destructor(eo_super(obj, MY_CLASS));
|
||||
efl_destructor(efl_super(obj, MY_CLASS));
|
||||
}
|
||||
|
||||
void
|
||||
|
|
|
@ -424,7 +424,7 @@ struct function_def
|
|||
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;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue