]> git.proxmox.com Git - mirror_qemu.git/commitdiff
qapi: rename QmpOutputVisitor to QObjectOutputVisitor
authorDaniel P. Berrange <berrange@redhat.com>
Fri, 30 Sep 2016 14:45:28 +0000 (15:45 +0100)
committerMarkus Armbruster <armbru@redhat.com>
Tue, 25 Oct 2016 14:25:54 +0000 (16:25 +0200)
The QmpOutputVisitor has no direct dependency on QMP. It is
valid to use it anywhere that one wants a QObject. Rename it
to better reflect its functionality as a generic QAPI
to QObject converter.

The commit before previous renamed the files, this one renames C
identifiers.

Reviewed-by: Kevin Wolf <kwolf@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
Message-Id: <1475246744-29302-6-git-send-email-berrange@redhat.com>
Reviewed-by: Markus Armbruster <armbru@redhat.com>
[Split into file rename and identifier rename]
Signed-off-by: Markus Armbruster <armbru@redhat.com>
12 files changed:
block/qapi.c
blockdev.c
docs/qapi-code-gen.txt
include/qapi/qobject-output-visitor.h
qapi/qobject-output-visitor.c
qemu-img.c
qom/qom-qobject.c
scripts/qapi-commands.py
scripts/qapi-event.py
tests/check-qnull.c
tests/test-qobject-output-visitor.c
tests/test-visitor-serialization.c

index 85f032f3fae735a7893282a45314857beaf8f835..a62e862f3cf6670b2ad502c59e2ffd010288f76f 100644 (file)
@@ -691,7 +691,7 @@ void bdrv_image_info_specific_dump(fprintf_function func_fprintf, void *f,
                                    ImageInfoSpecific *info_spec)
 {
     QObject *obj, *data;
-    Visitor *v = qmp_output_visitor_new(&obj);
+    Visitor *v = qobject_output_visitor_new(&obj);
 
     visit_type_ImageInfoSpecific(v, NULL, &info_spec, &error_abort);
     visit_complete(v, &obj);
index ef4157bfa63f0fc9a30ab3ce8bdbd0059acb14f2..d11a74f83754c49f21a099abf0c33ea4b5ac7d5f 100644 (file)
@@ -3776,7 +3776,7 @@ void qmp_blockdev_add(BlockdevOptions *options, Error **errp)
 {
     BlockDriverState *bs;
     QObject *obj;
-    Visitor *v = qmp_output_visitor_new(&obj);
+    Visitor *v = qobject_output_visitor_new(&obj);
     QDict *qdict;
     Error *local_err = NULL;
 
index d2604b6a4bcd638229d14a384138b984aa88c973..2841c5144a38ab5ccea8e25d656e1046b0c4ece7 100644 (file)
@@ -1005,7 +1005,7 @@ Example:
         Error *err = NULL;
         Visitor *v;
 
-        v = qmp_output_visitor_new(ret_out);
+        v = qobject_output_visitor_new(ret_out);
         visit_type_UserDefOne(v, "unused", &ret_in, &err);
         if (!err) {
             visit_complete(v, ret_out);
index f4552457215d428257b5198705c45341148315d1..8241877bd7ab55c895e919b33af6760901d7f06d 100644 (file)
@@ -17,7 +17,7 @@
 #include "qapi/visitor.h"
 #include "qapi/qmp/qobject.h"
 
-typedef struct QmpOutputVisitor QmpOutputVisitor;
+typedef struct QObjectOutputVisitor QObjectOutputVisitor;
 
 /*
  * Create a new QObject output visitor.
@@ -25,6 +25,6 @@ typedef struct QmpOutputVisitor QmpOutputVisitor;
  * If everything else succeeds, pass @result to visit_complete() to
  * collect the result of the visit.
  */
-Visitor *qmp_output_visitor_new(QObject **result);
+Visitor *qobject_output_visitor_new(QObject **result);
 
 #endif
index 92c5b5b7bb8e5baa0f87c82c98802c3ceed54eba..871127079d72a14f096586580a5888927f5314ee 100644 (file)
 #include "qemu-common.h"
 #include "qapi/qmp/types.h"
 
-typedef struct QStackEntry
-{
+typedef struct QStackEntry {
     QObject *value;
     void *qapi; /* sanity check that caller uses same pointer */
     QSLIST_ENTRY(QStackEntry) node;
 } QStackEntry;
 
-struct QmpOutputVisitor
-{
+struct QObjectOutputVisitor {
     Visitor visitor;
     QSLIST_HEAD(, QStackEntry) stack; /* Stack of unfinished containers */
     QObject *root; /* Root of the output visit */
     QObject **result; /* User's storage location for result */
 };
 
-#define qmp_output_add(qov, name, value) \
-    qmp_output_add_obj(qov, name, QOBJECT(value))
-#define qmp_output_push(qov, value, qapi) \
-    qmp_output_push_obj(qov, QOBJECT(value), qapi)
+#define qobject_output_add(qov, name, value) \
+    qobject_output_add_obj(qov, name, QOBJECT(value))
+#define qobject_output_push(qov, value, qapi) \
+    qobject_output_push_obj(qov, QOBJECT(value), qapi)
 
-static QmpOutputVisitor *to_qov(Visitor *v)
+static QObjectOutputVisitor *to_qov(Visitor *v)
 {
-    return container_of(v, QmpOutputVisitor, visitor);
+    return container_of(v, QObjectOutputVisitor, visitor);
 }
 
 /* Push @value onto the stack of current QObjects being built */
-static void qmp_output_push_obj(QmpOutputVisitor *qov, QObject *value,
-                                void *qapi)
+static void qobject_output_push_obj(QObjectOutputVisitor *qov, QObject *value,
+                                    void *qapi)
 {
     QStackEntry *e = g_malloc0(sizeof(*e));
 
@@ -58,7 +56,7 @@ static void qmp_output_push_obj(QmpOutputVisitor *qov, QObject *value,
 }
 
 /* Pop a value off the stack of QObjects being built, and return it. */
-static QObject *qmp_output_pop(QmpOutputVisitor *qov, void *qapi)
+static QObject *qobject_output_pop(QObjectOutputVisitor *qov, void *qapi)
 {
     QStackEntry *e = QSLIST_FIRST(&qov->stack);
     QObject *value;
@@ -75,8 +73,8 @@ static QObject *qmp_output_pop(QmpOutputVisitor *qov, void *qapi)
 /* Add @value to the current QObject being built.
  * If the stack is visiting a dictionary or list, @value is now owned
  * by that container. Otherwise, @value is now the root.  */
-static void qmp_output_add_obj(QmpOutputVisitor *qov, const char *name,
-                               QObject *value)
+static void qobject_output_add_obj(QObjectOutputVisitor *qov, const char *name,
+                                   QObject *value)
 {
     QStackEntry *e = QSLIST_FIRST(&qov->stack);
     QObject *cur = e ? e->value : NULL;
@@ -101,107 +99,107 @@ static void qmp_output_add_obj(QmpOutputVisitor *qov, const char *name,
     }
 }
 
-static void qmp_output_start_struct(Visitor *v, const char *name, void **obj,
-                                    size_t unused, Error **errp)
+static void qobject_output_start_struct(Visitor *v, const char *name,
+                                        void **obj, size_t unused, Error **errp)
 {
-    QmpOutputVisitor *qov = to_qov(v);
+    QObjectOutputVisitor *qov = to_qov(v);
     QDict *dict = qdict_new();
 
-    qmp_output_add(qov, name, dict);
-    qmp_output_push(qov, dict, obj);
+    qobject_output_add(qov, name, dict);
+    qobject_output_push(qov, dict, obj);
 }
 
-static void qmp_output_end_struct(Visitor *v, void **obj)
+static void qobject_output_end_struct(Visitor *v, void **obj)
 {
-    QmpOutputVisitor *qov = to_qov(v);
-    QObject *value = qmp_output_pop(qov, obj);
+    QObjectOutputVisitor *qov = to_qov(v);
+    QObject *value = qobject_output_pop(qov, obj);
     assert(qobject_type(value) == QTYPE_QDICT);
 }
 
-static void qmp_output_start_list(Visitor *v, const char *name,
-                                  GenericList **listp, size_t size,
-                                  Error **errp)
+static void qobject_output_start_list(Visitor *v, const char *name,
+                                      GenericList **listp, size_t size,
+                                      Error **errp)
 {
-    QmpOutputVisitor *qov = to_qov(v);
+    QObjectOutputVisitor *qov = to_qov(v);
     QList *list = qlist_new();
 
-    qmp_output_add(qov, name, list);
-    qmp_output_push(qov, list, listp);
+    qobject_output_add(qov, name, list);
+    qobject_output_push(qov, list, listp);
 }
 
-static GenericList *qmp_output_next_list(Visitor *v, GenericList *tail,
-                                         size_t size)
+static GenericList *qobject_output_next_list(Visitor *v, GenericList *tail,
+                                             size_t size)
 {
     return tail->next;
 }
 
-static void qmp_output_end_list(Visitor *v, void **obj)
+static void qobject_output_end_list(Visitor *v, void **obj)
 {
-    QmpOutputVisitor *qov = to_qov(v);
-    QObject *value = qmp_output_pop(qov, obj);
+    QObjectOutputVisitor *qov = to_qov(v);
+    QObject *value = qobject_output_pop(qov, obj);
     assert(qobject_type(value) == QTYPE_QLIST);
 }
 
-static void qmp_output_type_int64(Visitor *v, const char *name, int64_t *obj,
-                                  Error **errp)
+static void qobject_output_type_int64(Visitor *v, const char *name,
+                                      int64_t *obj, Error **errp)
 {
-    QmpOutputVisitor *qov = to_qov(v);
-    qmp_output_add(qov, name, qint_from_int(*obj));
+    QObjectOutputVisitor *qov = to_qov(v);
+    qobject_output_add(qov, name, qint_from_int(*obj));
 }
 
-static void qmp_output_type_uint64(Visitor *v, const char *name, uint64_t *obj,
-                                   Error **errp)
+static void qobject_output_type_uint64(Visitor *v, const char *name,
+                                       uint64_t *obj, Error **errp)
 {
     /* FIXME values larger than INT64_MAX become negative */
-    QmpOutputVisitor *qov = to_qov(v);
-    qmp_output_add(qov, name, qint_from_int(*obj));
+    QObjectOutputVisitor *qov = to_qov(v);
+    qobject_output_add(qov, name, qint_from_int(*obj));
 }
 
-static void qmp_output_type_bool(Visitor *v, const char *name, bool *obj,
-                                 Error **errp)
+static void qobject_output_type_bool(Visitor *v, const char *name, bool *obj,
+                                     Error **errp)
 {
-    QmpOutputVisitor *qov = to_qov(v);
-    qmp_output_add(qov, name, qbool_from_bool(*obj));
+    QObjectOutputVisitor *qov = to_qov(v);
+    qobject_output_add(qov, name, qbool_from_bool(*obj));
 }
 
-static void qmp_output_type_str(Visitor *v, const char *name, char **obj,
-                                Error **errp)
+static void qobject_output_type_str(Visitor *v, const char *name, char **obj,
+                                    Error **errp)
 {
-    QmpOutputVisitor *qov = to_qov(v);
+    QObjectOutputVisitor *qov = to_qov(v);
     if (*obj) {
-        qmp_output_add(qov, name, qstring_from_str(*obj));
+        qobject_output_add(qov, name, qstring_from_str(*obj));
     } else {
-        qmp_output_add(qov, name, qstring_from_str(""));
+        qobject_output_add(qov, name, qstring_from_str(""));
     }
 }
 
-static void qmp_output_type_number(Visitor *v, const char *name, double *obj,
-                                   Error **errp)
+static void qobject_output_type_number(Visitor *v, const char *name,
+                                       double *obj, Error **errp)
 {
-    QmpOutputVisitor *qov = to_qov(v);
-    qmp_output_add(qov, name, qfloat_from_double(*obj));
+    QObjectOutputVisitor *qov = to_qov(v);
+    qobject_output_add(qov, name, qfloat_from_double(*obj));
 }
 
-static void qmp_output_type_any(Visitor *v, const char *name, QObject **obj,
-                                Error **errp)
+static void qobject_output_type_any(Visitor *v, const char *name,
+                                    QObject **obj, Error **errp)
 {
-    QmpOutputVisitor *qov = to_qov(v);
+    QObjectOutputVisitor *qov = to_qov(v);
     qobject_incref(*obj);
-    qmp_output_add_obj(qov, name, *obj);
+    qobject_output_add_obj(qov, name, *obj);
 }
 
-static void qmp_output_type_null(Visitor *v, const char *name, Error **errp)
+static void qobject_output_type_null(Visitor *v, const char *name, Error **errp)
 {
-    QmpOutputVisitor *qov = to_qov(v);
-    qmp_output_add_obj(qov, name, qnull());
+    QObjectOutputVisitor *qov = to_qov(v);
+    qobject_output_add_obj(qov, name, qnull());
 }
 
 /* Finish building, and return the root object.
  * The root object is never null. The caller becomes the object's
  * owner, and should use qobject_decref() when done with it.  */
-static void qmp_output_complete(Visitor *v, void *opaque)
+static void qobject_output_complete(Visitor *v, void *opaque)
 {
-    QmpOutputVisitor *qov = to_qov(v);
+    QObjectOutputVisitor *qov = to_qov(v);
 
     /* A visit must have occurred, with each start paired with end.  */
     assert(qov->root && QSLIST_EMPTY(&qov->stack));
@@ -212,9 +210,9 @@ static void qmp_output_complete(Visitor *v, void *opaque)
     qov->result = NULL;
 }
 
-static void qmp_output_free(Visitor *v)
+static void qobject_output_free(Visitor *v)
 {
-    QmpOutputVisitor *qov = to_qov(v);
+    QObjectOutputVisitor *qov = to_qov(v);
     QStackEntry *e;
 
     while (!QSLIST_EMPTY(&qov->stack)) {
@@ -227,27 +225,27 @@ static void qmp_output_free(Visitor *v)
     g_free(qov);
 }
 
-Visitor *qmp_output_visitor_new(QObject **result)
+Visitor *qobject_output_visitor_new(QObject **result)
 {
-    QmpOutputVisitor *v;
+    QObjectOutputVisitor *v;
 
     v = g_malloc0(sizeof(*v));
 
     v->visitor.type = VISITOR_OUTPUT;
-    v->visitor.start_struct = qmp_output_start_struct;
-    v->visitor.end_struct = qmp_output_end_struct;
-    v->visitor.start_list = qmp_output_start_list;
-    v->visitor.next_list = qmp_output_next_list;
-    v->visitor.end_list = qmp_output_end_list;
-    v->visitor.type_int64 = qmp_output_type_int64;
-    v->visitor.type_uint64 = qmp_output_type_uint64;
-    v->visitor.type_bool = qmp_output_type_bool;
-    v->visitor.type_str = qmp_output_type_str;
-    v->visitor.type_number = qmp_output_type_number;
-    v->visitor.type_any = qmp_output_type_any;
-    v->visitor.type_null = qmp_output_type_null;
-    v->visitor.complete = qmp_output_complete;
-    v->visitor.free = qmp_output_free;
+    v->visitor.start_struct = qobject_output_start_struct;
+    v->visitor.end_struct = qobject_output_end_struct;
+    v->visitor.start_list = qobject_output_start_list;
+    v->visitor.next_list = qobject_output_next_list;
+    v->visitor.end_list = qobject_output_end_list;
+    v->visitor.type_int64 = qobject_output_type_int64;
+    v->visitor.type_uint64 = qobject_output_type_uint64;
+    v->visitor.type_bool = qobject_output_type_bool;
+    v->visitor.type_str = qobject_output_type_str;
+    v->visitor.type_number = qobject_output_type_number;
+    v->visitor.type_any = qobject_output_type_any;
+    v->visitor.type_null = qobject_output_type_null;
+    v->visitor.complete = qobject_output_complete;
+    v->visitor.free = qobject_output_free;
 
     *result = NULL;
     v->result = result;
index 384537ba5bad76971d12983ff5a0c78964bfef84..afcd51ff1895859a13cf756741038e117fbe834b 100644 (file)
@@ -500,7 +500,7 @@ static void dump_json_image_check(ImageCheck *check, bool quiet)
 {
     QString *str;
     QObject *obj;
-    Visitor *v = qmp_output_visitor_new(&obj);
+    Visitor *v = qobject_output_visitor_new(&obj);
 
     visit_type_ImageCheck(v, NULL, &check, &error_abort);
     visit_complete(v, &obj);
@@ -2193,7 +2193,7 @@ static void dump_json_image_info_list(ImageInfoList *list)
 {
     QString *str;
     QObject *obj;
-    Visitor *v = qmp_output_visitor_new(&obj);
+    Visitor *v = qobject_output_visitor_new(&obj);
 
     visit_type_ImageInfoList(v, NULL, &list, &error_abort);
     visit_complete(v, &obj);
@@ -2209,7 +2209,7 @@ static void dump_json_image_info(ImageInfo *info)
 {
     QString *str;
     QObject *obj;
-    Visitor *v = qmp_output_visitor_new(&obj);
+    Visitor *v = qobject_output_visitor_new(&obj);
 
     visit_type_ImageInfo(v, NULL, &info, &error_abort);
     visit_complete(v, &obj);
index f2b1d5849450a55b67860314ec67f180db9a0317..447e4a05606c6f97f3f53c5d9d318a74cf061310 100644 (file)
@@ -35,7 +35,7 @@ QObject *object_property_get_qobject(Object *obj, const char *name,
     Error *local_err = NULL;
     Visitor *v;
 
-    v = qmp_output_visitor_new(&ret);
+    v = qobject_output_visitor_new(&ret);
     object_property_get(obj, v, name, &local_err);
     if (!local_err) {
         visit_complete(v, &ret);
index ee2a751a17ff379987ee6148d1e9d46502303406..09e8467d905e08f8e1dc5fa4bcf5d0f8d62f7486 100644 (file)
@@ -68,7 +68,7 @@ static void qmp_marshal_output_%(c_name)s(%(c_type)s ret_in, QObject **ret_out,
     Error *err = NULL;
     Visitor *v;
 
-    v = qmp_output_visitor_new(ret_out);
+    v = qobject_output_visitor_new(ret_out);
     visit_type_%(c_name)s(v, "unused", &ret_in, &err);
     if (!err) {
         visit_complete(v, ret_out);
index 6d9a36d58c933b7d675e366d67ebb17d5fcf8b9e..f4eb7f85b1a0b699403322240b3038cb2fa1e2b6 100644 (file)
@@ -98,7 +98,7 @@ def gen_event_send(name, arg_type, boxed):
 
     if arg_type and not arg_type.is_empty():
         ret += mcgen('''
-    v = qmp_output_visitor_new(&obj);
+    v = qobject_output_visitor_new(&obj);
 ''')
         if not arg_type.is_implicit():
             ret += mcgen('''
index 550c1e6807102918a7a96fcbc096abd008a71896..b50bb8a81aa40ed75a3670a94a06e49548a668d1 100644 (file)
@@ -52,7 +52,7 @@ static void qnull_visit_test(void)
     visit_type_null(v, NULL, &error_abort);
     visit_free(v);
 
-    v = qmp_output_visitor_new(&obj);
+    v = qobject_output_visitor_new(&obj);
     visit_type_null(v, NULL, &error_abort);
     visit_complete(v, &obj);
     g_assert(obj == &qnull_);
index f10d695983b8c609d6d45c74b807860e4bbe9c86..4e2d79c5d1b8fc6b3de3c03ab346cb831f500fab 100644 (file)
@@ -28,7 +28,7 @@ typedef struct TestOutputVisitorData {
 static void visitor_output_setup(TestOutputVisitorData *data,
                                  const void *unused)
 {
-    data->ov = qmp_output_visitor_new(&data->obj);
+    data->ov = qobject_output_visitor_new(&data->obj);
     g_assert(data->ov);
 }
 
index de03c4c1229e37d6e2ab480b2f2392e7855ee881..66b2b1c56412e34e002ffbb1109f202fdc482a1e 100644 (file)
@@ -1022,7 +1022,7 @@ static void qmp_serialize(void *native_in, void **datap,
 {
     QmpSerializeData *d = g_malloc0(sizeof(*d));
 
-    d->qov = qmp_output_visitor_new(&d->obj);
+    d->qov = qobject_output_visitor_new(&d->obj);
     visit(d->qov, &native_in, errp);
     *datap = d;
 }