eolian: allow read-only stringshare in events

While the type cannot be moved to the callee, it at least provides
a hint that it's a stringshare, leeting people ref it instead of
copying.
This commit is contained in:
Daniel Kolesa 2019-09-23 15:26:23 +02:00
parent 8b2cae5b07
commit 74becf76c0
1 changed files with 2 additions and 2 deletions

View File

@ -646,11 +646,11 @@ _validate_event(Validate_State *vals, Eolian_Event *event, Eina_Hash *nhash)
}
/* any type past builtin value types and containers is not allowed,
* any_value is allowed but passed as const reference, any_value_ref
* is not; string is allowed, but mutable strings or stringshares are
* is not; string and stringshare is allowed, but mutable strings are
* not and neither are string buffers, the type is never owned by the
* callee, so all strings passed in are unowned and read-only
*/
if (kwid >= KW_any_value_ref && kwid != KW_string)
if (kwid >= KW_any_value_ref && kwid != KW_string && kwid != KW_stringshare)
{
_eo_parser_log(&tp->base, "forbidden event type");
return _reset_stable(vals, was_stable, EINA_FALSE);