From patchwork Thu Oct 4 17:33:31 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: [v3,12/22] qapi: add open-coded visitor for struct tm types Date: Thu, 04 Oct 2012 07:33:31 -0000 From: Michael Roth X-Patchwork-Id: 189314 Message-Id: <1349372021-31212-13-git-send-email-mdroth@linux.vnet.ibm.com> To: qemu-devel@nongnu.org Cc: kwolf@redhat.com, peter.maydell@linaro.org, aliguori@us.ibm.com, blauwirbel@gmail.com, pbonzini@redhat.com, eblake@redhat.com Reviewed-by: Anthony Liguori Signed-off-by: Michael Roth --- qapi/Makefile.objs | 1 + qapi/misc-qapi-visit.c | 14 ++++++++++++++ qapi/qapi-visit-core.h | 3 +++ 3 files changed, 18 insertions(+) create mode 100644 qapi/misc-qapi-visit.c diff --git a/qapi/Makefile.objs b/qapi/Makefile.objs index 5f5846e..7604b52 100644 --- a/qapi/Makefile.objs +++ b/qapi/Makefile.objs @@ -1,3 +1,4 @@ qapi-obj-y = qapi-visit-core.o qapi-dealloc-visitor.o qmp-input-visitor.o qapi-obj-y += qmp-output-visitor.o qmp-registry.o qmp-dispatch.o qapi-obj-y += string-input-visitor.o string-output-visitor.o opts-visitor.o +qapi-obj-y += misc-qapi-visit.o diff --git a/qapi/misc-qapi-visit.c b/qapi/misc-qapi-visit.c new file mode 100644 index 0000000..a44773d --- /dev/null +++ b/qapi/misc-qapi-visit.c @@ -0,0 +1,14 @@ +#include +#include "qidl.h" + +void visit_type_tm(Visitor *v, struct tm *obj, const char *name, Error **errp) +{ + visit_start_struct(v, NULL, "struct tm", name, 0, errp); + visit_type_int32(v, &obj->tm_year, "tm_year", errp); + visit_type_int32(v, &obj->tm_mon, "tm_mon", errp); + visit_type_int32(v, &obj->tm_mday, "tm_mday", errp); + visit_type_int32(v, &obj->tm_hour, "tm_hour", errp); + visit_type_int32(v, &obj->tm_min, "tm_min", errp); + visit_type_int32(v, &obj->tm_sec, "tm_sec", errp); + visit_end_struct(v, errp); +} diff --git a/qapi/qapi-visit-core.h b/qapi/qapi-visit-core.h index 5eb1616..10ec044 100644 --- a/qapi/qapi-visit-core.h +++ b/qapi/qapi-visit-core.h @@ -100,4 +100,7 @@ void visit_start_carray(Visitor *v, void **obj, const char *name, void visit_next_carray(Visitor *v, Error **errp); void visit_end_carray(Visitor *v, Error **errp); +/* misc. visitors */ +void visit_type_tm(Visitor *m, struct tm *obj, const char *name, Error **errp); + #endif