This makes sure the inner types are all correctly defined and
that freefuncs are actually correctly filled.
params {
idx: int;
}
- return: future<eina.value>;
+ return: future<any_value>;
}
@property exclusive_selection {
values {
+import efl_types;
+
class Efl.Observable (Efl.Object) {
[[Efl observable class]]
methods {
+import elm_general;
+
mixin Efl.Access.Action ()
{
[[Accessible action mixin]]
left, [[Activate left]]
back, [[Activate back]]
}
+
+/* FIXME: shouldn't exist */
+struct @extern Elm_Gen_Item;
+struct @extern Elm_Atspi_Action;
-type Elm_Atspi_Action: __undefined_type; [[Elementary AT-SPI action type]]
+import elm_general;
mixin Elm.Interface.Atspi_Widget_Action (Efl.Access.Action)
{
tp->freefunc = eina_stringshare_add(eo_complex_frees[
eo_lexer_keyword_str_to_id(tp->full_name) - KW_accessor]);
}
+ Eolian_Type *itp = tp->base_type;
+ /* validate types in brackets so freefuncs get written... */
+ while (itp)
+ {
+ if (!_validate_type(itp))
+ return EINA_FALSE;
+ itp = itp->next_type;
+ }
return EINA_TRUE;
}
Eolian_Typedecl *tpp;