[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH RFC v2 34/47] qapi-visit: Rearrange code a bit
From: |
Markus Armbruster |
Subject: |
[Qemu-devel] [PATCH RFC v2 34/47] qapi-visit: Rearrange code a bit |
Date: |
Wed, 1 Jul 2015 22:22:22 +0200 |
Move gen_visit_decl() to a better place. Inline
generate_visit_struct_body().
Signed-off-by: Markus Armbruster <address@hidden>
---
scripts/qapi-visit.py | 42 ++++++++++++++++--------------------------
1 file changed, 16 insertions(+), 26 deletions(-)
diff --git a/scripts/qapi-visit.py b/scripts/qapi-visit.py
index 97b1f05..2813bb3 100644
--- a/scripts/qapi-visit.py
+++ b/scripts/qapi-visit.py
@@ -18,6 +18,15 @@ import re
implicit_structs_seen = set()
struct_fields_seen = set()
+def gen_visit_decl(name, scalar=False):
+ c_type = c_name(name) + ' *'
+ if not scalar:
+ c_type += '*'
+ return mcgen('''
+void visit_type_%(c_name)s(Visitor *m, %(c_type)sobj, const char *name, Error
**errp);
+''',
+ c_name=c_name(name), c_type=c_type)
+
def gen_visit_implicit_struct(typ):
if typ in implicit_structs_seen:
return ''
@@ -114,8 +123,12 @@ out:
''')
return ret
-def gen_visit_struct_body(name):
- ret = mcgen('''
+def gen_visit_struct(name, base, members):
+ ret = gen_visit_struct_fields(name, base, members)
+ ret += mcgen('''
+
+void visit_type_%(c_name)s(Visitor *m, %(c_name)s **obj, const char *name,
Error **errp)
+{
Error *err = NULL;
visit_start_struct(m, (void **)obj, "%(name)s", name, sizeof(%(c_name)s),
&err);
@@ -126,24 +139,10 @@ def gen_visit_struct_body(name):
visit_end_struct(m, &err);
}
error_propagate(errp, err);
+}
''',
name=name, c_name=c_name(name))
- return ret
-def gen_visit_struct(name, base, members):
- ret = gen_visit_struct_fields(name, base, members)
- ret += mcgen('''
-
-void visit_type_%(c_name)s(Visitor *m, %(c_name)s **obj, const char *name,
Error **errp)
-{
-''',
- c_name=c_name(name))
-
- ret += gen_visit_struct_body(name)
-
- ret += mcgen('''
-}
-''')
return ret
def gen_visit_list(name, element_type):
@@ -322,15 +321,6 @@ out:
return ret
-def gen_visit_decl(name, scalar=False):
- c_type = c_name(name) + ' *'
- if not scalar:
- c_type += '*'
- return mcgen('''
-void visit_type_%(c_name)s(Visitor *m, %(c_type)sobj, const char *name, Error
**errp);
-''',
- c_name=c_name(name), c_type=c_type)
-
class QAPISchemaGenVisitVisitor(QAPISchemaVisitor):
def __init__(self):
self.decl = None
--
1.9.3
- Re: [Qemu-devel] [PATCH RFC v2 31/47] qapi-event: Eliminate global variable event_enum_value, (continued)
- [Qemu-devel] [PATCH RFC v2 30/47] qapi: De-duplicate enum code generation, Markus Armbruster, 2015/07/01
- [Qemu-devel] [PATCH RFC v2 34/47] qapi-visit: Rearrange code a bit,
Markus Armbruster <=
- [Qemu-devel] [PATCH RFC v2 26/47] qapi-types: Convert to QAPISchemaVisitor, fixing flat unions, Markus Armbruster, 2015/07/01
- Re: [Qemu-devel] [PATCH RFC v2 26/47] qapi-types: Convert to QAPISchemaVisitor, fixing flat unions, Eric Blake, 2015/07/22
- Re: [Qemu-devel] [PATCH RFC v2 26/47] qapi-types: Convert to QAPISchemaVisitor, fixing flat unions, Eric Blake, 2015/07/22
- Re: [Qemu-devel] [PATCH RFC v2 26/47] qapi-types: Convert to QAPISchemaVisitor, fixing flat unions, Eric Blake, 2015/07/22
- Re: [Qemu-devel] [PATCH RFC v2 26/47] qapi-types: Convert to QAPISchemaVisitor, fixing flat unions, Markus Armbruster, 2015/07/27
- Re: [Qemu-devel] [PATCH RFC v2 26/47] qapi-types: Convert to QAPISchemaVisitor, fixing flat unions, Eric Blake, 2015/07/27
- Re: [Qemu-devel] [PATCH RFC v2 26/47] qapi-types: Convert to QAPISchemaVisitor, fixing flat unions, Markus Armbruster, 2015/07/28