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>
This commit is contained in:
Eric Blake
2016-01-29 06:48:59 -07:00
committed by Markus Armbruster
parent bdd8e6b5d8
commit 08f9541dec
11 changed files with 41 additions and 53 deletions

View File

@@ -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);