[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 01/12] qapi: add size parser to StringInputVisit
From: |
Andreas Färber |
Subject: |
Re: [Qemu-devel] [PATCH 01/12] qapi: add size parser to StringInputVisitor |
Date: |
Wed, 05 Feb 2014 18:13:24 +0100 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.2.0 |
Am 30.01.2014 14:09, schrieb Paolo Bonzini:
> Signed-off-by: Paolo Bonzini <address@hidden>
> ---
> qapi/string-input-visitor.c | 24 ++++++++++++++++++++++++
> 1 file changed, 24 insertions(+)
>
> diff --git a/qapi/string-input-visitor.c b/qapi/string-input-visitor.c
> index 8f1bc41..793548a 100644
> --- a/qapi/string-input-visitor.c
> +++ b/qapi/string-input-visitor.c
> @@ -14,6 +14,7 @@
> #include "qapi/string-input-visitor.h"
> #include "qapi/visitor-impl.h"
> #include "qapi/qmp/qerror.h"
> +#include "qemu/option.h"
>
> struct StringInputVisitor
> {
> @@ -41,6 +42,28 @@ static void parse_type_int(Visitor *v, int64_t *obj, const
> char *name,
> *obj = val;
> }
>
> +static void parse_type_size(Visitor *v, uint64_t *obj, const char *name,
> + Error **errp)
> +{
> + StringInputVisitor *siv = DO_UPCAST(StringInputVisitor, visitor, v);
> + Error *err = NULL;
> + uint64_t val;
> +
> + if (siv->string) {
> + parse_option_size(name, siv->string, &val, &err);
> + } else {
> + error_set(errp, QERR_INVALID_PARAMETER_TYPE, name ? name : "null",
> + "size");
error_setg()?
Otherwise looks fine. CC'ing Luiz.
Andreas
> + return;
> + }
> + if (err) {
> + error_propagate(errp, err);
> + return;
> + }
> +
> + *obj = val;
> +}
> +
> static void parse_type_bool(Visitor *v, bool *obj, const char *name,
> Error **errp)
> {
> @@ -128,6 +151,7 @@ StringInputVisitor *string_input_visitor_new(const char
> *str)
>
> v->visitor.type_enum = input_type_enum;
> v->visitor.type_int = parse_type_int;
> + v->visitor.type_size = parse_type_size;
> v->visitor.type_bool = parse_type_bool;
> v->visitor.type_str = parse_type_str;
> v->visitor.type_number = parse_type_number;
>
--
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg
- Re: [Qemu-devel] [PATCH 01/12] qapi: add size parser to StringInputVisitor,
Andreas Färber <=