fdef->type = tp;
fdef->name = eina_stringshare_ref(fname);
pop_type(ls);
- if ((fdef->owned = (ls->t.kw == KW_at_owned)))
+ if ((fdef->type->owned = (ls->t.kw == KW_at_owned)))
eo_lexer_get(ls);
check_next(ls, ';');
FILL_DOC(ls, fdef, doc);
break;
case KW_at_owned:
CASE_LOCK(ls, owned, "owned qualifier");
- par->owned = EINA_TRUE;
+ par->type->owned = EINA_TRUE;
eo_lexer_get(ls);
break;
default:
prop->get_return_doc = ret.doc;
prop->get_ret_val = ret.default_ret_val;
prop->get_return_warn_unused = ret.warn_unused;
- prop->get_return_owned = ret.owned;
+ prop->get_ret_type->owned = ret.owned;
}
else
{
prop->set_return_doc = ret.doc;
prop->set_ret_val = ret.default_ret_val;
prop->set_return_warn_unused = ret.warn_unused;
- prop->set_return_owned = ret.owned;
+ prop->set_ret_type->owned = ret.owned;
}
break;
case KW_legacy:
meth->get_return_doc = ret.doc;
meth->get_ret_val = NULL;
meth->get_return_warn_unused = EINA_FALSE;
- meth->get_return_owned = EINA_FALSE;
break;
case KW_params:
CASE_LOCK(ls, params, "params definition");
meth->get_return_doc = ret.doc;
meth->get_ret_val = ret.default_ret_val;
meth->get_return_warn_unused = ret.warn_unused;
- meth->get_return_owned = ret.owned;
+ meth->get_ret_type->owned = ret.owned;
break;
case KW_legacy:
CASE_LOCK(ls, legacy, "legacy name")
break;
case KW_at_owned:
CASE_LOCK(ls, owned, "owned qualifier");
- ev->owned = EINA_TRUE;
eo_lexer_get(ls);
break;
default:
{
eo_lexer_get(ls);
ev->type = parse_type(ls, EINA_TRUE, EINA_FALSE);
+ ev->type->owned = has_owned;
pop_type(ls);
}
check(ls, ';');
Eina_Bool obj_is_const :1; /* True if the object has to be const. Useful for a few methods. */
Eina_Bool get_return_warn_unused :1; /* also used for methods */
Eina_Bool set_return_warn_unused :1;
- Eina_Bool get_return_owned :1;
- Eina_Bool set_return_owned :1;
Eina_Bool get_only_legacy: 1;
Eina_Bool set_only_legacy: 1;
Eina_Bool is_class :1;
Eina_Bool nonull :1; /* True if this argument cannot be NULL - deprecated */
Eina_Bool nullable :1; /* True if this argument is nullable */
Eina_Bool optional :1; /* True if this argument is optional */
- Eina_Bool owned :1;
};
struct _Eolian_Type
Eina_Bool is_beta :1;
Eina_Bool is_hot :1;
Eina_Bool is_restart :1;
- Eina_Bool owned :1;
};
struct _Eolian_Struct_Type_Field
Eolian_Object base;
Eolian_Type *type;
Eolian_Documentation *doc;
- Eina_Bool owned :1;
};
struct _Eolian_Enum_Type_Field