diff options
author | Eric Blake <eblake@redhat.com> | 2016-01-29 06:48:59 -0700 |
---|---|---|
committer | Timothy Pearson <tpearson@raptorengineering.com> | 2019-11-29 19:32:24 -0600 |
commit | b9ad670b9ec7f4dcce107f4a4a0e7c4875187667 (patch) | |
tree | 36a9aa3a249f35c58b8bd55ab5009ee79705f326 /include/qapi/visitor-impl.h | |
parent | 5c1cd25663cf569886666c48dcc62de7cdee6985 (diff) | |
download | hqemu-b9ad670b9ec7f4dcce107f4a4a0e7c4875187667.zip hqemu-b9ad670b9ec7f4dcce107f4a4a0e7c4875187667.tar.gz |
qapi: Drop unused error argument for list and implicit struct
No backend was setting an error when ending the visit of a list or
implicit struct, or when moving to the next list node. Make the
callers a bit easier to follow by making this a part of the contract,
and removing the errp argument - callers can then unconditionally end
an object as part of cleanup without having to think about whether a
second error is dominated by a first, because there is no second
error.
A later patch will then tackle the larger task of splitting
visit_end_struct(), which can indeed set an error.
Signed-off-by: Eric Blake <eblake@redhat.com>
Message-Id: <1454075341-13658-24-git-send-email-eblake@redhat.com>
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Diffstat (limited to 'include/qapi/visitor-impl.h')
-rw-r--r-- | include/qapi/visitor-impl.h | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/include/qapi/visitor-impl.h b/include/qapi/visitor-impl.h index 337f999..ea252f8 100644 --- a/include/qapi/visitor-impl.h +++ b/include/qapi/visitor-impl.h @@ -24,11 +24,14 @@ struct Visitor void (*start_implicit_struct)(Visitor *v, void **obj, size_t size, Error **errp); - void (*end_implicit_struct)(Visitor *v, Error **errp); + /* May be NULL */ + void (*end_implicit_struct)(Visitor *v); void (*start_list)(Visitor *v, const char *name, Error **errp); - GenericList *(*next_list)(Visitor *v, GenericList **list, Error **errp); - void (*end_list)(Visitor *v, Error **errp); + /* Must be set */ + GenericList *(*next_list)(Visitor *v, GenericList **list); + /* Must be set */ + void (*end_list)(Visitor *v); void (*type_enum)(Visitor *v, const char *name, int *obj, const char *const strings[], Error **errp); |