qapi: Swap visit_* arguments for consistent 'name' placement

JSON uses "name":value, but many of our visitor interfaces were
called with visit_type_FOO(v, &value, name, errp).  This can be
a bit confusing to have to mentally swap the parameter order to
match JSON order.  It's particularly bad for visit_start_struct(),
where the 'name' parameter is smack in the middle of the
otherwise-related group of 'obj, kind, size' parameters! It's
time to do a global swap of the parameter ordering, so that the
'name' parameter is always immediately after the Visitor argument.

Additional reason in favor of the swap: the existing include/qjson.h
prefers listing 'name' first in json_prop_*(), and I have plans to
unify that file with the qapi visitors; listing 'name' first in
qapi will minimize churn to the (admittedly few) qjson.h clients.

Later patches will then fix docs, object.h, visitor-impl.h, and
those clients to match.

Done by first patching scripts/qapi*.py by hand to make generated
files do what I want, then by running the following Coccinelle
script to affect the rest of the code base:
 $ spatch --sp-file script `git grep -l '\bvisit_' -- '**/*.[ch]'`
I then had to apply some touchups (Coccinelle insisted on TAB
indentation in visitor.h, and botched the signature of
visit_type_enum() by rewriting 'const char *const strings[]' to
the syntactically invalid 'const char*const[] strings').  The
movement of parameters is sufficient to provoke compiler errors
if any callers were missed.

    // Part 1: Swap declaration order
    @@
    type TV, TErr, TObj, T1, T2;
    identifier OBJ, ARG1, ARG2;
    @@
     void visit_start_struct
    -(TV v, TObj OBJ, T1 ARG1, const char *name, T2 ARG2, TErr errp)
    +(TV v, const char *name, TObj OBJ, T1 ARG1, T2 ARG2, TErr errp)
     { ... }

    @@
    type bool, TV, T1;
    identifier ARG1;
    @@
     bool visit_optional
    -(TV v, T1 ARG1, const char *name)
    +(TV v, const char *name, T1 ARG1)
     { ... }

    @@
    type TV, TErr, TObj, T1;
    identifier OBJ, ARG1;
    @@
     void visit_get_next_type
    -(TV v, TObj OBJ, T1 ARG1, const char *name, TErr errp)
    +(TV v, const char *name, TObj OBJ, T1 ARG1, TErr errp)
     { ... }

    @@
    type TV, TErr, TObj, T1, T2;
    identifier OBJ, ARG1, ARG2;
    @@
     void visit_type_enum
    -(TV v, TObj OBJ, T1 ARG1, T2 ARG2, const char *name, TErr errp)
    +(TV v, const char *name, TObj OBJ, T1 ARG1, T2 ARG2, TErr errp)
     { ... }

    @@
    type TV, TErr, TObj;
    identifier OBJ;
    identifier VISIT_TYPE =~ "^visit_type_";
    @@
     void VISIT_TYPE
    -(TV v, TObj OBJ, const char *name, TErr errp)
    +(TV v, const char *name, TObj OBJ, TErr errp)
     { ... }

    // Part 2: swap caller order
    @@
    expression V, NAME, OBJ, ARG1, ARG2, ERR;
    identifier VISIT_TYPE =~ "^visit_type_";
    @@
    (
    -visit_start_struct(V, OBJ, ARG1, NAME, ARG2, ERR)
    +visit_start_struct(V, NAME, OBJ, ARG1, ARG2, ERR)
    |
    -visit_optional(V, ARG1, NAME)
    +visit_optional(V, NAME, ARG1)
    |
    -visit_get_next_type(V, OBJ, ARG1, NAME, ERR)
    +visit_get_next_type(V, NAME, OBJ, ARG1, ERR)
    |
    -visit_type_enum(V, OBJ, ARG1, ARG2, NAME, ERR)
    +visit_type_enum(V, NAME, OBJ, ARG1, ARG2, ERR)
    |
    -VISIT_TYPE(V, OBJ, NAME, ERR)
    +VISIT_TYPE(V, NAME, OBJ, ERR)
    )

Signed-off-by: Eric Blake <eblake@redhat.com>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-Id: <1454075341-13658-19-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:54 -07:00 committed by Markus Armbruster
parent 4fa45492c3
commit 51e72bc1dd
52 changed files with 385 additions and 371 deletions

View File

@ -33,7 +33,7 @@ host_memory_backend_get_size(Object *obj, Visitor *v, void *opaque,
HostMemoryBackend *backend = MEMORY_BACKEND(obj);
uint64_t value = backend->size;
visit_type_size(v, &value, name, errp);
visit_type_size(v, name, &value, errp);
}
static void
@ -49,7 +49,7 @@ host_memory_backend_set_size(Object *obj, Visitor *v, void *opaque,
goto out;
}
visit_type_size(v, &value, name, &local_err);
visit_type_size(v, name, &value, &local_err);
if (local_err) {
goto out;
}
@ -92,7 +92,7 @@ host_memory_backend_get_host_nodes(Object *obj, Visitor *v, void *opaque,
node = &(*node)->next;
} while (true);
visit_type_uint16List(v, &host_nodes, name, errp);
visit_type_uint16List(v, name, &host_nodes, errp);
}
static void
@ -103,7 +103,7 @@ host_memory_backend_set_host_nodes(Object *obj, Visitor *v, void *opaque,
HostMemoryBackend *backend = MEMORY_BACKEND(obj);
uint16List *l = NULL;
visit_type_uint16List(v, &l, name, errp);
visit_type_uint16List(v, name, &l, errp);
while (l) {
bitmap_set(backend->host_nodes, l->value, 1);

View File

@ -641,7 +641,7 @@ void bdrv_image_info_specific_dump(fprintf_function func_fprintf, void *f,
QmpOutputVisitor *ov = qmp_output_visitor_new();
QObject *obj, *data;
visit_type_ImageInfoSpecific(qmp_output_get_visitor(ov), &info_spec, NULL,
visit_type_ImageInfoSpecific(qmp_output_get_visitor(ov), NULL, &info_spec,
&error_abort);
obj = qmp_output_get_qobject(ov);
assert(qobject_type(obj) == QTYPE_QDICT);

View File

@ -3860,8 +3860,8 @@ void qmp_blockdev_add(BlockdevOptions *options, Error **errp)
}
}
visit_type_BlockdevOptions(qmp_output_get_visitor(ov),
&options, NULL, &local_err);
visit_type_BlockdevOptions(qmp_output_get_visitor(ov), NULL, &options,
&local_err);
if (local_err) {
error_propagate(errp, local_err);
goto fail;

View File

@ -275,7 +275,7 @@ static void device_get_bootindex(Object *obj, Visitor *v, void *opaque,
const char *name, Error **errp)
{
BootIndexProperty *prop = opaque;
visit_type_int32(v, prop->bootindex, name, errp);
visit_type_int32(v, name, prop->bootindex, errp);
}
static void device_set_bootindex(Object *obj, Visitor *v, void *opaque,
@ -285,7 +285,7 @@ static void device_set_bootindex(Object *obj, Visitor *v, void *opaque,
int32_t boot_index;
Error *local_err = NULL;
visit_type_int32(v, &boot_index, name, &local_err);
visit_type_int32(v, name, &boot_index, &local_err);
if (local_err) {
goto out;
}

8
hmp.c
View File

@ -1676,13 +1676,13 @@ void hmp_object_add(Monitor *mon, const QDict *qdict)
}
qdict_del(pdict, "qom-type");
visit_type_str(v, &type, "qom-type", &err);
visit_type_str(v, "qom-type", &type, &err);
if (err) {
goto out_end;
}
qdict_del(pdict, "id");
visit_type_str(v, &id, "id", &err);
visit_type_str(v, "id", &id, &err);
if (err) {
goto out_end;
}
@ -1948,8 +1948,8 @@ void hmp_info_memdev(Monitor *mon, const QDict *qdict)
while (m) {
ov = string_output_visitor_new(false);
visit_type_uint16List(string_output_get_visitor(ov),
&m->value->host_nodes, NULL, NULL);
visit_type_uint16List(string_output_get_visitor(ov), NULL,
&m->value->host_nodes, NULL);
monitor_printf(mon, "memory backend: %d\n", i);
monitor_printf(mon, " size: %" PRId64 "\n", m->value->size);
monitor_printf(mon, " merge: %s\n",

View File

@ -243,7 +243,7 @@ void acpi_table_add(const QemuOpts *opts, Error **errp)
OptsVisitor *ov;
ov = opts_visitor_new(opts);
visit_type_AcpiTableOptions(opts_get_visitor(ov), &hdrs, NULL, &err);
visit_type_AcpiTableOptions(opts_get_visitor(ov), NULL, &hdrs, &err);
opts_visitor_cleanup(ov);
}
@ -302,7 +302,7 @@ out:
QapiDeallocVisitor *dv;
dv = qapi_dealloc_visitor_new();
visit_type_AcpiTableOptions(qapi_dealloc_get_visitor(dv), &hdrs, NULL,
visit_type_AcpiTableOptions(qapi_dealloc_get_visitor(dv), NULL, &hdrs,
NULL);
qapi_dealloc_visitor_cleanup(dv);
}

View File

@ -290,7 +290,7 @@ static void ich9_pm_get_gpe0_blk(Object *obj, Visitor *v,
ICH9LPCPMRegs *pm = opaque;
uint32_t value = pm->pm_io_base + ICH9_PMIO_GPE0_STS;
visit_type_uint32(v, &value, name, errp);
visit_type_uint32(v, name, &value, errp);
}
static bool ich9_pm_get_memory_hotplug_support(Object *obj, Error **errp)
@ -315,7 +315,7 @@ static void ich9_pm_get_disable_s3(Object *obj, Visitor *v,
ICH9LPCPMRegs *pm = opaque;
uint8_t value = pm->disable_s3;
visit_type_uint8(v, &value, name, errp);
visit_type_uint8(v, name, &value, errp);
}
static void ich9_pm_set_disable_s3(Object *obj, Visitor *v,
@ -326,7 +326,7 @@ static void ich9_pm_set_disable_s3(Object *obj, Visitor *v,
Error *local_err = NULL;
uint8_t value;
visit_type_uint8(v, &value, name, &local_err);
visit_type_uint8(v, name, &value, &local_err);
if (local_err) {
goto out;
}
@ -342,7 +342,7 @@ static void ich9_pm_get_disable_s4(Object *obj, Visitor *v,
ICH9LPCPMRegs *pm = opaque;
uint8_t value = pm->disable_s4;
visit_type_uint8(v, &value, name, errp);
visit_type_uint8(v, name, &value, errp);
}
static void ich9_pm_set_disable_s4(Object *obj, Visitor *v,
@ -353,7 +353,7 @@ static void ich9_pm_set_disable_s4(Object *obj, Visitor *v,
Error *local_err = NULL;
uint8_t value;
visit_type_uint8(v, &value, name, &local_err);
visit_type_uint8(v, name, &value, &local_err);
if (local_err) {
goto out;
}
@ -369,7 +369,7 @@ static void ich9_pm_get_s4_val(Object *obj, Visitor *v,
ICH9LPCPMRegs *pm = opaque;
uint8_t value = pm->s4_val;
visit_type_uint8(v, &value, name, errp);
visit_type_uint8(v, name, &value, errp);
}
static void ich9_pm_set_s4_val(Object *obj, Visitor *v,
@ -380,7 +380,7 @@ static void ich9_pm_set_s4_val(Object *obj, Visitor *v,
Error *local_err = NULL;
uint8_t value;
visit_type_uint8(v, &value, name, &local_err);
visit_type_uint8(v, name, &value, &local_err);
if (local_err) {
goto out;
}

View File

@ -41,7 +41,7 @@ static void machine_set_kernel_irqchip(Object *obj, Visitor *v,
MachineState *ms = MACHINE(obj);
OnOffSplit mode;
visit_type_OnOffSplit(v, &mode, name, &err);
visit_type_OnOffSplit(v, name, &mode, &err);
if (err) {
error_propagate(errp, err);
return;
@ -75,7 +75,7 @@ static void machine_get_kvm_shadow_mem(Object *obj, Visitor *v,
MachineState *ms = MACHINE(obj);
int64_t value = ms->kvm_shadow_mem;
visit_type_int(v, &value, name, errp);
visit_type_int(v, name, &value, errp);
}
static void machine_set_kvm_shadow_mem(Object *obj, Visitor *v,
@ -86,7 +86,7 @@ static void machine_set_kvm_shadow_mem(Object *obj, Visitor *v,
Error *error = NULL;
int64_t value;
visit_type_int(v, &value, name, &error);
visit_type_int(v, name, &value, &error);
if (error) {
error_propagate(errp, error);
return;
@ -177,7 +177,7 @@ static void machine_get_phandle_start(Object *obj, Visitor *v,
MachineState *ms = MACHINE(obj);
int64_t value = ms->phandle_start;
visit_type_int(v, &value, name, errp);
visit_type_int(v, name, &value, errp);
}
static void machine_set_phandle_start(Object *obj, Visitor *v,
@ -188,7 +188,7 @@ static void machine_set_phandle_start(Object *obj, Visitor *v,
Error *error = NULL;
int64_t value;
visit_type_int(v, &value, name, &error);
visit_type_int(v, name, &value, &error);
if (error) {
error_propagate(errp, error);
return;

View File

@ -31,7 +31,7 @@ static void get_pointer(Object *obj, Visitor *v, Property *prop,
char *p;
p = *ptr ? print(*ptr) : g_strdup("");
visit_type_str(v, &p, name, errp);
visit_type_str(v, name, &p, errp);
g_free(p);
}
@ -51,7 +51,7 @@ static void set_pointer(Object *obj, Visitor *v, Property *prop,
return;
}
visit_type_str(v, &str, name, &local_err);
visit_type_str(v, name, &str, &local_err);
if (local_err) {
error_propagate(errp, local_err);
return;
@ -202,7 +202,7 @@ static void get_netdev(Object *obj, Visitor *v, void *opaque,
NICPeers *peers_ptr = qdev_get_prop_ptr(dev, prop);
char *p = g_strdup(peers_ptr->ncs[0] ? peers_ptr->ncs[0]->name : "");
visit_type_str(v, &p, name, errp);
visit_type_str(v, name, &p, errp);
g_free(p);
}
@ -223,7 +223,7 @@ static void set_netdev(Object *obj, Visitor *v, void *opaque,
return;
}
visit_type_str(v, &str, name, &local_err);
visit_type_str(v, name, &str, &local_err);
if (local_err) {
error_propagate(errp, local_err);
return;
@ -308,7 +308,7 @@ static void get_vlan(Object *obj, Visitor *v, void *opaque,
}
}
visit_type_int32(v, &id, name, errp);
visit_type_int32(v, name, &id, errp);
}
static void set_vlan(Object *obj, Visitor *v, void *opaque,
@ -327,7 +327,7 @@ static void set_vlan(Object *obj, Visitor *v, void *opaque,
return;
}
visit_type_int32(v, &id, name, &local_err);
visit_type_int32(v, name, &id, &local_err);
if (local_err) {
error_propagate(errp, local_err);
return;

View File

@ -49,8 +49,8 @@ static void get_enum(Object *obj, Visitor *v, void *opaque,
Property *prop = opaque;
int *ptr = qdev_get_prop_ptr(dev, prop);
visit_type_enum(v, ptr, prop->info->enum_table,
prop->info->name, prop->name, errp);
visit_type_enum(v, prop->name, ptr, prop->info->enum_table,
prop->info->name, errp);
}
static void set_enum(Object *obj, Visitor *v, void *opaque,
@ -65,8 +65,8 @@ static void set_enum(Object *obj, Visitor *v, void *opaque,
return;
}
visit_type_enum(v, ptr, prop->info->enum_table,
prop->info->name, prop->name, errp);
visit_type_enum(v, prop->name, ptr, prop->info->enum_table,
prop->info->name, errp);
}
/* Bit */
@ -96,7 +96,7 @@ static void prop_get_bit(Object *obj, Visitor *v, void *opaque,
uint32_t *p = qdev_get_prop_ptr(dev, prop);
bool value = (*p & qdev_get_prop_mask(prop)) != 0;
visit_type_bool(v, &value, name, errp);
visit_type_bool(v, name, &value, errp);
}
static void prop_set_bit(Object *obj, Visitor *v, void *opaque,
@ -112,7 +112,7 @@ static void prop_set_bit(Object *obj, Visitor *v, void *opaque,
return;
}
visit_type_bool(v, &value, name, &local_err);
visit_type_bool(v, name, &value, &local_err);
if (local_err) {
error_propagate(errp, local_err);
return;
@ -154,7 +154,7 @@ static void prop_get_bit64(Object *obj, Visitor *v, void *opaque,
uint64_t *p = qdev_get_prop_ptr(dev, prop);
bool value = (*p & qdev_get_prop_mask64(prop)) != 0;
visit_type_bool(v, &value, name, errp);
visit_type_bool(v, name, &value, errp);
}
static void prop_set_bit64(Object *obj, Visitor *v, void *opaque,
@ -170,7 +170,7 @@ static void prop_set_bit64(Object *obj, Visitor *v, void *opaque,
return;
}
visit_type_bool(v, &value, name, &local_err);
visit_type_bool(v, name, &value, &local_err);
if (local_err) {
error_propagate(errp, local_err);
return;
@ -194,7 +194,7 @@ static void get_bool(Object *obj, Visitor *v, void *opaque,
Property *prop = opaque;
bool *ptr = qdev_get_prop_ptr(dev, prop);
visit_type_bool(v, ptr, name, errp);
visit_type_bool(v, name, ptr, errp);
}
static void set_bool(Object *obj, Visitor *v, void *opaque,
@ -209,7 +209,7 @@ static void set_bool(Object *obj, Visitor *v, void *opaque,
return;
}
visit_type_bool(v, ptr, name, errp);
visit_type_bool(v, name, ptr, errp);
}
PropertyInfo qdev_prop_bool = {
@ -227,7 +227,7 @@ static void get_uint8(Object *obj, Visitor *v, void *opaque,
Property *prop = opaque;
uint8_t *ptr = qdev_get_prop_ptr(dev, prop);
visit_type_uint8(v, ptr, name, errp);
visit_type_uint8(v, name, ptr, errp);
}
static void set_uint8(Object *obj, Visitor *v, void *opaque,
@ -242,7 +242,7 @@ static void set_uint8(Object *obj, Visitor *v, void *opaque,
return;
}
visit_type_uint8(v, ptr, name, errp);
visit_type_uint8(v, name, ptr, errp);
}
PropertyInfo qdev_prop_uint8 = {
@ -260,7 +260,7 @@ static void get_uint16(Object *obj, Visitor *v, void *opaque,
Property *prop = opaque;
uint16_t *ptr = qdev_get_prop_ptr(dev, prop);
visit_type_uint16(v, ptr, name, errp);
visit_type_uint16(v, name, ptr, errp);
}
static void set_uint16(Object *obj, Visitor *v, void *opaque,
@ -275,7 +275,7 @@ static void set_uint16(Object *obj, Visitor *v, void *opaque,
return;
}
visit_type_uint16(v, ptr, name, errp);
visit_type_uint16(v, name, ptr, errp);
}
PropertyInfo qdev_prop_uint16 = {
@ -293,7 +293,7 @@ static void get_uint32(Object *obj, Visitor *v, void *opaque,
Property *prop = opaque;
uint32_t *ptr = qdev_get_prop_ptr(dev, prop);
visit_type_uint32(v, ptr, name, errp);
visit_type_uint32(v, name, ptr, errp);
}
static void set_uint32(Object *obj, Visitor *v, void *opaque,
@ -308,7 +308,7 @@ static void set_uint32(Object *obj, Visitor *v, void *opaque,
return;
}
visit_type_uint32(v, ptr, name, errp);
visit_type_uint32(v, name, ptr, errp);
}
static void get_int32(Object *obj, Visitor *v, void *opaque,
@ -318,7 +318,7 @@ static void get_int32(Object *obj, Visitor *v, void *opaque,
Property *prop = opaque;
int32_t *ptr = qdev_get_prop_ptr(dev, prop);
visit_type_int32(v, ptr, name, errp);
visit_type_int32(v, name, ptr, errp);
}
static void set_int32(Object *obj, Visitor *v, void *opaque,
@ -333,7 +333,7 @@ static void set_int32(Object *obj, Visitor *v, void *opaque,
return;
}
visit_type_int32(v, ptr, name, errp);
visit_type_int32(v, name, ptr, errp);
}
PropertyInfo qdev_prop_uint32 = {
@ -357,7 +357,7 @@ static void get_uint64(Object *obj, Visitor *v, void *opaque,
Property *prop = opaque;
uint64_t *ptr = qdev_get_prop_ptr(dev, prop);
visit_type_uint64(v, ptr, name, errp);
visit_type_uint64(v, name, ptr, errp);
}
static void set_uint64(Object *obj, Visitor *v, void *opaque,
@ -372,7 +372,7 @@ static void set_uint64(Object *obj, Visitor *v, void *opaque,
return;
}
visit_type_uint64(v, ptr, name, errp);
visit_type_uint64(v, name, ptr, errp);
}
PropertyInfo qdev_prop_uint64 = {
@ -398,9 +398,9 @@ static void get_string(Object *obj, Visitor *v, void *opaque,
if (!*ptr) {
char *str = (char *)"";
visit_type_str(v, &str, name, errp);
visit_type_str(v, name, &str, errp);
} else {
visit_type_str(v, ptr, name, errp);
visit_type_str(v, name, ptr, errp);
}
}
@ -418,7 +418,7 @@ static void set_string(Object *obj, Visitor *v, void *opaque,
return;
}
visit_type_str(v, &str, name, &local_err);
visit_type_str(v, name, &str, &local_err);
if (local_err) {
error_propagate(errp, local_err);
return;
@ -461,7 +461,7 @@ static void get_mac(Object *obj, Visitor *v, void *opaque,
mac->a[0], mac->a[1], mac->a[2],
mac->a[3], mac->a[4], mac->a[5]);
visit_type_str(v, &p, name, errp);
visit_type_str(v, name, &p, errp);
}
static void set_mac(Object *obj, Visitor *v, void *opaque,
@ -479,7 +479,7 @@ static void set_mac(Object *obj, Visitor *v, void *opaque,
return;
}
visit_type_str(v, &str, name, &local_err);
visit_type_str(v, name, &str, &local_err);
if (local_err) {
error_propagate(errp, local_err);
return;
@ -573,11 +573,11 @@ static void set_pci_devfn(Object *obj, Visitor *v, void *opaque,
return;
}
visit_type_str(v, &str, name, &local_err);
visit_type_str(v, name, &str, &local_err);
if (local_err) {
error_free(local_err);
local_err = NULL;
visit_type_int32(v, &value, name, &local_err);
visit_type_int32(v, name, &value, &local_err);
if (local_err) {
error_propagate(errp, local_err);
} else if (value < -1 || value > 255) {
@ -644,7 +644,7 @@ static void set_blocksize(Object *obj, Visitor *v, void *opaque,
return;
}
visit_type_uint16(v, &value, name, &local_err);
visit_type_uint16(v, name, &value, &local_err);
if (local_err) {
error_propagate(errp, local_err);
return;
@ -690,7 +690,7 @@ static void get_pci_host_devaddr(Object *obj, Visitor *v, void *opaque,
addr->domain, addr->bus, addr->slot, addr->function);
assert(rc == sizeof(buffer) - 1);
visit_type_str(v, &p, name, errp);
visit_type_str(v, name, &p, errp);
}
/*
@ -715,7 +715,7 @@ static void set_pci_host_devaddr(Object *obj, Visitor *v, void *opaque,
return;
}
visit_type_str(v, &str, name, &local_err);
visit_type_str(v, name, &str, &local_err);
if (local_err) {
error_propagate(errp, local_err);
return;
@ -837,7 +837,7 @@ static void set_prop_arraylen(Object *obj, Visitor *v, void *opaque,
name);
return;
}
visit_type_uint32(v, alenptr, name, &local_err);
visit_type_uint32(v, name, alenptr, &local_err);
if (local_err) {
error_propagate(errp, local_err);
return;
@ -1101,7 +1101,7 @@ static void get_size(Object *obj, Visitor *v, void *opaque,
Property *prop = opaque;
uint64_t *ptr = qdev_get_prop_ptr(dev, prop);
visit_type_size(v, ptr, name, errp);
visit_type_size(v, name, ptr, errp);
}
static void set_size(Object *obj, Visitor *v, void *opaque,
@ -1111,7 +1111,7 @@ static void set_size(Object *obj, Visitor *v, void *opaque,
Property *prop = opaque;
uint64_t *ptr = qdev_get_prop_ptr(dev, prop);
visit_type_size(v, ptr, name, errp);
visit_type_size(v, name, ptr, errp);
}
PropertyInfo qdev_prop_size = {

View File

@ -903,7 +903,7 @@ static void qdev_get_legacy_property(Object *obj, Visitor *v, void *opaque,
char *ptr = buffer;
prop->info->print(dev, prop, buffer, sizeof(buffer));
visit_type_str(v, &ptr, name, errp);
visit_type_str(v, name, &ptr, errp);
}
/**

View File

@ -1747,7 +1747,7 @@ pc_machine_get_hotplug_memory_region_size(Object *obj, Visitor *v, void *opaque,
PCMachineState *pcms = PC_MACHINE(obj);
int64_t value = memory_region_size(&pcms->hotplug_memory.mr);
visit_type_int(v, &value, name, errp);
visit_type_int(v, name, &value, errp);
}
static void pc_machine_get_max_ram_below_4g(Object *obj, Visitor *v,
@ -1757,7 +1757,7 @@ static void pc_machine_get_max_ram_below_4g(Object *obj, Visitor *v,
PCMachineState *pcms = PC_MACHINE(obj);
uint64_t value = pcms->max_ram_below_4g;
visit_type_size(v, &value, name, errp);
visit_type_size(v, name, &value, errp);
}
static void pc_machine_set_max_ram_below_4g(Object *obj, Visitor *v,
@ -1768,7 +1768,7 @@ static void pc_machine_set_max_ram_below_4g(Object *obj, Visitor *v,
Error *error = NULL;
uint64_t value;
visit_type_size(v, &value, name, &error);
visit_type_size(v, name, &value, &error);
if (error) {
error_propagate(errp, error);
return;
@ -1796,7 +1796,7 @@ static void pc_machine_get_vmport(Object *obj, Visitor *v, void *opaque,
PCMachineState *pcms = PC_MACHINE(obj);
OnOffAuto vmport = pcms->vmport;
visit_type_OnOffAuto(v, &vmport, name, errp);
visit_type_OnOffAuto(v, name, &vmport, errp);
}
static void pc_machine_set_vmport(Object *obj, Visitor *v, void *opaque,
@ -1804,7 +1804,7 @@ static void pc_machine_set_vmport(Object *obj, Visitor *v, void *opaque,
{
PCMachineState *pcms = PC_MACHINE(obj);
visit_type_OnOffAuto(v, &pcms->vmport, name, errp);
visit_type_OnOffAuto(v, name, &pcms->vmport, errp);
}
bool pc_machine_is_smm_enabled(PCMachineState *pcms)
@ -1838,7 +1838,7 @@ static void pc_machine_get_smm(Object *obj, Visitor *v, void *opaque,
PCMachineState *pcms = PC_MACHINE(obj);
OnOffAuto smm = pcms->smm;
visit_type_OnOffAuto(v, &smm, name, errp);
visit_type_OnOffAuto(v, name, &smm, errp);
}
static void pc_machine_set_smm(Object *obj, Visitor *v, void *opaque,
@ -1846,7 +1846,7 @@ static void pc_machine_set_smm(Object *obj, Visitor *v, void *opaque,
{
PCMachineState *pcms = PC_MACHINE(obj);
visit_type_OnOffAuto(v, &pcms->smm, name, errp);
visit_type_OnOffAuto(v, name, &pcms->smm, errp);
}
static bool pc_machine_get_nvdimm(Object *obj, Error **errp)

View File

@ -205,7 +205,7 @@ static void ide_dev_get_bootindex(Object *obj, Visitor *v, void *opaque,
{
IDEDevice *d = IDE_DEVICE(obj);
visit_type_int32(v, &d->conf.bootindex, name, errp);
visit_type_int32(v, name, &d->conf.bootindex, errp);
}
static void ide_dev_set_bootindex(Object *obj, Visitor *v, void *opaque,
@ -215,7 +215,7 @@ static void ide_dev_set_bootindex(Object *obj, Visitor *v, void *opaque,
int32_t boot_index;
Error *local_err = NULL;
visit_type_int32(v, &boot_index, name, &local_err);
visit_type_int32(v, name, &boot_index, &local_err);
if (local_err) {
goto out;
}

View File

@ -95,7 +95,7 @@ static void xics_prop_get_nr_irqs(Object *obj, Visitor *v,
XICSState *icp = XICS_COMMON(obj);
int64_t value = icp->nr_irqs;
visit_type_int(v, &value, name, errp);
visit_type_int(v, name, &value, errp);
}
static void xics_prop_set_nr_irqs(Object *obj, Visitor *v,
@ -106,7 +106,7 @@ static void xics_prop_set_nr_irqs(Object *obj, Visitor *v,
Error *error = NULL;
int64_t value;
visit_type_int(v, &value, name, &error);
visit_type_int(v, name, &value, &error);
if (error) {
error_propagate(errp, error);
return;
@ -129,7 +129,7 @@ static void xics_prop_get_nr_servers(Object *obj, Visitor *v,
XICSState *icp = XICS_COMMON(obj);
int64_t value = icp->nr_servers;
visit_type_int(v, &value, name, errp);
visit_type_int(v, name, &value, errp);
}
static void xics_prop_set_nr_servers(Object *obj, Visitor *v,
@ -141,7 +141,7 @@ static void xics_prop_set_nr_servers(Object *obj, Visitor *v,
Error *error = NULL;
int64_t value;
visit_type_int(v, &value, name, &error);
visit_type_int(v, name, &value, &error);
if (error) {
error_propagate(errp, error);
return;

View File

@ -577,7 +577,7 @@ static void ich9_lpc_get_sci_int(Object *obj, Visitor *v,
ICH9LPCState *lpc = ICH9_LPC_DEVICE(obj);
uint32_t value = ich9_lpc_sci_irq(lpc);
visit_type_uint32(v, &value, name, errp);
visit_type_uint32(v, name, &value, errp);
}
static void ich9_lpc_add_properties(ICH9LPCState *lpc)

View File

@ -383,7 +383,7 @@ static void pc_dimm_get_size(Object *obj, Visitor *v, void *opaque,
mr = host_memory_backend_get_memory(dimm->hostmem, errp);
value = memory_region_size(mr);
visit_type_int(v, &value, name, errp);
visit_type_int(v, name, &value, errp);
}
static void pc_dimm_check_memdev_is_busy(Object *obj, const char *name,

View File

@ -368,7 +368,7 @@ static void edu_obj_uint64(Object *obj, Visitor *v, void *opaque,
{
uint64_t *val = opaque;
visit_type_uint64(v, val, name, errp);
visit_type_uint64(v, name, val, errp);
}
static void edu_instance_init(Object *obj)

View File

@ -59,7 +59,7 @@ static void tmp105_get_temperature(Object *obj, Visitor *v, void *opaque,
TMP105State *s = TMP105(obj);
int64_t value = s->temperature * 1000 / 256;
visit_type_int(v, &value, name, errp);
visit_type_int(v, name, &value, errp);
}
/* Units are 0.001 centigrades relative to 0 C. s->temperature is 8.8
@ -72,7 +72,7 @@ static void tmp105_set_temperature(Object *obj, Visitor *v, void *opaque,
Error *local_err = NULL;
int64_t temp;
visit_type_int(v, &temp, name, &local_err);
visit_type_int(v, name, &temp, &local_err);
if (local_err) {
error_propagate(errp, local_err);
return;

View File

@ -100,7 +100,7 @@ static void isa_ne2000_get_bootindex(Object *obj, Visitor *v, void *opaque,
ISANE2000State *isa = ISA_NE2000(obj);
NE2000State *s = &isa->ne2000;
visit_type_int32(v, &s->c.bootindex, name, errp);
visit_type_int32(v, name, &s->c.bootindex, errp);
}
static void isa_ne2000_set_bootindex(Object *obj, Visitor *v, void *opaque,
@ -111,7 +111,7 @@ static void isa_ne2000_set_bootindex(Object *obj, Visitor *v, void *opaque,
int32_t boot_index;
Error *local_err = NULL;
visit_type_int32(v, &boot_index, name, &local_err);
visit_type_int32(v, name, &boot_index, &local_err);
if (local_err) {
goto out;
}

View File

@ -222,7 +222,7 @@ static void i440fx_pcihost_get_pci_hole_start(Object *obj, Visitor *v,
I440FXState *s = I440FX_PCI_HOST_BRIDGE(obj);
uint32_t value = s->pci_info.w32.begin;
visit_type_uint32(v, &value, name, errp);
visit_type_uint32(v, name, &value, errp);
}
static void i440fx_pcihost_get_pci_hole_end(Object *obj, Visitor *v,
@ -232,7 +232,7 @@ static void i440fx_pcihost_get_pci_hole_end(Object *obj, Visitor *v,
I440FXState *s = I440FX_PCI_HOST_BRIDGE(obj);
uint32_t value = s->pci_info.w32.end;
visit_type_uint32(v, &value, name, errp);
visit_type_uint32(v, name, &value, errp);
}
static void i440fx_pcihost_get_pci_hole64_start(Object *obj, Visitor *v,
@ -244,7 +244,7 @@ static void i440fx_pcihost_get_pci_hole64_start(Object *obj, Visitor *v,
pci_bus_get_w64_range(h->bus, &w64);
visit_type_uint64(v, &w64.begin, name, errp);
visit_type_uint64(v, name, &w64.begin, errp);
}
static void i440fx_pcihost_get_pci_hole64_end(Object *obj, Visitor *v,
@ -256,7 +256,7 @@ static void i440fx_pcihost_get_pci_hole64_end(Object *obj, Visitor *v,
pci_bus_get_w64_range(h->bus, &w64);
visit_type_uint64(v, &w64.end, name, errp);
visit_type_uint64(v, name, &w64.end, errp);
}
static void i440fx_pcihost_initfn(Object *obj)

View File

@ -74,7 +74,7 @@ static void q35_host_get_pci_hole_start(Object *obj, Visitor *v,
Q35PCIHost *s = Q35_HOST_DEVICE(obj);
uint32_t value = s->mch.pci_info.w32.begin;
visit_type_uint32(v, &value, name, errp);
visit_type_uint32(v, name, &value, errp);
}
static void q35_host_get_pci_hole_end(Object *obj, Visitor *v,
@ -84,7 +84,7 @@ static void q35_host_get_pci_hole_end(Object *obj, Visitor *v,
Q35PCIHost *s = Q35_HOST_DEVICE(obj);
uint32_t value = s->mch.pci_info.w32.end;
visit_type_uint32(v, &value, name, errp);
visit_type_uint32(v, name, &value, errp);
}
static void q35_host_get_pci_hole64_start(Object *obj, Visitor *v,
@ -96,7 +96,7 @@ static void q35_host_get_pci_hole64_start(Object *obj, Visitor *v,
pci_bus_get_w64_range(h->bus, &w64);
visit_type_uint64(v, &w64.begin, name, errp);
visit_type_uint64(v, name, &w64.begin, errp);
}
static void q35_host_get_pci_hole64_end(Object *obj, Visitor *v,
@ -108,7 +108,7 @@ static void q35_host_get_pci_hole64_end(Object *obj, Visitor *v,
pci_bus_get_w64_range(h->bus, &w64);
visit_type_uint64(v, &w64.end, name, errp);
visit_type_uint64(v, name, &w64.end, errp);
}
static void q35_host_get_mmcfg_size(Object *obj, Visitor *v,
@ -118,7 +118,7 @@ static void q35_host_get_mmcfg_size(Object *obj, Visitor *v,
PCIExpressHost *e = PCIE_HOST_BRIDGE(obj);
uint32_t value = e->size;
visit_type_uint32(v, &value, name, errp);
visit_type_uint32(v, name, &value, errp);
}
static Property mch_props[] = {

View File

@ -221,7 +221,7 @@ static void prop_get_index(Object *obj, Visitor *v, void *opaque,
sPAPRDRConnector *drc = SPAPR_DR_CONNECTOR(obj);
sPAPRDRConnectorClass *drck = SPAPR_DR_CONNECTOR_GET_CLASS(drc);
uint32_t value = (uint32_t)drck->get_index(drc);
visit_type_uint32(v, &value, name, errp);
visit_type_uint32(v, name, &value, errp);
}
static void prop_get_type(Object *obj, Visitor *v, void *opaque,
@ -230,7 +230,7 @@ static void prop_get_type(Object *obj, Visitor *v, void *opaque,
sPAPRDRConnector *drc = SPAPR_DR_CONNECTOR(obj);
sPAPRDRConnectorClass *drck = SPAPR_DR_CONNECTOR_GET_CLASS(drc);
uint32_t value = (uint32_t)drck->get_type(drc);
visit_type_uint32(v, &value, name, errp);
visit_type_uint32(v, name, &value, errp);
}
static char *prop_get_name(Object *obj, Error **errp)
@ -248,7 +248,7 @@ static void prop_get_entity_sense(Object *obj, Visitor *v, void *opaque,
uint32_t value;
drck->entity_sense(drc, &value);
visit_type_uint32(v, &value, name, errp);
visit_type_uint32(v, name, &value, errp);
}
static void prop_get_fdt(Object *obj, Visitor *v, void *opaque,
@ -260,7 +260,7 @@ static void prop_get_fdt(Object *obj, Visitor *v, void *opaque,
void *fdt;
if (!drc->fdt) {
visit_start_struct(v, NULL, NULL, name, 0, &err);
visit_start_struct(v, name, NULL, NULL, 0, &err);
if (!err) {
visit_end_struct(v, &err);
}
@ -283,7 +283,7 @@ static void prop_get_fdt(Object *obj, Visitor *v, void *opaque,
case FDT_BEGIN_NODE:
fdt_depth++;
name = fdt_get_name(fdt, fdt_offset, &name_len);
visit_start_struct(v, NULL, NULL, name, 0, &err);
visit_start_struct(v, name, NULL, NULL, 0, &err);
if (err) {
error_propagate(errp, err);
return;
@ -309,7 +309,7 @@ static void prop_get_fdt(Object *obj, Visitor *v, void *opaque,
return;
}
for (i = 0; i < prop_len; i++) {
visit_type_uint8(v, (uint8_t *)&prop->data[i], NULL, &err);
visit_type_uint8(v, NULL, (uint8_t *)&prop->data[i], &err);
if (err) {
error_propagate(errp, err);
return;

View File

@ -787,7 +787,7 @@ static void usb_msd_get_bootindex(Object *obj, Visitor *v, void *opaque,
USBDevice *dev = USB_DEVICE(obj);
MSDState *s = USB_STORAGE_DEV(dev);
visit_type_int32(v, &s->conf.bootindex, name, errp);
visit_type_int32(v, name, &s->conf.bootindex, errp);
}
static void usb_msd_set_bootindex(Object *obj, Visitor *v, void *opaque,
@ -798,7 +798,7 @@ static void usb_msd_set_bootindex(Object *obj, Visitor *v, void *opaque,
int32_t boot_index;
Error *local_err = NULL;
visit_type_int32(v, &boot_index, name, &local_err);
visit_type_int32(v, name, &boot_index, &local_err);
if (local_err) {
goto out;
}

View File

@ -120,21 +120,21 @@ static void balloon_stats_get_all(Object *obj, Visitor *v,
VirtIOBalloon *s = opaque;
int i;
visit_start_struct(v, NULL, "guest-stats", name, 0, &err);
visit_start_struct(v, name, NULL, "guest-stats", 0, &err);
if (err) {
goto out;
}
visit_type_int(v, &s->stats_last_update, "last-update", &err);
visit_type_int(v, "last-update", &s->stats_last_update, &err);
if (err) {
goto out_end;
}
visit_start_struct(v, NULL, NULL, "stats", 0, &err);
visit_start_struct(v, "stats", NULL, NULL, 0, &err);
if (err) {
goto out_end;
}
for (i = 0; i < VIRTIO_BALLOON_S_NR; i++) {
visit_type_uint64(v, &s->stats[i], balloon_stat_names[i], &err);
visit_type_uint64(v, balloon_stat_names[i], &s->stats[i], &err);
if (err) {
break;
}
@ -156,7 +156,7 @@ static void balloon_stats_get_poll_interval(Object *obj, Visitor *v,
Error **errp)
{
VirtIOBalloon *s = opaque;
visit_type_int(v, &s->stats_poll_interval, name, errp);
visit_type_int(v, name, &s->stats_poll_interval, errp);
}
static void balloon_stats_set_poll_interval(Object *obj, Visitor *v,
@ -167,7 +167,7 @@ static void balloon_stats_set_poll_interval(Object *obj, Visitor *v,
Error *local_err = NULL;
int64_t value;
visit_type_int(v, &value, name, &local_err);
visit_type_int(v, name, &value, &local_err);
if (local_err) {
error_propagate(errp, local_err);
return;

View File

@ -27,8 +27,8 @@ typedef struct GenericList
struct GenericList *next;
} GenericList;
void visit_start_struct(Visitor *v, void **obj, const char *kind,
const char *name, size_t size, Error **errp);
void visit_start_struct(Visitor *v, const char *name, void **obj,
const char *kind, size_t size, Error **errp);
void visit_end_struct(Visitor *v, Error **errp);
void visit_start_implicit_struct(Visitor *v, void **obj, size_t size,
Error **errp);
@ -43,7 +43,7 @@ void visit_end_list(Visitor *v, Error **errp);
* corresponding visit_type_*() needs calling; for other visitors,
* leave *@present unchanged. Return *@present for convenience.
*/
bool visit_optional(Visitor *v, bool *present, const char *name);
bool visit_optional(Visitor *v, const char *name, bool *present);
/**
* Determine the qtype of the item @name in the current object visit.
@ -51,24 +51,34 @@ bool visit_optional(Visitor *v, bool *present, const char *name);
* alternate type; for other visitors, leave *@type unchanged.
* If @promote_int, treat integers as QTYPE_FLOAT.
*/
void visit_get_next_type(Visitor *v, QType *type, bool promote_int,
const char *name, Error **errp);
void visit_type_enum(Visitor *v, int *obj, const char * const strings[],
const char *kind, const char *name, Error **errp);
void visit_type_int(Visitor *v, int64_t *obj, const char *name, Error **errp);
void visit_type_uint8(Visitor *v, uint8_t *obj, const char *name, Error **errp);
void visit_type_uint16(Visitor *v, uint16_t *obj, const char *name, Error **errp);
void visit_type_uint32(Visitor *v, uint32_t *obj, const char *name, Error **errp);
void visit_type_uint64(Visitor *v, uint64_t *obj, const char *name, Error **errp);
void visit_type_int8(Visitor *v, int8_t *obj, const char *name, Error **errp);
void visit_type_int16(Visitor *v, int16_t *obj, const char *name, Error **errp);
void visit_type_int32(Visitor *v, int32_t *obj, const char *name, Error **errp);
void visit_type_int64(Visitor *v, int64_t *obj, const char *name, Error **errp);
void visit_type_size(Visitor *v, uint64_t *obj, const char *name, Error **errp);
void visit_type_bool(Visitor *v, bool *obj, const char *name, Error **errp);
void visit_type_str(Visitor *v, char **obj, const char *name, Error **errp);
void visit_type_number(Visitor *v, double *obj, const char *name, Error **errp);
void visit_type_any(Visitor *v, QObject **obj, const char *name, Error **errp);
void visit_get_next_type(Visitor *v, const char *name, QType *type,
bool promote_int, Error **errp);
void visit_type_enum(Visitor *v, const char *name, int *obj,
const char *const strings[], const char *kind,
Error **errp);
void visit_type_int(Visitor *v, const char *name, int64_t *obj, Error **errp);
void visit_type_uint8(Visitor *v, const char *name, uint8_t *obj,
Error **errp);
void visit_type_uint16(Visitor *v, const char *name, uint16_t *obj,
Error **errp);
void visit_type_uint32(Visitor *v, const char *name, uint32_t *obj,
Error **errp);
void visit_type_uint64(Visitor *v, const char *name, uint64_t *obj,
Error **errp);
void visit_type_int8(Visitor *v, const char *name, int8_t *obj, Error **errp);
void visit_type_int16(Visitor *v, const char *name, int16_t *obj,
Error **errp);
void visit_type_int32(Visitor *v, const char *name, int32_t *obj,
Error **errp);
void visit_type_int64(Visitor *v, const char *name, int64_t *obj,
Error **errp);
void visit_type_size(Visitor *v, const char *name, uint64_t *obj,
Error **errp);
void visit_type_bool(Visitor *v, const char *name, bool *obj, Error **errp);
void visit_type_str(Visitor *v, const char *name, char **obj, Error **errp);
void visit_type_number(Visitor *v, const char *name, double *obj,
Error **errp);
void visit_type_any(Visitor *v, const char *name, QObject **obj, Error **errp);
bool visit_start_union(Visitor *v, bool data_present, Error **errp);
#endif

View File

@ -934,7 +934,7 @@ static void memory_region_get_addr(Object *obj, Visitor *v, void *opaque,
MemoryRegion *mr = MEMORY_REGION(obj);
uint64_t value = mr->addr;
visit_type_uint64(v, &value, name, errp);
visit_type_uint64(v, name, &value, errp);
}
static void memory_region_get_container(Object *obj, Visitor *v, void *opaque,
@ -946,7 +946,7 @@ static void memory_region_get_container(Object *obj, Visitor *v, void *opaque,
if (mr->container) {
path = object_get_canonical_path(OBJECT(mr->container));
}
visit_type_str(v, &path, name, errp);
visit_type_str(v, name, &path, errp);
if (mr->container) {
g_free(path);
}
@ -966,7 +966,7 @@ static void memory_region_get_priority(Object *obj, Visitor *v, void *opaque,
MemoryRegion *mr = MEMORY_REGION(obj);
int32_t value = mr->priority;
visit_type_int32(v, &value, name, errp);
visit_type_int32(v, name, &value, errp);
}
static bool memory_region_get_may_overlap(Object *obj, Error **errp)
@ -982,7 +982,7 @@ static void memory_region_get_size(Object *obj, Visitor *v, void *opaque,
MemoryRegion *mr = MEMORY_REGION(obj);
uint64_t value = memory_region_size(mr);
visit_type_uint64(v, &value, name, errp);
visit_type_uint64(v, name, &value, errp);
}
static void memory_region_initfn(Object *obj)

View File

@ -278,7 +278,7 @@ static void filter_dump_get_maxlen(Object *obj, Visitor *v, void *opaque,
NetFilterDumpState *nfds = FILTER_DUMP(obj);
uint32_t value = nfds->maxlen;
visit_type_uint32(v, &value, name, errp);
visit_type_uint32(v, name, &value, errp);
}
static void filter_dump_set_maxlen(Object *obj, Visitor *v, void *opaque,
@ -288,7 +288,7 @@ static void filter_dump_set_maxlen(Object *obj, Visitor *v, void *opaque,
Error *local_err = NULL;
uint32_t value;
visit_type_uint32(v, &value, name, &local_err);
visit_type_uint32(v, name, &value, &local_err);
if (local_err) {
goto out;
}

View File

@ -139,7 +139,7 @@ static void filter_buffer_get_interval(Object *obj, Visitor *v, void *opaque,
FilterBufferState *s = FILTER_BUFFER(obj);
uint32_t value = s->interval;
visit_type_uint32(v, &value, name, errp);
visit_type_uint32(v, name, &value, errp);
}
static void filter_buffer_set_interval(Object *obj, Visitor *v, void *opaque,
@ -149,7 +149,7 @@ static void filter_buffer_set_interval(Object *obj, Visitor *v, void *opaque,
Error *local_err = NULL;
uint32_t value;
visit_type_uint32(v, &value, name, &local_err);
visit_type_uint32(v, name, &value, &local_err);
if (local_err) {
goto out;
}

View File

@ -1046,9 +1046,9 @@ static int net_client_init1(const void *object, int is_netdev, Error **errp)
static void net_visit(Visitor *v, int is_netdev, void **object, Error **errp)
{
if (is_netdev) {
visit_type_Netdev(v, (Netdev **)object, NULL, errp);
visit_type_Netdev(v, NULL, (Netdev **)object, errp);
} else {
visit_type_NetLegacy(v, (NetLegacy **)object, NULL, errp);
visit_type_NetLegacy(v, NULL, (NetLegacy **)object, errp);
}
}

6
numa.c
View File

@ -219,7 +219,7 @@ static int parse_numa(void *opaque, QemuOpts *opts, Error **errp)
{
OptsVisitor *ov = opts_visitor_new(opts);
visit_type_NumaOptions(opts_get_visitor(ov), &object, NULL, &err);
visit_type_NumaOptions(opts_get_visitor(ov), NULL, &object, &err);
opts_visitor_cleanup(ov);
}
@ -246,8 +246,8 @@ error:
if (object) {
QapiDeallocVisitor *dv = qapi_dealloc_visitor_new();
visit_type_NumaOptions(qapi_dealloc_get_visitor(dv),
&object, NULL, NULL);
visit_type_NumaOptions(qapi_dealloc_get_visitor(dv), NULL, &object,
NULL);
qapi_dealloc_visitor_cleanup(dv);
}

View File

@ -19,8 +19,8 @@
#include "qapi/visitor.h"
#include "qapi/visitor-impl.h"
void visit_start_struct(Visitor *v, void **obj, const char *kind,
const char *name, size_t size, Error **errp)
void visit_start_struct(Visitor *v, const char *name, void **obj,
const char *kind, size_t size, Error **errp)
{
v->start_struct(v, obj, kind, name, size, errp);
}
@ -68,7 +68,7 @@ bool visit_start_union(Visitor *v, bool data_present, Error **errp)
return true;
}
bool visit_optional(Visitor *v, bool *present, const char *name)
bool visit_optional(Visitor *v, const char *name, bool *present)
{
if (v->optional) {
v->optional(v, present, name);
@ -76,21 +76,22 @@ bool visit_optional(Visitor *v, bool *present, const char *name)
return *present;
}
void visit_get_next_type(Visitor *v, QType *type, bool promote_int,
const char *name, Error **errp)
void visit_get_next_type(Visitor *v, const char *name, QType *type,
bool promote_int, Error **errp)
{
if (v->get_next_type) {
v->get_next_type(v, type, promote_int, name, errp);
}
}
void visit_type_enum(Visitor *v, int *obj, const char * const strings[],
const char *kind, const char *name, Error **errp)
void visit_type_enum(Visitor *v, const char *name, int *obj,
const char *const strings[], const char *kind,
Error **errp)
{
v->type_enum(v, obj, strings, kind, name, errp);
}
void visit_type_int(Visitor *v, int64_t *obj, const char *name, Error **errp)
void visit_type_int(Visitor *v, const char *name, int64_t *obj, Error **errp)
{
v->type_int64(v, obj, name, errp);
}
@ -112,14 +113,15 @@ static void visit_type_uintN(Visitor *v, uint64_t *obj, const char *name,
}
}
void visit_type_uint8(Visitor *v, uint8_t *obj, const char *name, Error **errp)
void visit_type_uint8(Visitor *v, const char *name, uint8_t *obj,
Error **errp)
{
uint64_t value = *obj;
visit_type_uintN(v, &value, name, UINT8_MAX, "uint8_t", errp);
*obj = value;
}
void visit_type_uint16(Visitor *v, uint16_t *obj, const char *name,
void visit_type_uint16(Visitor *v, const char *name, uint16_t *obj,
Error **errp)
{
uint64_t value = *obj;
@ -127,7 +129,7 @@ void visit_type_uint16(Visitor *v, uint16_t *obj, const char *name,
*obj = value;
}
void visit_type_uint32(Visitor *v, uint32_t *obj, const char *name,
void visit_type_uint32(Visitor *v, const char *name, uint32_t *obj,
Error **errp)
{
uint64_t value = *obj;
@ -135,7 +137,7 @@ void visit_type_uint32(Visitor *v, uint32_t *obj, const char *name,
*obj = value;
}
void visit_type_uint64(Visitor *v, uint64_t *obj, const char *name,
void visit_type_uint64(Visitor *v, const char *name, uint64_t *obj,
Error **errp)
{
v->type_uint64(v, obj, name, errp);
@ -159,33 +161,37 @@ static void visit_type_intN(Visitor *v, int64_t *obj, const char *name,
}
}
void visit_type_int8(Visitor *v, int8_t *obj, const char *name, Error **errp)
void visit_type_int8(Visitor *v, const char *name, int8_t *obj, Error **errp)
{
int64_t value = *obj;
visit_type_intN(v, &value, name, INT8_MIN, INT8_MAX, "int8_t", errp);
*obj = value;
}
void visit_type_int16(Visitor *v, int16_t *obj, const char *name, Error **errp)
void visit_type_int16(Visitor *v, const char *name, int16_t *obj,
Error **errp)
{
int64_t value = *obj;
visit_type_intN(v, &value, name, INT16_MIN, INT16_MAX, "int16_t", errp);
*obj = value;
}
void visit_type_int32(Visitor *v, int32_t *obj, const char *name, Error **errp)
void visit_type_int32(Visitor *v, const char *name, int32_t *obj,
Error **errp)
{
int64_t value = *obj;
visit_type_intN(v, &value, name, INT32_MIN, INT32_MAX, "int32_t", errp);
*obj = value;
}
void visit_type_int64(Visitor *v, int64_t *obj, const char *name, Error **errp)
void visit_type_int64(Visitor *v, const char *name, int64_t *obj,
Error **errp)
{
v->type_int64(v, obj, name, errp);
}
void visit_type_size(Visitor *v, uint64_t *obj, const char *name, Error **errp)
void visit_type_size(Visitor *v, const char *name, uint64_t *obj,
Error **errp)
{
if (v->type_size) {
v->type_size(v, obj, name, errp);
@ -194,23 +200,23 @@ void visit_type_size(Visitor *v, uint64_t *obj, const char *name, Error **errp)
}
}
void visit_type_bool(Visitor *v, bool *obj, const char *name, Error **errp)
void visit_type_bool(Visitor *v, const char *name, bool *obj, Error **errp)
{
v->type_bool(v, obj, name, errp);
}
void visit_type_str(Visitor *v, char **obj, const char *name, Error **errp)
void visit_type_str(Visitor *v, const char *name, char **obj, Error **errp)
{
v->type_str(v, obj, name, errp);
}
void visit_type_number(Visitor *v, double *obj, const char *name, Error **errp)
void visit_type_number(Visitor *v, const char *name, double *obj,
Error **errp)
{
v->type_number(v, obj, name, errp);
}
void visit_type_any(Visitor *v, QObject **obj, const char *name,
Error **errp)
void visit_type_any(Visitor *v, const char *name, QObject **obj, Error **errp)
{
v->type_any(v, obj, name, errp);
}
@ -231,7 +237,7 @@ void output_type_enum(Visitor *v, int *obj, const char * const strings[],
}
enum_str = (char *)strings[value];
visit_type_str(v, &enum_str, name, errp);
visit_type_str(v, name, &enum_str, errp);
}
void input_type_enum(Visitor *v, int *obj, const char * const strings[],
@ -244,7 +250,7 @@ void input_type_enum(Visitor *v, int *obj, const char * const strings[],
assert(strings);
visit_type_str(v, &enum_str, name, &local_err);
visit_type_str(v, name, &enum_str, &local_err);
if (local_err) {
error_propagate(errp, local_err);
return;

View File

@ -376,8 +376,8 @@ static void dump_json_image_check(ImageCheck *check, bool quiet)
QString *str;
QmpOutputVisitor *ov = qmp_output_visitor_new();
QObject *obj;
visit_type_ImageCheck(qmp_output_get_visitor(ov),
&check, NULL, &local_err);
visit_type_ImageCheck(qmp_output_get_visitor(ov), NULL, &check,
&local_err);
obj = qmp_output_get_qobject(ov);
str = qobject_to_json_pretty(obj);
assert(str != NULL);
@ -1942,8 +1942,8 @@ static void dump_json_image_info_list(ImageInfoList *list)
QString *str;
QmpOutputVisitor *ov = qmp_output_visitor_new();
QObject *obj;
visit_type_ImageInfoList(qmp_output_get_visitor(ov),
&list, NULL, &local_err);
visit_type_ImageInfoList(qmp_output_get_visitor(ov), NULL, &list,
&local_err);
obj = qmp_output_get_qobject(ov);
str = qobject_to_json_pretty(obj);
assert(str != NULL);
@ -1959,8 +1959,7 @@ static void dump_json_image_info(ImageInfo *info)
QString *str;
QmpOutputVisitor *ov = qmp_output_visitor_new();
QObject *obj;
visit_type_ImageInfo(qmp_output_get_visitor(ov),
&info, NULL, &local_err);
visit_type_ImageInfo(qmp_output_get_visitor(ov), NULL, &info, &local_err);
obj = qmp_output_get_qobject(ov);
str = qobject_to_json_pretty(obj);
assert(str != NULL);

View File

@ -1244,8 +1244,8 @@ int object_property_get_enum(Object *obj, const char *name,
str = string_output_get_string(sov);
siv = string_input_visitor_new(str);
string_output_visitor_cleanup(sov);
visit_type_enum(string_input_get_visitor(siv),
&ret, enumprop->strings, NULL, name, errp);
visit_type_enum(string_input_get_visitor(siv), name, &ret,
enumprop->strings, NULL, errp);
g_free(str);
string_input_visitor_cleanup(siv);
@ -1270,8 +1270,7 @@ void object_property_get_uint16List(Object *obj, const char *name,
}
str = string_output_get_string(ov);
iv = string_input_visitor_new(str);
visit_type_uint16List(string_input_get_visitor(iv),
list, NULL, errp);
visit_type_uint16List(string_input_get_visitor(iv), NULL, list, errp);
g_free(str);
string_input_visitor_cleanup(iv);
@ -1343,7 +1342,7 @@ static void object_get_child_property(Object *obj, Visitor *v, void *opaque,
gchar *path;
path = object_get_canonical_path(child);
visit_type_str(v, &path, name, errp);
visit_type_str(v, name, &path, errp);
g_free(path);
}
@ -1414,11 +1413,11 @@ static void object_get_link_property(Object *obj, Visitor *v, void *opaque,
if (*child) {
path = object_get_canonical_path(*child);
visit_type_str(v, &path, name, errp);
visit_type_str(v, name, &path, errp);
g_free(path);
} else {
path = (gchar *)"";
visit_type_str(v, &path, name, errp);
visit_type_str(v, name, &path, errp);
}
}
@ -1472,7 +1471,7 @@ static void object_set_link_property(Object *obj, Visitor *v, void *opaque,
Object *new_target = NULL;
char *path = NULL;
visit_type_str(v, &path, name, &local_err);
visit_type_str(v, name, &path, &local_err);
if (!local_err && strcmp(path, "") != 0) {
new_target = object_resolve_link(obj, name, path, &local_err);
@ -1739,7 +1738,7 @@ static void property_get_str(Object *obj, Visitor *v, void *opaque,
return;
}
visit_type_str(v, &value, name, errp);
visit_type_str(v, name, &value, errp);
g_free(value);
}
@ -1750,7 +1749,7 @@ static void property_set_str(Object *obj, Visitor *v, void *opaque,
char *value;
Error *local_err = NULL;
visit_type_str(v, &value, name, &local_err);
visit_type_str(v, name, &value, &local_err);
if (local_err) {
error_propagate(errp, local_err);
return;
@ -1831,7 +1830,7 @@ static void property_get_bool(Object *obj, Visitor *v, void *opaque,
return;
}
visit_type_bool(v, &value, name, errp);
visit_type_bool(v, name, &value, errp);
}
static void property_set_bool(Object *obj, Visitor *v, void *opaque,
@ -1841,7 +1840,7 @@ static void property_set_bool(Object *obj, Visitor *v, void *opaque,
bool value;
Error *local_err = NULL;
visit_type_bool(v, &value, name, &local_err);
visit_type_bool(v, name, &value, &local_err);
if (local_err) {
error_propagate(errp, local_err);
return;
@ -1914,7 +1913,7 @@ static void property_get_enum(Object *obj, Visitor *v, void *opaque,
return;
}
visit_type_enum(v, &value, prop->strings, NULL, name, errp);
visit_type_enum(v, name, &value, prop->strings, NULL, errp);
}
static void property_set_enum(Object *obj, Visitor *v, void *opaque,
@ -1924,7 +1923,7 @@ static void property_set_enum(Object *obj, Visitor *v, void *opaque,
int value;
Error *err = NULL;
visit_type_enum(v, &value, prop->strings, NULL, name, &err);
visit_type_enum(v, name, &value, prop->strings, NULL, &err);
if (err) {
error_propagate(errp, err);
return;
@ -2005,31 +2004,31 @@ static void property_get_tm(Object *obj, Visitor *v, void *opaque,
goto out;
}
visit_start_struct(v, NULL, "struct tm", name, 0, &err);
visit_start_struct(v, name, NULL, "struct tm", 0, &err);
if (err) {
goto out;
}
visit_type_int32(v, &value.tm_year, "tm_year", &err);
visit_type_int32(v, "tm_year", &value.tm_year, &err);
if (err) {
goto out_end;
}
visit_type_int32(v, &value.tm_mon, "tm_mon", &err);
visit_type_int32(v, "tm_mon", &value.tm_mon, &err);
if (err) {
goto out_end;
}
visit_type_int32(v, &value.tm_mday, "tm_mday", &err);
visit_type_int32(v, "tm_mday", &value.tm_mday, &err);
if (err) {
goto out_end;
}
visit_type_int32(v, &value.tm_hour, "tm_hour", &err);
visit_type_int32(v, "tm_hour", &value.tm_hour, &err);
if (err) {
goto out_end;
}
visit_type_int32(v, &value.tm_min, "tm_min", &err);
visit_type_int32(v, "tm_min", &value.tm_min, &err);
if (err) {
goto out_end;
}
visit_type_int32(v, &value.tm_sec, "tm_sec", &err);
visit_type_int32(v, "tm_sec", &value.tm_sec, &err);
if (err) {
goto out_end;
}
@ -2097,7 +2096,7 @@ static void property_get_uint8_ptr(Object *obj, Visitor *v,
Error **errp)
{
uint8_t value = *(uint8_t *)opaque;
visit_type_uint8(v, &value, name, errp);
visit_type_uint8(v, name, &value, errp);
}
static void property_get_uint16_ptr(Object *obj, Visitor *v,
@ -2105,7 +2104,7 @@ static void property_get_uint16_ptr(Object *obj, Visitor *v,
Error **errp)
{
uint16_t value = *(uint16_t *)opaque;
visit_type_uint16(v, &value, name, errp);
visit_type_uint16(v, name, &value, errp);
}
static void property_get_uint32_ptr(Object *obj, Visitor *v,
@ -2113,7 +2112,7 @@ static void property_get_uint32_ptr(Object *obj, Visitor *v,
Error **errp)
{
uint32_t value = *(uint32_t *)opaque;
visit_type_uint32(v, &value, name, errp);
visit_type_uint32(v, name, &value, errp);
}
static void property_get_uint64_ptr(Object *obj, Visitor *v,
@ -2121,7 +2120,7 @@ static void property_get_uint64_ptr(Object *obj, Visitor *v,
Error **errp)
{
uint64_t value = *(uint64_t *)opaque;
visit_type_uint64(v, &value, name, errp);
visit_type_uint64(v, name, &value, errp);
}
void object_property_add_uint8_ptr(Object *obj, const char *name,

View File

@ -29,7 +29,7 @@ static InputEvent *qapi_clone_InputEvent(InputEvent *src)
qov = qmp_output_visitor_new();
ov = qmp_output_get_visitor(qov);
visit_type_InputEvent(ov, &src, NULL, &error_abort);
visit_type_InputEvent(ov, NULL, &src, &error_abort);
obj = qmp_output_get_qobject(qov);
qmp_output_visitor_cleanup(qov);
if (!obj) {
@ -38,7 +38,7 @@ static InputEvent *qapi_clone_InputEvent(InputEvent *src)
qiv = qmp_input_visitor_new(obj);
iv = qmp_input_get_visitor(qiv);
visit_type_InputEvent(iv, &dst, NULL, &error_abort);
visit_type_InputEvent(iv, NULL, &dst, &error_abort);
qmp_input_visitor_cleanup(qiv);
qobject_decref(obj);

View File

@ -131,7 +131,7 @@ static void qmp_marshal_output_%(c_name)s(%(c_type)s ret_in, QObject **ret_out,
Visitor *v;
v = qmp_output_get_visitor(qov);
visit_type_%(c_name)s(v, &ret_in, "unused", &err);
visit_type_%(c_name)s(v, "unused", &ret_in, &err);
if (err) {
goto out;
}
@ -142,7 +142,7 @@ out:
qmp_output_visitor_cleanup(qov);
qdv = qapi_dealloc_visitor_new();
v = qapi_dealloc_get_visitor(qdv);
visit_type_%(c_name)s(v, &ret_in, "unused", NULL);
visit_type_%(c_name)s(v, "unused", &ret_in, NULL);
qapi_dealloc_visitor_cleanup(qdv);
}
''',

View File

@ -63,7 +63,7 @@ def gen_event_send(name, arg_type):
qov = qmp_output_visitor_new();
v = qmp_output_get_visitor(qov);
visit_start_struct(v, NULL, NULL, "%(name)s", 0, &err);
visit_start_struct(v, "%(name)s", NULL, NULL, 0, &err);
''',
name=name)
ret += gen_err_check()

View File

@ -155,7 +155,7 @@ void qapi_free_%(c_name)s(%(c_name)s *obj)
qdv = qapi_dealloc_visitor_new();
v = qapi_dealloc_get_visitor(qdv);
visit_type_%(c_name)s(v, &obj, NULL, NULL);
visit_type_%(c_name)s(v, NULL, &obj, NULL);
qapi_dealloc_visitor_cleanup(qdv);
}
''',

View File

@ -29,7 +29,7 @@ def gen_visit_decl(name, scalar=False):
if not scalar:
c_type += '*'
return mcgen('''
void visit_type_%(c_name)s(Visitor *v, %(c_type)sobj, const char *name, Error **errp);
void visit_type_%(c_name)s(Visitor *v, const char *name, %(c_type)sobj, Error **errp);
''',
c_name=c_name(name), c_type=c_type)
@ -118,11 +118,11 @@ def gen_visit_struct(name, base, members):
# call qapi_free_FOO() to avoid a memory leak of the partial FOO.
ret += mcgen('''
void visit_type_%(c_name)s(Visitor *v, %(c_name)s **obj, const char *name, Error **errp)
void visit_type_%(c_name)s(Visitor *v, const char *name, %(c_name)s **obj, Error **errp)
{
Error *err = NULL;
visit_start_struct(v, (void **)obj, "%(name)s", name, sizeof(%(c_name)s), &err);
visit_start_struct(v, name, (void **)obj, "%(name)s", sizeof(%(c_name)s), &err);
if (err) {
goto out;
}
@ -150,7 +150,7 @@ def gen_visit_list(name, element_type):
# call qapi_free_FOOList() to avoid a memory leak of the partial FOOList.
return mcgen('''
void visit_type_%(c_name)s(Visitor *v, %(c_name)s **obj, const char *name, Error **errp)
void visit_type_%(c_name)s(Visitor *v, const char *name, %(c_name)s **obj, Error **errp)
{
Error *err = NULL;
GenericList *i, **prev;
@ -164,7 +164,7 @@ void visit_type_%(c_name)s(Visitor *v, %(c_name)s **obj, const char *name, Error
!err && (i = visit_next_list(v, prev, &err)) != NULL;
prev = &i) {
%(c_name)s *native_i = (%(c_name)s *)i;
visit_type_%(c_elt_type)s(v, &native_i->value, NULL, &err);
visit_type_%(c_elt_type)s(v, NULL, &native_i->value, &err);
}
error_propagate(errp, err);
@ -180,10 +180,10 @@ out:
def gen_visit_enum(name):
return mcgen('''
void visit_type_%(c_name)s(Visitor *v, %(c_name)s *obj, const char *name, Error **errp)
void visit_type_%(c_name)s(Visitor *v, const char *name, %(c_name)s *obj, Error **errp)
{
int value = *obj;
visit_type_enum(v, &value, %(c_name)s_lookup, "%(name)s", name, errp);
visit_type_enum(v, name, &value, %(c_name)s_lookup, "%(name)s", errp);
*obj = value;
}
''',
@ -198,7 +198,7 @@ def gen_visit_alternate(name, variants):
ret = mcgen('''
void visit_type_%(c_name)s(Visitor *v, %(c_name)s **obj, const char *name, Error **errp)
void visit_type_%(c_name)s(Visitor *v, const char *name, %(c_name)s **obj, Error **errp)
{
Error *err = NULL;
@ -206,7 +206,7 @@ void visit_type_%(c_name)s(Visitor *v, %(c_name)s **obj, const char *name, Error
if (err) {
goto out;
}
visit_get_next_type(v, &(*obj)->type, %(promote_int)s, name, &err);
visit_get_next_type(v, name, &(*obj)->type, %(promote_int)s, &err);
if (err) {
goto out_obj;
}
@ -217,7 +217,7 @@ void visit_type_%(c_name)s(Visitor *v, %(c_name)s **obj, const char *name, Error
for var in variants.variants:
ret += mcgen('''
case %(case)s:
visit_type_%(c_type)s(v, &(*obj)->u.%(c_name)s, name, &err);
visit_type_%(c_type)s(v, name, &(*obj)->u.%(c_name)s, &err);
break;
''',
case=var.type.alternate_qtype(),
@ -255,11 +255,11 @@ def gen_visit_union(name, base, variants):
ret += mcgen('''
void visit_type_%(c_name)s(Visitor *v, %(c_name)s **obj, const char *name, Error **errp)
void visit_type_%(c_name)s(Visitor *v, const char *name, %(c_name)s **obj, Error **errp)
{
Error *err = NULL;
visit_start_struct(v, (void **)obj, "%(name)s", name, sizeof(%(c_name)s), &err);
visit_start_struct(v, name, (void **)obj, "%(name)s", sizeof(%(c_name)s), &err);
if (err) {
goto out;
}
@ -276,7 +276,7 @@ void visit_type_%(c_name)s(Visitor *v, %(c_name)s **obj, const char *name, Error
c_name=base.c_name())
else:
ret += mcgen('''
visit_type_%(c_type)s(v, &(*obj)->%(c_name)s, "%(name)s", &err);
visit_type_%(c_type)s(v, "%(name)s", &(*obj)->%(c_name)s, &err);
''',
c_type=variants.tag_member.type.c_name(),
c_name=c_name(variants.tag_member.name),
@ -300,7 +300,7 @@ void visit_type_%(c_name)s(Visitor *v, %(c_name)s **obj, const char *name, Error
var.name))
if simple_union_type:
ret += mcgen('''
visit_type_%(c_type)s(v, &(*obj)->u.%(c_name)s, "data", &err);
visit_type_%(c_type)s(v, "data", &(*obj)->u.%(c_name)s, &err);
''',
c_type=simple_union_type.c_name(),
c_name=c_name(var.name))

View File

@ -1647,7 +1647,7 @@ def gen_visit_fields(members, prefix='', need_cast=False, skiperr=False,
for memb in members:
if memb.optional:
ret += mcgen('''
if (visit_optional(v, &%(prefix)shas_%(c_name)s, "%(name)s")) {
if (visit_optional(v, "%(name)s", &%(prefix)shas_%(c_name)s)) {
''',
prefix=prefix, c_name=c_name(memb.name),
name=memb.name)
@ -1660,7 +1660,7 @@ def gen_visit_fields(members, prefix='', need_cast=False, skiperr=False,
cast = ''
ret += mcgen('''
visit_type_%(c_type)s(v, %(cast)s&%(prefix)s%(c_name)s, "%(name)s", %(errp)s);
visit_type_%(c_type)s(v, "%(name)s", %(cast)s&%(prefix)s%(c_name)s, %(errp)s);
''',
c_type=memb.type.c_name(), prefix=prefix, cast=cast,
c_name=c_name(memb.name), name=memb.name,

View File

@ -1541,7 +1541,7 @@ static void x86_cpuid_version_get_family(Object *obj, Visitor *v, void *opaque,
if (value == 0xf) {
value += (env->cpuid_version >> 20) & 0xff;
}
visit_type_int(v, &value, name, errp);
visit_type_int(v, name, &value, errp);
}
static void x86_cpuid_version_set_family(Object *obj, Visitor *v, void *opaque,
@ -1554,7 +1554,7 @@ static void x86_cpuid_version_set_family(Object *obj, Visitor *v, void *opaque,
Error *local_err = NULL;
int64_t value;
visit_type_int(v, &value, name, &local_err);
visit_type_int(v, name, &value, &local_err);
if (local_err) {
error_propagate(errp, local_err);
return;
@ -1582,7 +1582,7 @@ static void x86_cpuid_version_get_model(Object *obj, Visitor *v, void *opaque,
value = (env->cpuid_version >> 4) & 0xf;
value |= ((env->cpuid_version >> 16) & 0xf) << 4;
visit_type_int(v, &value, name, errp);
visit_type_int(v, name, &value, errp);
}
static void x86_cpuid_version_set_model(Object *obj, Visitor *v, void *opaque,
@ -1595,7 +1595,7 @@ static void x86_cpuid_version_set_model(Object *obj, Visitor *v, void *opaque,
Error *local_err = NULL;
int64_t value;
visit_type_int(v, &value, name, &local_err);
visit_type_int(v, name, &value, &local_err);
if (local_err) {
error_propagate(errp, local_err);
return;
@ -1619,7 +1619,7 @@ static void x86_cpuid_version_get_stepping(Object *obj, Visitor *v,
int64_t value;
value = env->cpuid_version & 0xf;
visit_type_int(v, &value, name, errp);
visit_type_int(v, name, &value, errp);
}
static void x86_cpuid_version_set_stepping(Object *obj, Visitor *v,
@ -1633,7 +1633,7 @@ static void x86_cpuid_version_set_stepping(Object *obj, Visitor *v,
Error *local_err = NULL;
int64_t value;
visit_type_int(v, &value, name, &local_err);
visit_type_int(v, name, &value, &local_err);
if (local_err) {
error_propagate(errp, local_err);
return;
@ -1726,7 +1726,7 @@ static void x86_cpuid_get_tsc_freq(Object *obj, Visitor *v, void *opaque,
int64_t value;
value = cpu->env.tsc_khz * 1000;
visit_type_int(v, &value, name, errp);
visit_type_int(v, name, &value, errp);
}
static void x86_cpuid_set_tsc_freq(Object *obj, Visitor *v, void *opaque,
@ -1738,7 +1738,7 @@ static void x86_cpuid_set_tsc_freq(Object *obj, Visitor *v, void *opaque,
Error *local_err = NULL;
int64_t value;
visit_type_int(v, &value, name, &local_err);
visit_type_int(v, name, &value, &local_err);
if (local_err) {
error_propagate(errp, local_err);
return;
@ -1758,7 +1758,7 @@ static void x86_cpuid_get_apic_id(Object *obj, Visitor *v, void *opaque,
X86CPU *cpu = X86_CPU(obj);
int64_t value = cpu->apic_id;
visit_type_int(v, &value, name, errp);
visit_type_int(v, name, &value, errp);
}
static void x86_cpuid_set_apic_id(Object *obj, Visitor *v, void *opaque,
@ -1777,7 +1777,7 @@ static void x86_cpuid_set_apic_id(Object *obj, Visitor *v, void *opaque,
return;
}
visit_type_int(v, &value, name, &error);
visit_type_int(v, name, &value, &error);
if (error) {
error_propagate(errp, error);
return;
@ -1822,7 +1822,7 @@ static void x86_cpu_get_feature_words(Object *obj, Visitor *v, void *opaque,
list = &list_entries[w];
}
visit_type_X86CPUFeatureWordInfoList(v, &list, "feature-words", &err);
visit_type_X86CPUFeatureWordInfoList(v, "feature-words", &list, &err);
error_propagate(errp, err);
}
@ -1832,7 +1832,7 @@ static void x86_get_hv_spinlocks(Object *obj, Visitor *v, void *opaque,
X86CPU *cpu = X86_CPU(obj);
int64_t value = cpu->hyperv_spinlock_attempts;
visit_type_int(v, &value, name, errp);
visit_type_int(v, name, &value, errp);
}
static void x86_set_hv_spinlocks(Object *obj, Visitor *v, void *opaque,
@ -1844,7 +1844,7 @@ static void x86_set_hv_spinlocks(Object *obj, Visitor *v, void *opaque,
Error *err = NULL;
int64_t value;
visit_type_int(v, &value, name, &err);
visit_type_int(v, name, &value, &err);
if (err) {
error_propagate(errp, err);
return;
@ -2952,7 +2952,7 @@ static void x86_cpu_get_bit_prop(Object *obj,
{
BitProperty *fp = opaque;
bool value = (*fp->ptr & fp->mask) == fp->mask;
visit_type_bool(v, &value, name, errp);
visit_type_bool(v, name, &value, errp);
}
static void x86_cpu_set_bit_prop(Object *obj,
@ -2971,7 +2971,7 @@ static void x86_cpu_set_bit_prop(Object *obj,
return;
}
visit_type_bool(v, &value, name, &local_err);
visit_type_bool(v, name, &value, &local_err);
if (local_err) {
error_propagate(errp, local_err);
return;

View File

@ -8060,7 +8060,7 @@ static void powerpc_get_compat(Object *obj, Visitor *v,
break;
}
visit_type_str(v, &value, name, errp);
visit_type_str(v, name, &value, errp);
}
static void powerpc_set_compat(Object *obj, Visitor *v,
@ -8071,7 +8071,7 @@ static void powerpc_set_compat(Object *obj, Visitor *v,
Property *prop = opaque;
uint32_t *max_compat = qdev_get_prop_ptr(DEVICE(obj), prop);
visit_type_str(v, &value, name, &error);
visit_type_str(v, name, &value, &error);
if (error) {
error_propagate(errp, error);
return;

View File

@ -44,7 +44,7 @@ setup_fixture(OptsVisitorFixture *f, gconstpointer test_data)
g_assert(opts != NULL);
ov = opts_visitor_new(opts);
visit_type_UserDefOptions(opts_get_visitor(ov), &f->userdef, NULL,
visit_type_UserDefOptions(opts_get_visitor(ov), NULL, &f->userdef,
&f->err);
opts_visitor_cleanup(ov);
qemu_opts_del(opts);
@ -58,8 +58,8 @@ teardown_fixture(OptsVisitorFixture *f, gconstpointer test_data)
QapiDeallocVisitor *dv;
dv = qapi_dealloc_visitor_new();
visit_type_UserDefOptions(qapi_dealloc_get_visitor(dv), &f->userdef,
NULL, NULL);
visit_type_UserDefOptions(qapi_dealloc_get_visitor(dv), NULL,
&f->userdef, NULL);
qapi_dealloc_visitor_cleanup(dv);
}
error_free(f->err);

View File

@ -124,7 +124,7 @@ static void prop1_accessor(Object *obj,
{
MyType *mt = DYNAMIC_TYPE(obj);
visit_type_uint32(v, &mt->prop1, name, errp);
visit_type_uint32(v, name, &mt->prop1, errp);
}
static void prop2_accessor(Object *obj,
@ -135,7 +135,7 @@ static void prop2_accessor(Object *obj,
{
MyType *mt = DYNAMIC_TYPE(obj);
visit_type_uint32(v, &mt->prop2, name, errp);
visit_type_uint32(v, name, &mt->prop2, errp);
}
static void dynamic_instance_init(Object *obj)

View File

@ -217,7 +217,7 @@ static void test_dealloc_partial(void)
qdict_put_obj(ud2_dict, "string0", QOBJECT(qstring_from_str(text)));
qiv = qmp_input_visitor_new(QOBJECT(ud2_dict));
visit_type_UserDefTwo(qmp_input_get_visitor(qiv), &ud2, NULL, &err);
visit_type_UserDefTwo(qmp_input_get_visitor(qiv), NULL, &ud2, &err);
qmp_input_visitor_cleanup(qiv);
QDECREF(ud2_dict);
}

View File

@ -98,7 +98,7 @@ static void test_validate_struct(TestInputVisitorData *data,
v = validate_test_init(data, "{ 'integer': -42, 'boolean': true, 'string': 'foo' }");
visit_type_TestStruct(v, &p, NULL, &error_abort);
visit_type_TestStruct(v, NULL, &p, &error_abort);
g_free(p->string);
g_free(p);
}
@ -114,7 +114,7 @@ static void test_validate_struct_nested(TestInputVisitorData *data,
"'dict2': { 'userdef': { 'integer': 42, "
"'string': 'string' }, 'string': 'string2'}}}");
visit_type_UserDefTwo(v, &udp, NULL, &error_abort);
visit_type_UserDefTwo(v, NULL, &udp, &error_abort);
qapi_free_UserDefTwo(udp);
}
@ -126,7 +126,7 @@ static void test_validate_list(TestInputVisitorData *data,
v = validate_test_init(data, "[ { 'string': 'string0', 'integer': 42 }, { 'string': 'string1', 'integer': 43 }, { 'string': 'string2', 'integer': 44 } ]");
visit_type_UserDefOneList(v, &head, NULL, &error_abort);
visit_type_UserDefOneList(v, NULL, &head, &error_abort);
qapi_free_UserDefOneList(head);
}
@ -138,7 +138,7 @@ static void test_validate_union_native_list(TestInputVisitorData *data,
v = validate_test_init(data, "{ 'type': 'integer', 'data' : [ 1, 2 ] }");
visit_type_UserDefNativeListUnion(v, &tmp, NULL, &error_abort);
visit_type_UserDefNativeListUnion(v, NULL, &tmp, &error_abort);
qapi_free_UserDefNativeListUnion(tmp);
}
@ -154,7 +154,7 @@ static void test_validate_union_flat(TestInputVisitorData *data,
"'string': 'str', "
"'boolean': true }");
visit_type_UserDefFlatUnion(v, &tmp, NULL, &error_abort);
visit_type_UserDefFlatUnion(v, NULL, &tmp, &error_abort);
qapi_free_UserDefFlatUnion(tmp);
}
@ -166,7 +166,7 @@ static void test_validate_alternate(TestInputVisitorData *data,
v = validate_test_init(data, "42");
visit_type_UserDefAlternate(v, &tmp, NULL, &error_abort);
visit_type_UserDefAlternate(v, NULL, &tmp, &error_abort);
qapi_free_UserDefAlternate(tmp);
}
@ -179,7 +179,7 @@ static void test_validate_fail_struct(TestInputVisitorData *data,
v = validate_test_init(data, "{ 'integer': -42, 'boolean': true, 'string': 'foo', 'extra': 42 }");
visit_type_TestStruct(v, &p, NULL, &err);
visit_type_TestStruct(v, NULL, &p, &err);
error_free_or_abort(&err);
if (p) {
g_free(p->string);
@ -196,7 +196,7 @@ static void test_validate_fail_struct_nested(TestInputVisitorData *data,
v = validate_test_init(data, "{ 'string0': 'string0', 'dict1': { 'string1': 'string1', 'dict2': { 'userdef1': { 'integer': 42, 'string': 'string', 'extra': [42, 23, {'foo':'bar'}] }, 'string2': 'string2'}}}");
visit_type_UserDefTwo(v, &udp, NULL, &err);
visit_type_UserDefTwo(v, NULL, &udp, &err);
error_free_or_abort(&err);
qapi_free_UserDefTwo(udp);
}
@ -210,7 +210,7 @@ static void test_validate_fail_list(TestInputVisitorData *data,
v = validate_test_init(data, "[ { 'string': 'string0', 'integer': 42 }, { 'string': 'string1', 'integer': 43 }, { 'string': 'string2', 'integer': 44, 'extra': 'ggg' } ]");
visit_type_UserDefOneList(v, &head, NULL, &err);
visit_type_UserDefOneList(v, NULL, &head, &err);
error_free_or_abort(&err);
qapi_free_UserDefOneList(head);
}
@ -225,7 +225,7 @@ static void test_validate_fail_union_native_list(TestInputVisitorData *data,
v = validate_test_init(data,
"{ 'type': 'integer', 'data' : [ 'string' ] }");
visit_type_UserDefNativeListUnion(v, &tmp, NULL, &err);
visit_type_UserDefNativeListUnion(v, NULL, &tmp, &err);
error_free_or_abort(&err);
qapi_free_UserDefNativeListUnion(tmp);
}
@ -239,7 +239,7 @@ static void test_validate_fail_union_flat(TestInputVisitorData *data,
v = validate_test_init(data, "{ 'string': 'c', 'integer': 41, 'boolean': true }");
visit_type_UserDefFlatUnion(v, &tmp, NULL, &err);
visit_type_UserDefFlatUnion(v, NULL, &tmp, &err);
error_free_or_abort(&err);
qapi_free_UserDefFlatUnion(tmp);
}
@ -254,7 +254,7 @@ static void test_validate_fail_union_flat_no_discrim(TestInputVisitorData *data,
/* test situation where discriminator field ('enum1' here) is missing */
v = validate_test_init(data, "{ 'integer': 42, 'string': 'c', 'string1': 'd', 'string2': 'e' }");
visit_type_UserDefFlatUnion2(v, &tmp, NULL, &err);
visit_type_UserDefFlatUnion2(v, NULL, &tmp, &err);
error_free_or_abort(&err);
qapi_free_UserDefFlatUnion2(tmp);
}
@ -268,7 +268,7 @@ static void test_validate_fail_alternate(TestInputVisitorData *data,
v = validate_test_init(data, "3.14");
visit_type_UserDefAlternate(v, &tmp, NULL, &err);
visit_type_UserDefAlternate(v, NULL, &tmp, &err);
error_free_or_abort(&err);
qapi_free_UserDefAlternate(tmp);
}
@ -281,7 +281,7 @@ static void do_test_validate_qmp_introspect(TestInputVisitorData *data,
v = validate_test_init_raw(data, schema_json);
visit_type_SchemaInfoList(v, &schema, NULL, &error_abort);
visit_type_SchemaInfoList(v, NULL, &schema, &error_abort);
g_assert(schema);
qapi_free_SchemaInfoList(schema);

View File

@ -93,7 +93,7 @@ static void test_visitor_in_int(TestInputVisitorData *data,
v = visitor_input_test_init(data, "%" PRId64, value);
visit_type_int(v, &res, NULL, &error_abort);
visit_type_int(v, NULL, &res, &error_abort);
g_assert_cmpint(res, ==, value);
}
@ -110,7 +110,7 @@ static void test_visitor_in_int_overflow(TestInputVisitorData *data,
*/
v = visitor_input_test_init(data, "%f", DBL_MAX);
visit_type_int(v, &res, NULL, &err);
visit_type_int(v, NULL, &res, &err);
error_free_or_abort(&err);
}
@ -122,7 +122,7 @@ static void test_visitor_in_bool(TestInputVisitorData *data,
v = visitor_input_test_init(data, "true");
visit_type_bool(v, &res, NULL, &error_abort);
visit_type_bool(v, NULL, &res, &error_abort);
g_assert_cmpint(res, ==, true);
}
@ -134,7 +134,7 @@ static void test_visitor_in_number(TestInputVisitorData *data,
v = visitor_input_test_init(data, "%f", value);
visit_type_number(v, &res, NULL, &error_abort);
visit_type_number(v, NULL, &res, &error_abort);
g_assert_cmpfloat(res, ==, value);
}
@ -146,7 +146,7 @@ static void test_visitor_in_string(TestInputVisitorData *data,
v = visitor_input_test_init(data, "%s", value);
visit_type_str(v, &res, NULL, &error_abort);
visit_type_str(v, NULL, &res, &error_abort);
g_assert_cmpstr(res, ==, value);
g_free(res);
@ -163,7 +163,7 @@ static void test_visitor_in_enum(TestInputVisitorData *data,
v = visitor_input_test_init(data, "%s", EnumOne_lookup[i]);
visit_type_EnumOne(v, &res, NULL, &error_abort);
visit_type_EnumOne(v, NULL, &res, &error_abort);
g_assert_cmpint(i, ==, res);
}
}
@ -177,7 +177,7 @@ static void test_visitor_in_struct(TestInputVisitorData *data,
v = visitor_input_test_init(data, "{ 'integer': -42, 'boolean': true, 'string': 'foo' }");
visit_type_TestStruct(v, &p, NULL, &error_abort);
visit_type_TestStruct(v, NULL, &p, &error_abort);
g_assert_cmpint(p->integer, ==, -42);
g_assert(p->boolean == true);
g_assert_cmpstr(p->string, ==, "foo");
@ -197,7 +197,7 @@ static void test_visitor_in_struct_nested(TestInputVisitorData *data,
"'dict2': { 'userdef': { 'integer': 42, "
"'string': 'string' }, 'string': 'string2'}}}");
visit_type_UserDefTwo(v, &udp, NULL, &error_abort);
visit_type_UserDefTwo(v, NULL, &udp, &error_abort);
g_assert_cmpstr(udp->string0, ==, "string0");
g_assert_cmpstr(udp->dict1->string1, ==, "string1");
@ -218,7 +218,7 @@ static void test_visitor_in_list(TestInputVisitorData *data,
v = visitor_input_test_init(data, "[ { 'string': 'string0', 'integer': 42 }, { 'string': 'string1', 'integer': 43 }, { 'string': 'string2', 'integer': 44 } ]");
visit_type_UserDefOneList(v, &head, NULL, &error_abort);
visit_type_UserDefOneList(v, NULL, &head, &error_abort);
g_assert(head != NULL);
for (i = 0, item = head; item; item = item->next, i++) {
@ -234,7 +234,7 @@ static void test_visitor_in_list(TestInputVisitorData *data,
/* An empty list is valid */
v = visitor_input_test_init(data, "[]");
visit_type_UserDefOneList(v, &head, NULL, &error_abort);
visit_type_UserDefOneList(v, NULL, &head, &error_abort);
g_assert(!head);
}
@ -250,14 +250,14 @@ static void test_visitor_in_any(TestInputVisitorData *data,
QObject *qobj;
v = visitor_input_test_init(data, "-42");
visit_type_any(v, &res, NULL, &error_abort);
visit_type_any(v, NULL, &res, &error_abort);
qint = qobject_to_qint(res);
g_assert(qint);
g_assert_cmpint(qint_get_int(qint), ==, -42);
qobject_decref(res);
v = visitor_input_test_init(data, "{ 'integer': -42, 'boolean': true, 'string': 'foo' }");
visit_type_any(v, &res, NULL, &error_abort);
visit_type_any(v, NULL, &res, &error_abort);
qdict = qobject_to_qdict(res);
g_assert(qdict && qdict_size(qdict) == 3);
qobj = qdict_get(qdict, "integer");
@ -291,7 +291,7 @@ static void test_visitor_in_union_flat(TestInputVisitorData *data,
"'string': 'str', "
"'boolean': true }");
visit_type_UserDefFlatUnion(v, &tmp, NULL, &error_abort);
visit_type_UserDefFlatUnion(v, NULL, &tmp, &error_abort);
g_assert_cmpint(tmp->enum1, ==, ENUM_ONE_VALUE1);
g_assert_cmpstr(tmp->string, ==, "str");
g_assert_cmpint(tmp->integer, ==, 41);
@ -311,19 +311,19 @@ static void test_visitor_in_alternate(TestInputVisitorData *data,
UserDefAlternate *tmp;
v = visitor_input_test_init(data, "42");
visit_type_UserDefAlternate(v, &tmp, NULL, &error_abort);
visit_type_UserDefAlternate(v, NULL, &tmp, &error_abort);
g_assert_cmpint(tmp->type, ==, QTYPE_QINT);
g_assert_cmpint(tmp->u.i, ==, 42);
qapi_free_UserDefAlternate(tmp);
v = visitor_input_test_init(data, "'string'");
visit_type_UserDefAlternate(v, &tmp, NULL, &error_abort);
visit_type_UserDefAlternate(v, NULL, &tmp, &error_abort);
g_assert_cmpint(tmp->type, ==, QTYPE_QSTRING);
g_assert_cmpstr(tmp->u.s, ==, "string");
qapi_free_UserDefAlternate(tmp);
v = visitor_input_test_init(data, "false");
visit_type_UserDefAlternate(v, &tmp, NULL, &err);
visit_type_UserDefAlternate(v, NULL, &tmp, &err);
error_free_or_abort(&err);
qapi_free_UserDefAlternate(tmp);
}
@ -343,36 +343,36 @@ static void test_visitor_in_alternate_number(TestInputVisitorData *data,
/* Parsing an int */
v = visitor_input_test_init(data, "42");
visit_type_AltStrBool(v, &asb, NULL, &err);
visit_type_AltStrBool(v, NULL, &asb, &err);
error_free_or_abort(&err);
qapi_free_AltStrBool(asb);
v = visitor_input_test_init(data, "42");
visit_type_AltStrNum(v, &asn, NULL, &error_abort);
visit_type_AltStrNum(v, NULL, &asn, &error_abort);
g_assert_cmpint(asn->type, ==, QTYPE_QFLOAT);
g_assert_cmpfloat(asn->u.n, ==, 42);
qapi_free_AltStrNum(asn);
v = visitor_input_test_init(data, "42");
visit_type_AltNumStr(v, &ans, NULL, &error_abort);
visit_type_AltNumStr(v, NULL, &ans, &error_abort);
g_assert_cmpint(ans->type, ==, QTYPE_QFLOAT);
g_assert_cmpfloat(ans->u.n, ==, 42);
qapi_free_AltNumStr(ans);
v = visitor_input_test_init(data, "42");
visit_type_AltStrInt(v, &asi, NULL, &error_abort);
visit_type_AltStrInt(v, NULL, &asi, &error_abort);
g_assert_cmpint(asi->type, ==, QTYPE_QINT);
g_assert_cmpint(asi->u.i, ==, 42);
qapi_free_AltStrInt(asi);
v = visitor_input_test_init(data, "42");
visit_type_AltIntNum(v, &ain, NULL, &error_abort);
visit_type_AltIntNum(v, NULL, &ain, &error_abort);
g_assert_cmpint(ain->type, ==, QTYPE_QINT);
g_assert_cmpint(ain->u.i, ==, 42);
qapi_free_AltIntNum(ain);
v = visitor_input_test_init(data, "42");
visit_type_AltNumInt(v, &ani, NULL, &error_abort);
visit_type_AltNumInt(v, NULL, &ani, &error_abort);
g_assert_cmpint(ani->type, ==, QTYPE_QINT);
g_assert_cmpint(ani->u.i, ==, 42);
qapi_free_AltNumInt(ani);
@ -380,35 +380,35 @@ static void test_visitor_in_alternate_number(TestInputVisitorData *data,
/* Parsing a double */
v = visitor_input_test_init(data, "42.5");
visit_type_AltStrBool(v, &asb, NULL, &err);
visit_type_AltStrBool(v, NULL, &asb, &err);
error_free_or_abort(&err);
qapi_free_AltStrBool(asb);
v = visitor_input_test_init(data, "42.5");
visit_type_AltStrNum(v, &asn, NULL, &error_abort);
visit_type_AltStrNum(v, NULL, &asn, &error_abort);
g_assert_cmpint(asn->type, ==, QTYPE_QFLOAT);
g_assert_cmpfloat(asn->u.n, ==, 42.5);
qapi_free_AltStrNum(asn);
v = visitor_input_test_init(data, "42.5");
visit_type_AltNumStr(v, &ans, NULL, &error_abort);
visit_type_AltNumStr(v, NULL, &ans, &error_abort);
g_assert_cmpint(ans->type, ==, QTYPE_QFLOAT);
g_assert_cmpfloat(ans->u.n, ==, 42.5);
qapi_free_AltNumStr(ans);
v = visitor_input_test_init(data, "42.5");
visit_type_AltStrInt(v, &asi, NULL, &err);
visit_type_AltStrInt(v, NULL, &asi, &err);
error_free_or_abort(&err);
qapi_free_AltStrInt(asi);
v = visitor_input_test_init(data, "42.5");
visit_type_AltIntNum(v, &ain, NULL, &error_abort);
visit_type_AltIntNum(v, NULL, &ain, &error_abort);
g_assert_cmpint(ain->type, ==, QTYPE_QFLOAT);
g_assert_cmpfloat(ain->u.n, ==, 42.5);
qapi_free_AltIntNum(ain);
v = visitor_input_test_init(data, "42.5");
visit_type_AltNumInt(v, &ani, NULL, &error_abort);
visit_type_AltNumInt(v, NULL, &ani, &error_abort);
g_assert_cmpint(ani->type, ==, QTYPE_QFLOAT);
g_assert_cmpfloat(ani->u.n, ==, 42.5);
qapi_free_AltNumInt(ani);
@ -435,7 +435,7 @@ static void test_native_list_integer_helper(TestInputVisitorData *data,
gstr_list->str);
v = visitor_input_test_init_raw(data, gstr_union->str);
visit_type_UserDefNativeListUnion(v, &cvalue, NULL, &error_abort);
visit_type_UserDefNativeListUnion(v, NULL, &cvalue, &error_abort);
g_assert(cvalue != NULL);
g_assert_cmpint(cvalue->type, ==, kind);
@ -596,7 +596,7 @@ static void test_visitor_in_native_list_bool(TestInputVisitorData *data,
gstr_list->str);
v = visitor_input_test_init_raw(data, gstr_union->str);
visit_type_UserDefNativeListUnion(v, &cvalue, NULL, &error_abort);
visit_type_UserDefNativeListUnion(v, NULL, &cvalue, &error_abort);
g_assert(cvalue != NULL);
g_assert_cmpint(cvalue->type, ==, USER_DEF_NATIVE_LIST_UNION_KIND_BOOLEAN);
@ -629,7 +629,7 @@ static void test_visitor_in_native_list_string(TestInputVisitorData *data,
gstr_list->str);
v = visitor_input_test_init_raw(data, gstr_union->str);
visit_type_UserDefNativeListUnion(v, &cvalue, NULL, &error_abort);
visit_type_UserDefNativeListUnion(v, NULL, &cvalue, &error_abort);
g_assert(cvalue != NULL);
g_assert_cmpint(cvalue->type, ==, USER_DEF_NATIVE_LIST_UNION_KIND_STRING);
@ -666,7 +666,7 @@ static void test_visitor_in_native_list_number(TestInputVisitorData *data,
gstr_list->str);
v = visitor_input_test_init_raw(data, gstr_union->str);
visit_type_UserDefNativeListUnion(v, &cvalue, NULL, &error_abort);
visit_type_UserDefNativeListUnion(v, NULL, &cvalue, &error_abort);
g_assert(cvalue != NULL);
g_assert_cmpint(cvalue->type, ==, USER_DEF_NATIVE_LIST_UNION_KIND_NUMBER);
@ -706,7 +706,7 @@ static void test_visitor_in_errors(TestInputVisitorData *data,
v = visitor_input_test_init(data, "{ 'integer': false, 'boolean': 'foo', "
"'string': -42 }");
visit_type_TestStruct(v, &p, NULL, &err);
visit_type_TestStruct(v, NULL, &p, &err);
error_free_or_abort(&err);
/* FIXME - a failed parse should not leave a partially-allocated p
* for us to clean up; this could cause callers to leak memory. */
@ -716,7 +716,7 @@ static void test_visitor_in_errors(TestInputVisitorData *data,
g_free(p);
v = visitor_input_test_init(data, "[ '1', '2', false, '3' ]");
visit_type_strList(v, &q, NULL, &err);
visit_type_strList(v, NULL, &q, &err);
error_free_or_abort(&err);
assert(q);
qapi_free_strList(q);
@ -734,35 +734,35 @@ static void test_visitor_in_wrong_type(TestInputVisitorData *data,
/* Make sure arrays and structs cannot be confused */
v = visitor_input_test_init(data, "[]");
visit_type_TestStruct(v, &p, NULL, &err);
visit_type_TestStruct(v, NULL, &p, &err);
error_free_or_abort(&err);
g_assert(!p);
v = visitor_input_test_init(data, "{}");
visit_type_strList(v, &q, NULL, &err);
visit_type_strList(v, NULL, &q, &err);
error_free_or_abort(&err);
assert(!q);
/* Make sure primitives and struct cannot be confused */
v = visitor_input_test_init(data, "1");
visit_type_TestStruct(v, &p, NULL, &err);
visit_type_TestStruct(v, NULL, &p, &err);
error_free_or_abort(&err);
g_assert(!p);
v = visitor_input_test_init(data, "{}");
visit_type_int(v, &i, NULL, &err);
visit_type_int(v, NULL, &i, &err);
error_free_or_abort(&err);
/* Make sure primitives and arrays cannot be confused */
v = visitor_input_test_init(data, "1");
visit_type_strList(v, &q, NULL, &err);
visit_type_strList(v, NULL, &q, &err);
error_free_or_abort(&err);
assert(!q);
v = visitor_input_test_init(data, "[]");
visit_type_int(v, &i, NULL, &err);
visit_type_int(v, NULL, &i, &err);
error_free_or_abort(&err);
}

View File

@ -47,7 +47,7 @@ static void test_visitor_out_int(TestOutputVisitorData *data,
int64_t value = -42;
QObject *obj;
visit_type_int(data->ov, &value, NULL, &error_abort);
visit_type_int(data->ov, NULL, &value, &error_abort);
obj = qmp_output_get_qobject(data->qov);
g_assert(obj != NULL);
@ -63,7 +63,7 @@ static void test_visitor_out_bool(TestOutputVisitorData *data,
bool value = true;
QObject *obj;
visit_type_bool(data->ov, &value, NULL, &error_abort);
visit_type_bool(data->ov, NULL, &value, &error_abort);
obj = qmp_output_get_qobject(data->qov);
g_assert(obj != NULL);
@ -79,7 +79,7 @@ static void test_visitor_out_number(TestOutputVisitorData *data,
double value = 3.14;
QObject *obj;
visit_type_number(data->ov, &value, NULL, &error_abort);
visit_type_number(data->ov, NULL, &value, &error_abort);
obj = qmp_output_get_qobject(data->qov);
g_assert(obj != NULL);
@ -95,7 +95,7 @@ static void test_visitor_out_string(TestOutputVisitorData *data,
char *string = (char *) "Q E M U";
QObject *obj;
visit_type_str(data->ov, &string, NULL, &error_abort);
visit_type_str(data->ov, NULL, &string, &error_abort);
obj = qmp_output_get_qobject(data->qov);
g_assert(obj != NULL);
@ -112,7 +112,7 @@ static void test_visitor_out_no_string(TestOutputVisitorData *data,
QObject *obj;
/* A null string should return "" */
visit_type_str(data->ov, &string, NULL, &error_abort);
visit_type_str(data->ov, NULL, &string, &error_abort);
obj = qmp_output_get_qobject(data->qov);
g_assert(obj != NULL);
@ -129,7 +129,7 @@ static void test_visitor_out_enum(TestOutputVisitorData *data,
EnumOne i;
for (i = 0; i < ENUM_ONE__MAX; i++) {
visit_type_EnumOne(data->ov, &i, "unused", &error_abort);
visit_type_EnumOne(data->ov, "unused", &i, &error_abort);
obj = qmp_output_get_qobject(data->qov);
g_assert(obj != NULL);
@ -148,7 +148,7 @@ static void test_visitor_out_enum_errors(TestOutputVisitorData *data,
for (i = 0; i < ARRAY_SIZE(bad_values) ; i++) {
err = NULL;
visit_type_EnumOne(data->ov, &bad_values[i], "unused", &err);
visit_type_EnumOne(data->ov, "unused", &bad_values[i], &err);
g_assert(err);
error_free(err);
}
@ -165,7 +165,7 @@ static void test_visitor_out_struct(TestOutputVisitorData *data,
QObject *obj;
QDict *qdict;
visit_type_TestStruct(data->ov, &p, NULL, &error_abort);
visit_type_TestStruct(data->ov, NULL, &p, &error_abort);
obj = qmp_output_get_qobject(data->qov);
g_assert(obj != NULL);
@ -210,7 +210,7 @@ static void test_visitor_out_struct_nested(TestOutputVisitorData *data,
ud2->dict1->dict3->userdef->integer = value;
ud2->dict1->dict3->string = g_strdup(strings[3]);
visit_type_UserDefTwo(data->ov, &ud2, "unused", &error_abort);
visit_type_UserDefTwo(data->ov, "unused", &ud2, &error_abort);
obj = qmp_output_get_qobject(data->qov);
g_assert(obj != NULL);
@ -257,7 +257,7 @@ static void test_visitor_out_struct_errors(TestOutputVisitorData *data,
err = NULL;
u.has_enum1 = true;
u.enum1 = bad_values[i];
visit_type_UserDefOne(data->ov, &pu, "unused", &err);
visit_type_UserDefOne(data->ov, "unused", &pu, &err);
g_assert(err);
error_free(err);
}
@ -289,7 +289,7 @@ static void test_visitor_out_list(TestOutputVisitorData *data,
head = p;
}
visit_type_TestStructList(data->ov, &head, NULL, &error_abort);
visit_type_TestStructList(data->ov, NULL, &head, &error_abort);
obj = qmp_output_get_qobject(data->qov);
g_assert(obj != NULL);
@ -356,7 +356,7 @@ static void test_visitor_out_any(TestOutputVisitorData *data,
QObject *obj;
qobj = QOBJECT(qint_from_int(-42));
visit_type_any(data->ov, &qobj, NULL, &error_abort);
visit_type_any(data->ov, NULL, &qobj, &error_abort);
obj = qmp_output_get_qobject(data->qov);
g_assert(obj != NULL);
g_assert(qobject_type(obj) == QTYPE_QINT);
@ -369,7 +369,7 @@ static void test_visitor_out_any(TestOutputVisitorData *data,
qdict_put(qdict, "boolean", qbool_from_bool(true));
qdict_put(qdict, "string", qstring_from_str("foo"));
qobj = QOBJECT(qdict);
visit_type_any(data->ov, &qobj, NULL, &error_abort);
visit_type_any(data->ov, NULL, &qobj, &error_abort);
qobject_decref(qobj);
obj = qmp_output_get_qobject(data->qov);
g_assert(obj != NULL);
@ -406,7 +406,7 @@ static void test_visitor_out_union_flat(TestOutputVisitorData *data,
tmp->integer = 41;
tmp->u.value1->boolean = true;
visit_type_UserDefFlatUnion(data->ov, &tmp, NULL, &error_abort);
visit_type_UserDefFlatUnion(data->ov, NULL, &tmp, &error_abort);
arg = qmp_output_get_qobject(data->qov);
g_assert(qobject_type(arg) == QTYPE_QDICT);
@ -431,7 +431,7 @@ static void test_visitor_out_alternate(TestOutputVisitorData *data,
tmp->type = QTYPE_QINT;
tmp->u.i = 42;
visit_type_UserDefAlternate(data->ov, &tmp, NULL, &error_abort);
visit_type_UserDefAlternate(data->ov, NULL, &tmp, &error_abort);
arg = qmp_output_get_qobject(data->qov);
g_assert(qobject_type(arg) == QTYPE_QINT);
@ -444,7 +444,7 @@ static void test_visitor_out_alternate(TestOutputVisitorData *data,
tmp->type = QTYPE_QSTRING;
tmp->u.s = g_strdup("hello");
visit_type_UserDefAlternate(data->ov, &tmp, NULL, &error_abort);
visit_type_UserDefAlternate(data->ov, NULL, &tmp, &error_abort);
arg = qmp_output_get_qobject(data->qov);
g_assert(qobject_type(arg) == QTYPE_QSTRING);
@ -690,7 +690,7 @@ static void test_native_list(TestOutputVisitorData *data,
cvalue->type = kind;
init_native_list(cvalue);
visit_type_UserDefNativeListUnion(data->ov, &cvalue, NULL, &error_abort);
visit_type_UserDefNativeListUnion(data->ov, NULL, &cvalue, &error_abort);
obj = qmp_output_get_qobject(data->qov);
check_native_list(obj, cvalue->type);

View File

@ -59,7 +59,7 @@ static void test_visitor_in_int(TestInputVisitorData *data,
v = visitor_input_test_init(data, "-42");
visit_type_int(v, &res, NULL, &err);
visit_type_int(v, NULL, &res, &err);
g_assert(!err);
g_assert_cmpint(res, ==, value);
}
@ -74,7 +74,7 @@ static void test_visitor_in_intList(TestInputVisitorData *data,
v = visitor_input_test_init(data, "1,2,0,2-4,20,5-9,1-8");
visit_type_int16List(v, &res, NULL, &error_abort);
visit_type_int16List(v, NULL, &res, &error_abort);
tmp = res;
while (i < sizeof(value) / sizeof(value[0])) {
g_assert(tmp);
@ -100,42 +100,42 @@ static void test_visitor_in_bool(TestInputVisitorData *data,
v = visitor_input_test_init(data, "true");
visit_type_bool(v, &res, NULL, &err);
visit_type_bool(v, NULL, &res, &err);
g_assert(!err);
g_assert_cmpint(res, ==, true);
visitor_input_teardown(data, unused);
v = visitor_input_test_init(data, "yes");
visit_type_bool(v, &res, NULL, &err);
visit_type_bool(v, NULL, &res, &err);
g_assert(!err);
g_assert_cmpint(res, ==, true);
visitor_input_teardown(data, unused);
v = visitor_input_test_init(data, "on");
visit_type_bool(v, &res, NULL, &err);
visit_type_bool(v, NULL, &res, &err);
g_assert(!err);
g_assert_cmpint(res, ==, true);
visitor_input_teardown(data, unused);
v = visitor_input_test_init(data, "false");
visit_type_bool(v, &res, NULL, &err);
visit_type_bool(v, NULL, &res, &err);
g_assert(!err);
g_assert_cmpint(res, ==, false);
visitor_input_teardown(data, unused);
v = visitor_input_test_init(data, "no");
visit_type_bool(v, &res, NULL, &err);
visit_type_bool(v, NULL, &res, &err);
g_assert(!err);
g_assert_cmpint(res, ==, false);
visitor_input_teardown(data, unused);
v = visitor_input_test_init(data, "off");
visit_type_bool(v, &res, NULL, &err);
visit_type_bool(v, NULL, &res, &err);
g_assert(!err);
g_assert_cmpint(res, ==, false);
}
@ -149,7 +149,7 @@ static void test_visitor_in_number(TestInputVisitorData *data,
v = visitor_input_test_init(data, "3.14");
visit_type_number(v, &res, NULL, &err);
visit_type_number(v, NULL, &res, &err);
g_assert(!err);
g_assert_cmpfloat(res, ==, value);
}
@ -163,7 +163,7 @@ static void test_visitor_in_string(TestInputVisitorData *data,
v = visitor_input_test_init(data, value);
visit_type_str(v, &res, NULL, &err);
visit_type_str(v, NULL, &res, &err);
g_assert(!err);
g_assert_cmpstr(res, ==, value);
@ -182,7 +182,7 @@ static void test_visitor_in_enum(TestInputVisitorData *data,
v = visitor_input_test_init(data, EnumOne_lookup[i]);
visit_type_EnumOne(v, &res, NULL, &err);
visit_type_EnumOne(v, NULL, &res, &err);
g_assert(!err);
g_assert_cmpint(i, ==, res);
@ -220,29 +220,29 @@ static void test_visitor_in_fuzz(TestInputVisitorData *data,
}
v = visitor_input_test_init(data, buf);
visit_type_int(v, &ires, NULL, NULL);
visit_type_int(v, NULL, &ires, NULL);
visitor_input_teardown(data, NULL);
v = visitor_input_test_init(data, buf);
visit_type_intList(v, &ilres, NULL, NULL);
visit_type_intList(v, NULL, &ilres, NULL);
visitor_input_teardown(data, NULL);
v = visitor_input_test_init(data, buf);
visit_type_bool(v, &bres, NULL, NULL);
visit_type_bool(v, NULL, &bres, NULL);
visitor_input_teardown(data, NULL);
v = visitor_input_test_init(data, buf);
visit_type_number(v, &nres, NULL, NULL);
visit_type_number(v, NULL, &nres, NULL);
visitor_input_teardown(data, NULL);
v = visitor_input_test_init(data, buf);
sres = NULL;
visit_type_str(v, &sres, NULL, NULL);
visit_type_str(v, NULL, &sres, NULL);
g_free(sres);
visitor_input_teardown(data, NULL);
v = visitor_input_test_init(data, buf);
visit_type_EnumOne(v, &eres, NULL, NULL);
visit_type_EnumOne(v, NULL, &eres, NULL);
visitor_input_teardown(data, NULL);
}
}

View File

@ -61,7 +61,7 @@ static void test_visitor_out_int(TestOutputVisitorData *data,
Error *err = NULL;
char *str;
visit_type_int(data->ov, &value, NULL, &err);
visit_type_int(data->ov, NULL, &value, &err);
g_assert(!err);
str = string_output_get_string(data->sov);
@ -90,7 +90,7 @@ static void test_visitor_out_intList(TestOutputVisitorData *data,
tmp = &(*tmp)->next;
}
visit_type_intList(data->ov, &list, NULL, &err);
visit_type_intList(data->ov, NULL, &list, &err);
g_assert(err == NULL);
str = string_output_get_string(data->sov);
@ -120,7 +120,7 @@ static void test_visitor_out_bool(TestOutputVisitorData *data,
bool value = true;
char *str;
visit_type_bool(data->ov, &value, NULL, &err);
visit_type_bool(data->ov, NULL, &value, &err);
g_assert(!err);
str = string_output_get_string(data->sov);
@ -136,7 +136,7 @@ static void test_visitor_out_number(TestOutputVisitorData *data,
Error *err = NULL;
char *str;
visit_type_number(data->ov, &value, NULL, &err);
visit_type_number(data->ov, NULL, &value, &err);
g_assert(!err);
str = string_output_get_string(data->sov);
@ -153,7 +153,7 @@ static void test_visitor_out_string(TestOutputVisitorData *data,
Error *err = NULL;
char *str;
visit_type_str(data->ov, &string, NULL, &err);
visit_type_str(data->ov, NULL, &string, &err);
g_assert(!err);
str = string_output_get_string(data->sov);
@ -174,7 +174,7 @@ static void test_visitor_out_no_string(TestOutputVisitorData *data,
char *str;
/* A null string should return "" */
visit_type_str(data->ov, &string, NULL, &err);
visit_type_str(data->ov, NULL, &string, &err);
g_assert(!err);
str = string_output_get_string(data->sov);
@ -197,7 +197,7 @@ static void test_visitor_out_enum(TestOutputVisitorData *data,
for (i = 0; i < ENUM_ONE__MAX; i++) {
char *str_human;
visit_type_EnumOne(data->ov, &i, "unused", &err);
visit_type_EnumOne(data->ov, "unused", &i, &err);
g_assert(!err);
str_human = g_strdup_printf("\"%s\"", EnumOne_lookup[i]);
@ -222,7 +222,7 @@ static void test_visitor_out_enum_errors(TestOutputVisitorData *data,
for (i = 0; i < ARRAY_SIZE(bad_values) ; i++) {
err = NULL;
visit_type_EnumOne(data->ov, &bad_values[i], "unused", &err);
visit_type_EnumOne(data->ov, "unused", &bad_values[i], &err);
g_assert(err);
error_free(err);
}

View File

@ -101,40 +101,40 @@ static void visit_primitive_type(Visitor *v, void **native, Error **errp)
PrimitiveType *pt = *native;
switch(pt->type) {
case PTYPE_STRING:
visit_type_str(v, (char **)&pt->value.string, NULL, errp);
visit_type_str(v, NULL, (char **)&pt->value.string, errp);
break;
case PTYPE_BOOLEAN:
visit_type_bool(v, &pt->value.boolean, NULL, errp);
visit_type_bool(v, NULL, &pt->value.boolean, errp);
break;
case PTYPE_NUMBER:
visit_type_number(v, &pt->value.number, NULL, errp);
visit_type_number(v, NULL, &pt->value.number, errp);
break;
case PTYPE_INTEGER:
visit_type_int(v, &pt->value.integer, NULL, errp);
visit_type_int(v, NULL, &pt->value.integer, errp);
break;
case PTYPE_U8:
visit_type_uint8(v, &pt->value.u8, NULL, errp);
visit_type_uint8(v, NULL, &pt->value.u8, errp);
break;
case PTYPE_U16:
visit_type_uint16(v, &pt->value.u16, NULL, errp);
visit_type_uint16(v, NULL, &pt->value.u16, errp);
break;
case PTYPE_U32:
visit_type_uint32(v, &pt->value.u32, NULL, errp);
visit_type_uint32(v, NULL, &pt->value.u32, errp);
break;
case PTYPE_U64:
visit_type_uint64(v, &pt->value.u64, NULL, errp);
visit_type_uint64(v, NULL, &pt->value.u64, errp);
break;
case PTYPE_S8:
visit_type_int8(v, &pt->value.s8, NULL, errp);
visit_type_int8(v, NULL, &pt->value.s8, errp);
break;
case PTYPE_S16:
visit_type_int16(v, &pt->value.s16, NULL, errp);
visit_type_int16(v, NULL, &pt->value.s16, errp);
break;
case PTYPE_S32:
visit_type_int32(v, &pt->value.s32, NULL, errp);
visit_type_int32(v, NULL, &pt->value.s32, errp);
break;
case PTYPE_S64:
visit_type_int64(v, &pt->value.s64, NULL, errp);
visit_type_int64(v, NULL, &pt->value.s64, errp);
break;
case PTYPE_EOL:
g_assert_not_reached();
@ -146,40 +146,40 @@ static void visit_primitive_list(Visitor *v, void **native, Error **errp)
PrimitiveList *pl = *native;
switch (pl->type) {
case PTYPE_STRING:
visit_type_strList(v, &pl->value.strings, NULL, errp);
visit_type_strList(v, NULL, &pl->value.strings, errp);
break;
case PTYPE_BOOLEAN:
visit_type_boolList(v, &pl->value.booleans, NULL, errp);
visit_type_boolList(v, NULL, &pl->value.booleans, errp);
break;
case PTYPE_NUMBER:
visit_type_numberList(v, &pl->value.numbers, NULL, errp);
visit_type_numberList(v, NULL, &pl->value.numbers, errp);
break;
case PTYPE_INTEGER:
visit_type_intList(v, &pl->value.integers, NULL, errp);
visit_type_intList(v, NULL, &pl->value.integers, errp);
break;
case PTYPE_S8:
visit_type_int8List(v, &pl->value.s8_integers, NULL, errp);
visit_type_int8List(v, NULL, &pl->value.s8_integers, errp);
break;
case PTYPE_S16:
visit_type_int16List(v, &pl->value.s16_integers, NULL, errp);
visit_type_int16List(v, NULL, &pl->value.s16_integers, errp);
break;
case PTYPE_S32:
visit_type_int32List(v, &pl->value.s32_integers, NULL, errp);
visit_type_int32List(v, NULL, &pl->value.s32_integers, errp);
break;
case PTYPE_S64:
visit_type_int64List(v, &pl->value.s64_integers, NULL, errp);
visit_type_int64List(v, NULL, &pl->value.s64_integers, errp);
break;
case PTYPE_U8:
visit_type_uint8List(v, &pl->value.u8_integers, NULL, errp);
visit_type_uint8List(v, NULL, &pl->value.u8_integers, errp);
break;
case PTYPE_U16:
visit_type_uint16List(v, &pl->value.u16_integers, NULL, errp);
visit_type_uint16List(v, NULL, &pl->value.u16_integers, errp);
break;
case PTYPE_U32:
visit_type_uint32List(v, &pl->value.u32_integers, NULL, errp);
visit_type_uint32List(v, NULL, &pl->value.u32_integers, errp);
break;
case PTYPE_U64:
visit_type_uint64List(v, &pl->value.u64_integers, NULL, errp);
visit_type_uint64List(v, NULL, &pl->value.u64_integers, errp);
break;
default:
g_assert_not_reached();
@ -213,7 +213,7 @@ static void struct_cleanup(TestStruct *ts)
static void visit_struct(Visitor *v, void **native, Error **errp)
{
visit_type_TestStruct(v, (TestStruct **)native, NULL, errp);
visit_type_TestStruct(v, NULL, (TestStruct **)native, errp);
}
static UserDefTwo *nested_struct_create(void)
@ -264,12 +264,12 @@ static void nested_struct_cleanup(UserDefTwo *udnp)
static void visit_nested_struct(Visitor *v, void **native, Error **errp)
{
visit_type_UserDefTwo(v, (UserDefTwo **)native, NULL, errp);
visit_type_UserDefTwo(v, NULL, (UserDefTwo **)native, errp);
}
static void visit_nested_struct_list(Visitor *v, void **native, Error **errp)
{
visit_type_UserDefTwoList(v, (UserDefTwoList **)native, NULL, errp);
visit_type_UserDefTwoList(v, NULL, (UserDefTwoList **)native, errp);
}
/* test cases */

View File

@ -1117,7 +1117,7 @@ void qapi_copy_SocketAddress(SocketAddress **p_dest,
qov = qmp_output_visitor_new();
ov = qmp_output_get_visitor(qov);
visit_type_SocketAddress(ov, &src, NULL, &error_abort);
visit_type_SocketAddress(ov, NULL, &src, &error_abort);
obj = qmp_output_get_qobject(qov);
qmp_output_visitor_cleanup(qov);
if (!obj) {
@ -1126,7 +1126,7 @@ void qapi_copy_SocketAddress(SocketAddress **p_dest,
qiv = qmp_input_visitor_new(obj);
iv = qmp_input_get_visitor(qiv);
visit_type_SocketAddress(iv, p_dest, NULL, &error_abort);
visit_type_SocketAddress(iv, NULL, p_dest, &error_abort);
qmp_input_visitor_cleanup(qiv);
qobject_decref(obj);
}

4
vl.c
View File

@ -2837,7 +2837,7 @@ static int object_create(void *opaque, QemuOpts *opts, Error **errp)
}
qdict_del(pdict, "qom-type");
visit_type_str(v, &type, "qom-type", &err);
visit_type_str(v, "qom-type", &type, &err);
if (err) {
goto out;
}
@ -2847,7 +2847,7 @@ static int object_create(void *opaque, QemuOpts *opts, Error **errp)
}
qdict_del(pdict, "id");
visit_type_str(v, &id, "id", &err);
visit_type_str(v, "id", &id, &err);
if (err) {
goto out_end;
}