mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-07-27 20:33:54 -06:00
qapi: Make visitor functions taking Error ** return bool, not void
See recent commit "error: Document Error API usage rules" for rationale. Signed-off-by: Markus Armbruster <armbru@redhat.com> Reviewed-by: Eric Blake <eblake@redhat.com> Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com> Message-Id: <20200707160613.848843-18-armbru@redhat.com>
This commit is contained in:
parent
3c4b89c3b2
commit
012d4c96e2
14 changed files with 456 additions and 361 deletions
|
@ -48,31 +48,31 @@ struct Visitor
|
|||
*/
|
||||
|
||||
/* Must be set to visit structs */
|
||||
void (*start_struct)(Visitor *v, const char *name, void **obj,
|
||||
bool (*start_struct)(Visitor *v, const char *name, void **obj,
|
||||
size_t size, Error **errp);
|
||||
|
||||
/* Optional; intended for input visitors */
|
||||
void (*check_struct)(Visitor *v, Error **errp);
|
||||
bool (*check_struct)(Visitor *v, Error **errp);
|
||||
|
||||
/* Must be set to visit structs */
|
||||
void (*end_struct)(Visitor *v, void **obj);
|
||||
|
||||
/* Must be set; implementations may require @list to be non-null,
|
||||
* but must document it. */
|
||||
void (*start_list)(Visitor *v, const char *name, GenericList **list,
|
||||
bool (*start_list)(Visitor *v, const char *name, GenericList **list,
|
||||
size_t size, Error **errp);
|
||||
|
||||
/* Must be set */
|
||||
GenericList *(*next_list)(Visitor *v, GenericList *tail, size_t size);
|
||||
|
||||
/* Optional; intended for input visitors */
|
||||
void (*check_list)(Visitor *v, Error **errp);
|
||||
bool (*check_list)(Visitor *v, Error **errp);
|
||||
|
||||
/* Must be set */
|
||||
void (*end_list)(Visitor *v, void **list);
|
||||
|
||||
/* Must be set by input and clone visitors to visit alternates */
|
||||
void (*start_alternate)(Visitor *v, const char *name,
|
||||
bool (*start_alternate)(Visitor *v, const char *name,
|
||||
GenericAlternate **obj, size_t size,
|
||||
Error **errp);
|
||||
|
||||
|
@ -80,33 +80,33 @@ struct Visitor
|
|||
void (*end_alternate)(Visitor *v, void **obj);
|
||||
|
||||
/* Must be set */
|
||||
void (*type_int64)(Visitor *v, const char *name, int64_t *obj,
|
||||
bool (*type_int64)(Visitor *v, const char *name, int64_t *obj,
|
||||
Error **errp);
|
||||
|
||||
/* Must be set */
|
||||
void (*type_uint64)(Visitor *v, const char *name, uint64_t *obj,
|
||||
bool (*type_uint64)(Visitor *v, const char *name, uint64_t *obj,
|
||||
Error **errp);
|
||||
|
||||
/* Optional; fallback is type_uint64() */
|
||||
void (*type_size)(Visitor *v, const char *name, uint64_t *obj,
|
||||
bool (*type_size)(Visitor *v, const char *name, uint64_t *obj,
|
||||
Error **errp);
|
||||
|
||||
/* Must be set */
|
||||
void (*type_bool)(Visitor *v, const char *name, bool *obj, Error **errp);
|
||||
bool (*type_bool)(Visitor *v, const char *name, bool *obj, Error **errp);
|
||||
|
||||
/* Must be set */
|
||||
void (*type_str)(Visitor *v, const char *name, char **obj, Error **errp);
|
||||
bool (*type_str)(Visitor *v, const char *name, char **obj, Error **errp);
|
||||
|
||||
/* Must be set to visit numbers */
|
||||
void (*type_number)(Visitor *v, const char *name, double *obj,
|
||||
bool (*type_number)(Visitor *v, const char *name, double *obj,
|
||||
Error **errp);
|
||||
|
||||
/* Must be set to visit arbitrary QTypes */
|
||||
void (*type_any)(Visitor *v, const char *name, QObject **obj,
|
||||
bool (*type_any)(Visitor *v, const char *name, QObject **obj,
|
||||
Error **errp);
|
||||
|
||||
/* Must be set to visit explicit null values. */
|
||||
void (*type_null)(Visitor *v, const char *name, QNull **obj,
|
||||
bool (*type_null)(Visitor *v, const char *name, QNull **obj,
|
||||
Error **errp);
|
||||
|
||||
/* Must be set for input visitors to visit structs, optional otherwise.
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue