forked from enlightenment/efl
eolian: rename @warn_unused and its associated API
@warn_unused in syntax is now called @no_unused - this is because "warning about unused" is a C thing (or rather, an extension to C) and various languages might want to use stricter behavior for this. Its associated API does the reverse now - it lets you query whether being unused is allowed at all. This is to match future behavior of Eolian (once it supports versioning) that will likely reverse it. @feature
This commit is contained in:
parent
d0fed247bb
commit
13ddc5dbc1
|
@ -160,7 +160,7 @@ _gen_func(const Eolian_State *state, const Eolian_Function *fid,
|
|||
eina_strbuf_append(buf, "void");
|
||||
|
||||
eina_strbuf_append(buf, ")");
|
||||
if (eolian_function_return_is_warn_unused(fid, ftype))
|
||||
if (!eolian_function_return_allow_unused(fid, ftype))
|
||||
{
|
||||
if (!flagbuf)
|
||||
flagbuf = eina_strbuf_new();
|
||||
|
|
|
@ -373,7 +373,7 @@ ffi.cdef [[
|
|||
const Eolian_Type *eolian_function_return_type_get(const Eolian_Function *function_id, Eolian_Function_Type ftype);
|
||||
const Eolian_Expression *eolian_function_return_default_value_get(const Eolian_Function *foo_id, Eolian_Function_Type ftype);
|
||||
const Eolian_Documentation *eolian_function_return_documentation_get(const Eolian_Function *foo_id, Eolian_Function_Type ftype);
|
||||
Eina_Bool eolian_function_return_is_warn_unused(const Eolian_Function *foo_id, Eolian_Function_Type ftype);
|
||||
Eina_Bool eolian_function_return_allow_unused(const Eolian_Function *foo_id, Eolian_Function_Type ftype);
|
||||
Eina_Bool eolian_function_object_is_const(const Eolian_Function *function_id);
|
||||
const Eolian_Class *eolian_function_class_get(const Eolian_Function *function_id);
|
||||
const Eolian_Class *eolian_implement_class_get(const Eolian_Implement *impl);
|
||||
|
@ -1214,8 +1214,8 @@ M.Function = ffi.metatype("Eolian_Function", {
|
|||
return v
|
||||
end,
|
||||
|
||||
return_is_warn_unused = function(self, ftype)
|
||||
return eolian.eolian_function_return_is_warn_unused(self,
|
||||
return_allow_unused = function(self, ftype)
|
||||
return eolian.eolian_function_return_allow_unused(self,
|
||||
ftype) ~= 0
|
||||
end,
|
||||
|
||||
|
|
|
@ -308,7 +308,7 @@ class @beta Efl.Io.Copier extends Efl.Loop_Consumer implements Efl.Io.Closer {
|
|||
which case you should wait for "done", "data" or "line"
|
||||
events and then call it to retrieve and own the data.
|
||||
]]
|
||||
return: ptr(Eina.Binbuf) @owned @warn_unused; [[Binbuf]]
|
||||
return: ptr(Eina.Binbuf) @owned @no_unused; [[Binbuf]]
|
||||
}
|
||||
|
||||
@property pending_size {
|
||||
|
|
|
@ -187,7 +187,7 @@ class @beta Efl.Net.Dialer_Http extends Efl.Loop_Consumer implements Efl.Net.Dia
|
|||
|
||||
request_headers_get {
|
||||
[[Returns an iterator to the key-value pairs for request headers]]
|
||||
return: iterator<ptr(Efl.Net.Http.Header)> @owned @warn_unused; [[Iterator for request headers]]
|
||||
return: iterator<ptr(Efl.Net.Http.Header)> @owned @no_unused; [[Iterator for request headers]]
|
||||
}
|
||||
|
||||
@property request_content_length {
|
||||
|
@ -250,7 +250,7 @@ class @beta Efl.Net.Dialer_Http extends Efl.Loop_Consumer implements Efl.Net.Dia
|
|||
|
||||
This will be usable after the "headers,done" event is dispatched.
|
||||
]]
|
||||
return: iterator<ptr(Efl.Net.Http.Header)> @owned @warn_unused; [[Iterator for response headers]]
|
||||
return: iterator<ptr(Efl.Net.Http.Header)> @owned @no_unused; [[Iterator for response headers]]
|
||||
}
|
||||
|
||||
response_headers_all_get {
|
||||
|
@ -275,7 +275,7 @@ class @beta Efl.Net.Dialer_Http extends Efl.Loop_Consumer implements Efl.Net.Dia
|
|||
|
||||
This will be usable after the "headers,done" event is dispatched.
|
||||
]]
|
||||
return: iterator<ptr(Efl.Net.Http.Header)> @owned @warn_unused; [[Iterator for all response headers]]
|
||||
return: iterator<ptr(Efl.Net.Http.Header)> @owned @no_unused; [[Iterator for all response headers]]
|
||||
}
|
||||
|
||||
response_headers_clear {
|
||||
|
@ -381,7 +381,7 @@ class @beta Efl.Net.Dialer_Http extends Efl.Loop_Consumer implements Efl.Net.Dia
|
|||
params {
|
||||
epochtime: int64; [[UNIX Epoch time - seconds since 1/1/1970]]
|
||||
}
|
||||
return: mstring @owned @warn_unused; [[Newly allocated null-terminated string on success or NULL on errors]]
|
||||
return: mstring @owned @no_unused; [[Newly allocated null-terminated string on success or NULL on errors]]
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -144,7 +144,7 @@ class @beta Efl.Net.Dialer_Websocket extends Efl.Loop_Consumer implements Efl.Ne
|
|||
|
||||
request_protocols_get {
|
||||
[[Returns an iterator to the requested WebSocket protocols]]
|
||||
return: iterator<string> @owned @warn_unused; [[Iterator to protocols]]
|
||||
return: iterator<string> @owned @no_unused; [[Iterator to protocols]]
|
||||
}
|
||||
|
||||
request_protocols_clear {
|
||||
|
@ -153,7 +153,7 @@ class @beta Efl.Net.Dialer_Websocket extends Efl.Loop_Consumer implements Efl.Ne
|
|||
|
||||
response_protocols_get {
|
||||
[[Returns an iterator to the server-replied (response) WebSocket protocols it supports]]
|
||||
return: iterator<string> @owned @warn_unused; [[Iterator to server protocols]]
|
||||
return: iterator<string> @owned @no_unused; [[Iterator to server protocols]]
|
||||
}
|
||||
|
||||
@property streaming_mode {
|
||||
|
@ -260,7 +260,7 @@ class @beta Efl.Net.Dialer_Websocket extends Efl.Loop_Consumer implements Efl.Ne
|
|||
|
||||
request_headers_get {
|
||||
[[Returns an iterator to the key-value pairs for request headers]]
|
||||
return: iterator<ptr(Efl.Net.Http.Header)> @owned @warn_unused; [[Iterator to key value pairs]]
|
||||
return: iterator<ptr(Efl.Net.Http.Header)> @owned @no_unused; [[Iterator to key value pairs]]
|
||||
}
|
||||
|
||||
@property cookie_jar {
|
||||
|
|
|
@ -20,7 +20,7 @@ class @beta Ector.Cairo.Surface extends Efl.Object implements Ector.Surface
|
|||
}
|
||||
symbol_get {
|
||||
[[Lookup symbal name in cairo lib]]
|
||||
return: void_ptr @warn_unused; [[Pointer to cairo lib with this symbol]]
|
||||
return: void_ptr @no_unused; [[Pointer to cairo lib with this symbol]]
|
||||
params {
|
||||
@in name: string; [[Symbol name]]
|
||||
}
|
||||
|
|
|
@ -60,7 +60,7 @@ mixin @beta Ector.Buffer
|
|||
map should try to convert the data into a new buffer]]
|
||||
@out stride: uint @optional; [[Returns the length in bytes of a mapped line]]
|
||||
}
|
||||
return: void_ptr @warn_unused; [[Pointer to the top-left pixel data. Returns $null in case of failure]]
|
||||
return: void_ptr @no_unused; [[Pointer to the top-left pixel data. Returns $null in case of failure]]
|
||||
}
|
||||
unmap @pure_virtual {
|
||||
[[Unmap a region of this buffer, and upload data to the GPU (if needed).]]
|
||||
|
|
|
@ -51,7 +51,7 @@ interface Efl.Canvas.Scene
|
|||
Warning: This function will only evaluate top-level objects; child
|
||||
or "sub" objects will be skipped.
|
||||
]]
|
||||
return: iterator<Efl.Gfx.Entity> @owned @warn_unused; [[
|
||||
return: iterator<Efl.Gfx.Entity> @owned @no_unused; [[
|
||||
The list of objects that are over the given position in $e.
|
||||
]]
|
||||
params {
|
||||
|
@ -78,7 +78,7 @@ interface Efl.Canvas.Scene
|
|||
Warning: This function will only evaluate top-level objects; child
|
||||
or "sub" objects will be skipped.
|
||||
]]
|
||||
return: Efl.Gfx.Entity @warn_unused; [[The canvas object that is over all other objects at the given position.]]
|
||||
return: Efl.Gfx.Entity @no_unused; [[The canvas object that is over all other objects at the given position.]]
|
||||
params {
|
||||
@in pos: Eina.Position2D; [[The pixel position.]]
|
||||
@in include_pass_events_objects: bool; [[
|
||||
|
@ -103,7 +103,7 @@ interface Efl.Canvas.Scene
|
|||
Warning: This function will only evaluate top-level objects; child
|
||||
or "sub" objects will be skipped.
|
||||
]]
|
||||
return: iterator<Efl.Gfx.Entity> @owned @warn_unused; [[Iterator to objects]]
|
||||
return: iterator<Efl.Gfx.Entity> @owned @no_unused; [[Iterator to objects]]
|
||||
params {
|
||||
@in rect: Eina.Rect; [[The rectangular region.]]
|
||||
@in include_pass_events_objects: bool; [[
|
||||
|
@ -129,7 +129,7 @@ interface Efl.Canvas.Scene
|
|||
Warning: This function will only evaluate top-level objects; child
|
||||
or "sub" objects will be skipped.
|
||||
]]
|
||||
return: Efl.Gfx.Entity @warn_unused; [[
|
||||
return: Efl.Gfx.Entity @no_unused; [[
|
||||
The object that is over all other objects at the given
|
||||
rectangular region.
|
||||
]]
|
||||
|
|
|
@ -12,7 +12,7 @@ interface Efl.Container
|
|||
methods {
|
||||
content_iterate {
|
||||
[[Begin iterating over this object's contents.]]
|
||||
return: iterator<Efl.Gfx.Entity> @owned @warn_unused; [[Iterator on object's content.]]
|
||||
return: iterator<Efl.Gfx.Entity> @owned @no_unused; [[Iterator on object's content.]]
|
||||
}
|
||||
content_count {
|
||||
[[Returns the number of contained sub-objects.]]
|
||||
|
|
|
@ -46,8 +46,8 @@ interface Efl.Gfx.Stack
|
|||
objects on layers below the one $obj is placed at.
|
||||
|
||||
See also @.layer.get(), @.layer.set() and @.below.get()]]
|
||||
return: Efl.Gfx.Stack @warn_unused; [[The @Efl.Gfx.Stack object directly below $obj, if any,
|
||||
or $null, if none.]]
|
||||
return: Efl.Gfx.Stack @no_unused; [[The @Efl.Gfx.Stack object directly below $obj, if any,
|
||||
or $null, if none.]]
|
||||
}
|
||||
}
|
||||
@property above {
|
||||
|
@ -58,8 +58,8 @@ interface Efl.Gfx.Stack
|
|||
objects on layers above the one $obj is placed at.
|
||||
|
||||
See also @.layer.get(), @.layer.set() and @.below.get()]]
|
||||
return: Efl.Gfx.Stack @warn_unused; [[The @Efl.Gfx.Stack object directly below $obj, if any,
|
||||
or $null, if none.]]
|
||||
return: Efl.Gfx.Stack @no_unused; [[The @Efl.Gfx.Stack object directly below $obj, if any,
|
||||
or $null, if none.]]
|
||||
}
|
||||
}
|
||||
stack_below {
|
||||
|
|
|
@ -130,7 +130,7 @@ class @beta Efl.Io.Buffer extends Efl.Object implements Efl.Io.Reader, Efl.Io.Wr
|
|||
On failure, for example a read-only backing store was
|
||||
adopted with @.adopt_readonly, NULL is returned.
|
||||
]]
|
||||
return: ptr(Eina.Binbuf) @owned @warn_unused; [[Binbuf]]
|
||||
return: ptr(Eina.Binbuf) @owned @no_unused; [[Binbuf]]
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -28,7 +28,7 @@ interface @beta Efl.Ui.Menu {
|
|||
@property items {
|
||||
get {
|
||||
[[Returns a list of the widget item.]]
|
||||
return: iterator<Efl.Ui.Item> @owned @warn_unused; [[Iterator to widget items]]
|
||||
return: iterator<Efl.Ui.Item> @owned @no_unused; [[Iterator to widget items]]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -63,7 +63,7 @@ mixin @beta Efl.Access.Action
|
|||
params {
|
||||
@in id: int; [[ID for widget]]
|
||||
}
|
||||
return: mstring @owned @warn_unused; [[Should be freed by the user.]]
|
||||
return: mstring @owned @no_unused; [[Should be freed by the user.]]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -43,8 +43,8 @@ class @beta Efl.Ui.Grid extends Efl.Ui.Layout_Base implements
|
|||
}
|
||||
selected_items_get {
|
||||
[[Get the selected items iterator. The iterator sequence will be decided by selection.]]
|
||||
return: iterator<Efl.Ui.Grid_Item> @owned @warn_unused; [[Iterator covered by selected items list.
|
||||
user have to free the iterator after used.]]
|
||||
return: iterator<Efl.Ui.Grid_Item> @owned @no_unused; [[Iterator covered by selected items list.
|
||||
user have to free the iterator after used.]]
|
||||
}
|
||||
}
|
||||
implements {
|
||||
|
|
|
@ -34,8 +34,8 @@ class @beta Efl.Ui.List extends Efl.Ui.Layout_Base implements
|
|||
}
|
||||
selected_items_get {
|
||||
[[Get the selected items iterator. The iterator sequence will be decided by selection.]]
|
||||
return: iterator<Efl.Ui.List_Item> @owned @warn_unused; [[Iterator covered by selected items list.
|
||||
user have to free the iterator after used.]]
|
||||
return: iterator<Efl.Ui.List_Item> @owned @no_unused; [[Iterator covered by selected items list.
|
||||
user have to free the iterator after used.]]
|
||||
}
|
||||
}
|
||||
implements {
|
||||
|
|
|
@ -100,8 +100,8 @@ static Elm_Code_Syntax _elm_code_syntax_eo =
|
|||
"abstract", "class", "data", "mixin", "import", "interface", "type", "const", "var", \
|
||||
"own", "free", "struct", "enum", "@extern", "@free", "@auto", "@empty", \
|
||||
"@private", "@protected", "@beta", "@hot", "@const", "@class", "@pure_virtual", \
|
||||
"@property", "@nullable", "@optional", "@in", "@out", "@inout", "@warn_unused", \
|
||||
"eo_prefix", "legacy_prefix", "methods", "events", "params", "return", "legacy", \
|
||||
"@property", "@nullable", "@optional", "@in", "@out", "@inout", "@no_unused", \
|
||||
"c_prefix", "methods", "events", "params", "return", \
|
||||
"implements", "constructors", "get", "set", "keys", "values", "true", "false", "null"}
|
||||
};
|
||||
|
||||
|
|
|
@ -348,7 +348,7 @@ abstract Efl.Object
|
|||
}
|
||||
children_iterator_new {
|
||||
[[Get an iterator on all childrens]]
|
||||
return: iterator<Efl.Object> @owned @warn_unused; [[Children iterator]]
|
||||
return: iterator<Efl.Object> @owned @no_unused; [[Children iterator]]
|
||||
}
|
||||
composite_attach @beta {
|
||||
[[Make an object a composite object of another.
|
||||
|
|
|
@ -1842,11 +1842,11 @@ eolian_function_return_default_value_get(const Eolian_Function *foo_id, Eolian_F
|
|||
EAPI const Eolian_Documentation *eolian_function_return_documentation_get(const Eolian_Function *foo_id, Eolian_Function_Type ftype);
|
||||
|
||||
/*
|
||||
* @brief Indicates if a function return is warn-unused.
|
||||
* @brief Indicates if a function return should allow being unused.
|
||||
*
|
||||
* @param[in] function_id id of the function
|
||||
* @param[in] ftype type of the function
|
||||
* @return EINA_TRUE is warn-unused, EINA_FALSE otherwise.
|
||||
* @return EINA_TRUE if it can be unused, EINA_FALSE otherwise.
|
||||
*
|
||||
* The type of the function is needed because a given function can represent a
|
||||
* property, that can be set and get functions.
|
||||
|
@ -1855,7 +1855,7 @@ EAPI const Eolian_Documentation *eolian_function_return_documentation_get(const
|
|||
*
|
||||
* @ingroup Eolian
|
||||
*/
|
||||
EAPI Eina_Bool eolian_function_return_is_warn_unused(const Eolian_Function *foo_id, Eolian_Function_Type ftype);
|
||||
EAPI Eina_Bool eolian_function_return_allow_unused(const Eolian_Function *foo_id, Eolian_Function_Type ftype);
|
||||
|
||||
/*
|
||||
* @brief Indicates if a function object is const.
|
||||
|
|
|
@ -263,28 +263,28 @@ eolian_function_return_documentation_get(const Eolian_Function *fid, Eolian_Func
|
|||
}
|
||||
|
||||
EAPI Eina_Bool
|
||||
eolian_function_return_is_warn_unused(const Eolian_Function *fid,
|
||||
eolian_function_return_allow_unused(const Eolian_Function *fid,
|
||||
Eolian_Function_Type ftype)
|
||||
{
|
||||
EINA_SAFETY_ON_NULL_RETURN_VAL(fid, EINA_FALSE);
|
||||
EINA_SAFETY_ON_FALSE_RETURN_VAL(ftype != EOLIAN_UNRESOLVED, EINA_FALSE);
|
||||
EINA_SAFETY_ON_FALSE_RETURN_VAL(ftype != EOLIAN_PROPERTY, EINA_FALSE);
|
||||
EINA_SAFETY_ON_NULL_RETURN_VAL(fid, EINA_TRUE);
|
||||
EINA_SAFETY_ON_FALSE_RETURN_VAL(ftype != EOLIAN_UNRESOLVED, EINA_TRUE);
|
||||
EINA_SAFETY_ON_FALSE_RETURN_VAL(ftype != EOLIAN_PROPERTY, EINA_TRUE);
|
||||
switch (ftype)
|
||||
{
|
||||
case EOLIAN_METHOD:
|
||||
if (fid->type != EOLIAN_METHOD)
|
||||
return EINA_FALSE;
|
||||
return fid->get_return_warn_unused;
|
||||
return EINA_TRUE;
|
||||
return !fid->get_return_no_unused;
|
||||
case EOLIAN_PROP_GET:
|
||||
if ((fid->type != EOLIAN_PROP_GET) && (fid->type != EOLIAN_PROPERTY))
|
||||
return EINA_FALSE;
|
||||
return fid->get_return_warn_unused;
|
||||
return EINA_TRUE;
|
||||
return !fid->get_return_no_unused;
|
||||
case EOLIAN_PROP_SET:
|
||||
if ((fid->type != EOLIAN_PROP_SET) && (fid->type != EOLIAN_PROPERTY))
|
||||
return EINA_FALSE;
|
||||
return fid->set_return_warn_unused;
|
||||
return EINA_TRUE;
|
||||
return !fid->set_return_no_unused;
|
||||
default:
|
||||
return EINA_FALSE;
|
||||
return EINA_TRUE;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -35,9 +35,9 @@ enum Tokens
|
|||
\
|
||||
KWAT(auto), KWAT(beta), KWAT(c_name), KWAT(class), KWAT(const), KWAT(cref), \
|
||||
KWAT(empty), KWAT(extern), KWAT(free), KWAT(hot), KWAT(in), KWAT(inout), \
|
||||
KWAT(nullable), KWAT(optional), KWAT(out), KWAT(owned), \
|
||||
KWAT(no_unused), KWAT(nullable), KWAT(optional), KWAT(out), KWAT(owned), \
|
||||
KWAT(private), KWAT(property), KWAT(protected), KWAT(restart), \
|
||||
KWAT(pure_virtual), KWAT(warn_unused), \
|
||||
KWAT(pure_virtual), \
|
||||
\
|
||||
KW(byte), KW(ubyte), KW(char), KW(short), KW(ushort), KW(int), KW(uint), \
|
||||
KW(long), KW(ulong), KW(llong), KW(ullong), \
|
||||
|
|
|
@ -854,7 +854,7 @@ typedef struct _Eo_Ret_Def
|
|||
Eolian_Type *type;
|
||||
Eolian_Documentation *doc;
|
||||
Eolian_Expression *default_ret_val;
|
||||
Eina_Bool warn_unused: 1;
|
||||
Eina_Bool no_unused: 1;
|
||||
Eina_Bool owned: 1;
|
||||
} Eo_Ret_Def;
|
||||
|
||||
|
@ -870,7 +870,7 @@ parse_return(Eo_Lexer *ls, Eo_Ret_Def *ret, Eina_Bool allow_void,
|
|||
ret->type = parse_type(ls, EINA_TRUE);
|
||||
ret->doc = NULL;
|
||||
ret->default_ret_val = NULL;
|
||||
ret->warn_unused = EINA_FALSE;
|
||||
ret->no_unused = EINA_FALSE;
|
||||
ret->owned = EINA_FALSE;
|
||||
if (allow_def && (ls->t.token == '('))
|
||||
{
|
||||
|
@ -881,12 +881,12 @@ parse_return(Eo_Lexer *ls, Eo_Ret_Def *ret, Eina_Bool allow_void,
|
|||
ls->expr_mode = EINA_FALSE;
|
||||
check_match(ls, ')', '(', line, col);
|
||||
}
|
||||
Eina_Bool has_warn_unused = EINA_FALSE, has_owned = EINA_FALSE;
|
||||
Eina_Bool has_no_unused = EINA_FALSE, has_owned = EINA_FALSE;
|
||||
if (!is_funcptr) for (;;) switch (ls->t.kw)
|
||||
{
|
||||
case KW_at_warn_unused:
|
||||
CASE_LOCK(ls, warn_unused, "warn_unused qualifier");
|
||||
ret->warn_unused = EINA_TRUE;
|
||||
case KW_at_no_unused:
|
||||
CASE_LOCK(ls, no_unused, "no_unused qualifier");
|
||||
ret->no_unused = EINA_TRUE;
|
||||
eo_lexer_get(ls);
|
||||
break;
|
||||
case KW_at_owned:
|
||||
|
@ -1079,7 +1079,7 @@ parse_accessor:
|
|||
prop->get_ret_type = eo_lexer_type_release(ls, ret.type);
|
||||
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_no_unused = ret.no_unused;
|
||||
prop->get_ret_type->owned = ret.owned;
|
||||
}
|
||||
else
|
||||
|
@ -1087,7 +1087,7 @@ parse_accessor:
|
|||
prop->set_ret_type = eo_lexer_type_release(ls, ret.type);
|
||||
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_no_unused = ret.no_unused;
|
||||
prop->set_ret_type->owned = ret.owned;
|
||||
}
|
||||
break;
|
||||
|
@ -1289,7 +1289,7 @@ tags_done:
|
|||
meth->get_ret_type = eo_lexer_type_release(ls, ret.type);
|
||||
meth->get_return_doc = ret.doc;
|
||||
meth->get_ret_val = NULL;
|
||||
meth->get_return_warn_unused = EINA_FALSE;
|
||||
meth->get_return_no_unused = EINA_FALSE;
|
||||
break;
|
||||
case KW_params:
|
||||
CASE_LOCK(ls, params, "params definition");
|
||||
|
@ -1385,7 +1385,7 @@ body:
|
|||
meth->get_ret_type = eo_lexer_type_release(ls, ret.type);
|
||||
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_no_unused = ret.no_unused;
|
||||
meth->get_ret_type->owned = ret.owned;
|
||||
break;
|
||||
case KW_params:
|
||||
|
|
|
@ -225,8 +225,8 @@ struct _Eolian_Function
|
|||
Eolian_Documentation *get_return_doc;
|
||||
Eolian_Documentation *set_return_doc;
|
||||
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_no_unused :1; /* also used for methods */
|
||||
Eina_Bool set_return_no_unused :1;
|
||||
Eina_Bool is_class :1;
|
||||
Eina_List *ctor_of;
|
||||
Eolian_Class *klass;
|
||||
|
|
|
@ -354,7 +354,7 @@ abstract Efl.Canvas.Object extends Efl.Loop_Consumer implements Efl.Gfx.Entity,
|
|||
|
||||
See also @.clipper.
|
||||
]]
|
||||
return: iterator<Efl.Canvas.Object> @warn_unused; [[An iterator over the
|
||||
return: iterator<Efl.Canvas.Object> @no_unused; [[An iterator over the
|
||||
list of objects clipped by $obj.]]
|
||||
}
|
||||
}
|
||||
|
@ -384,7 +384,7 @@ abstract Efl.Canvas.Object extends Efl.Loop_Consumer implements Efl.Gfx.Entity,
|
|||
clipped_objects_count @const {
|
||||
[[Returns the number of objects clipped by $obj
|
||||
]]
|
||||
return: uint @warn_unused; [[The number of objects clipped by $obj]]
|
||||
return: uint @no_unused; [[The number of objects clipped by $obj]]
|
||||
}
|
||||
key_grab {
|
||||
/* FIXME: can't reference Eolian object, .eo file not being installed */
|
||||
|
@ -411,7 +411,7 @@ abstract Efl.Canvas.Object extends Efl.Loop_Consumer implements Efl.Gfx.Entity,
|
|||
Warning: Providing impossible modifier sets creates undefined
|
||||
behavior.
|
||||
]]
|
||||
return: bool @warn_unused; [[$true if the call succeeded, $false otherwise.]]
|
||||
return: bool @no_unused; [[$true if the call succeeded, $false otherwise.]]
|
||||
params {
|
||||
@in keyname: string; [[The key to request events for.]]
|
||||
@in modifiers: Efl.Input.Modifier; [[A combination of modifier
|
||||
|
|
|
@ -19,7 +19,7 @@ abstract @beta Efl.Canvas.Surface extends Efl.Canvas.Image_Internal
|
|||
[[Set the buffer. If this fails, this function returns $false,
|
||||
and the surface is left without any attached buffer.
|
||||
]]
|
||||
return: bool @warn_unused; [[$true on success, $false otherwise]]
|
||||
return: bool @no_unused; [[$true on success, $false otherwise]]
|
||||
}
|
||||
values {
|
||||
buffer: void_ptr; [[The external buffer, depends on its type.]]
|
||||
|
|
|
@ -11,7 +11,7 @@ class @beta Efl.Canvas.Vg.Container extends Efl.Canvas.Vg.Node
|
|||
}
|
||||
children_get {
|
||||
[[Get all children of container]]
|
||||
return: iterator<Efl.Canvas.Vg.Node> @owned @warn_unused; [[Iterator to children]]
|
||||
return: iterator<Efl.Canvas.Vg.Node> @owned @no_unused; [[Iterator to children]]
|
||||
}
|
||||
}
|
||||
implements {
|
||||
|
|
|
@ -925,8 +925,8 @@ class Function(Object):
|
|||
c_doc = lib.eolian_function_return_documentation_get(self, ftype)
|
||||
return Documentation(c_doc) if c_doc else None
|
||||
|
||||
def return_is_warn_unused(self, ftype):
|
||||
return bool(lib.eolian_function_return_is_warn_unused(self, ftype))
|
||||
def return_allow_unused(self, ftype):
|
||||
return bool(lib.eolian_function_return_allow_unused(self, ftype))
|
||||
|
||||
@cached_property
|
||||
def method_return_type(self):
|
||||
|
|
|
@ -352,9 +352,9 @@ lib.eolian_function_return_default_value_get.restype = c_void_p
|
|||
lib.eolian_function_return_documentation_get.argtypes = (c_void_p, c_int)
|
||||
lib.eolian_function_return_documentation_get.restype = c_void_p
|
||||
|
||||
# EAPI Eina_Bool eolian_function_return_is_warn_unused(const Eolian_Function *foo_id, Eolian_Function_Type ftype);
|
||||
lib.eolian_function_return_is_warn_unused.argtypes = (c_void_p, c_int)
|
||||
lib.eolian_function_return_is_warn_unused.restype = c_bool
|
||||
# EAPI Eina_Bool eolian_function_return_allow_unused(const Eolian_Function *foo_id, Eolian_Function_Type ftype);
|
||||
lib.eolian_function_return_allow_unused.argtypes = (c_void_p, c_int)
|
||||
lib.eolian_function_return_allow_unused.restype = c_bool
|
||||
|
||||
# EAPI Eina_Bool eolian_function_object_is_const(const Eolian_Function *function_id);
|
||||
lib.eolian_function_object_is_const.argtypes = (c_void_p,)
|
||||
|
|
|
@ -368,7 +368,7 @@ class TestEolianFunction(unittest.TestCase):
|
|||
self.assertEqual(len(list(f.getter_values)), 1)
|
||||
self.assertEqual(len(list(f.getter_values)), 1)
|
||||
self.assertEqual(len(list(f.parameters)), 1)
|
||||
self.assertFalse(f.return_is_warn_unused(eolian.Eolian_Function_Type.METHOD))
|
||||
self.assertTrue(f.return_allow_unused(eolian.Eolian_Function_Type.METHOD))
|
||||
self.assertFalse(f.object_is_const)
|
||||
self.assertEqual(f.class_.name, 'Efl.Loop_Timer')
|
||||
self.assertIsInstance(f.implement, eolian.Implement)
|
||||
|
|
|
@ -41,7 +41,7 @@ class Constructor_Method_Class extends Efl.Object
|
|||
}
|
||||
classoutmethod1 {
|
||||
params { @in one: int; @in two: double; }
|
||||
return: free(Constructor_Method_Class, eo_unref) @owned @warn_unused;
|
||||
return: free(Constructor_Method_Class, eo_unref) @owned @no_unused;
|
||||
}
|
||||
classoutmethod2 {
|
||||
params { @in one: int; @in two: double; @out out_class: Constructor_Method_Class @owned; }
|
||||
|
|
|
@ -104,7 +104,7 @@ class Test.Object extends Efl.Object {
|
|||
}
|
||||
method_array_with_42_check {
|
||||
[[ tests parameters ]]
|
||||
return: array<int> @owned @warn_unused;
|
||||
return: array<int> @owned @no_unused;
|
||||
}
|
||||
method_array_in_array_out_check {
|
||||
[[ tests parameters ]]
|
||||
|
@ -157,7 +157,7 @@ class Test.Object extends Efl.Object {
|
|||
}
|
||||
method_list_with_42_check {
|
||||
[[ tests parameters ]]
|
||||
return: list<int> @owned @warn_unused;
|
||||
return: list<int> @owned @no_unused;
|
||||
}
|
||||
method_list_in_list_out_check {
|
||||
[[ tests parameters ]]
|
||||
|
|
Loading…
Reference in New Issue