static void parse_type_int64(Visitor *v, const char *name, int64_t *obj,

                             Error **errp)

{

    StringInputVisitor *siv = to_siv(v);



    if (!siv->string) {

        error_setg(errp, QERR_INVALID_PARAMETER_TYPE, name ? name : "null",

                   "integer");

        return;

    }



    if (parse_str(siv, name, errp) < 0) {

        return;

    }



    if (!siv->ranges) {

        goto error;

    }



    if (!siv->cur_range) {

        Range *r;



        siv->cur_range = g_list_first(siv->ranges);

        if (!siv->cur_range) {

            goto error;

        }



        r = siv->cur_range->data;

        if (!r) {

            goto error;

        }



        siv->cur = r->begin;

    }



    *obj = siv->cur;

    siv->cur++;

    return;



error:

    error_setg(errp, QERR_INVALID_PARAMETER_VALUE, name ? name : "null",

               "an int64 value or range");

}

static void parse_type_int64(Visitor *v, const char *name, int64_t *obj,

                             Error **errp)

{

    StringInputVisitor *siv = to_siv(v);



    if (!siv->string) {

        error_setg(errp, QERR_INVALID_PARAMETER_TYPE, name ? name : "null",

                   "integer");

        return;

    }



    if (parse_str(siv, name, errp) < 0) {

        return;

    }



    if (!siv->ranges) {

        goto error;

    }



    if (!siv->cur_range) {

        Range *r;



        siv->cur_range = g_list_first(siv->ranges);

        if (!siv->cur_range) {

            goto error;

        }



        r = siv->cur_range->data;

        if (!r) {

            goto error;

        }



        siv->cur = r->begin;

    }



    *obj = siv->cur;

    siv->cur++;

    return;



error:

    error_setg(errp, QERR_INVALID_PARAMETER_VALUE, name ? name : "null",

               "an int64 value or range");

}

static void FUNC_0(Visitor *VAR_0, const char *VAR_1, int64_t *VAR_2,

                             Error **VAR_3)

{

    StringInputVisitor *siv = to_siv(VAR_0);



    if (!siv->string) {

        error_setg(VAR_3, QERR_INVALID_PARAMETER_TYPE, VAR_1 ? VAR_1 : "null",

                   "integer");

        return;

    }



    if (parse_str(siv, VAR_1, VAR_3) < 0) {

        return;

    }



    if (!siv->ranges) {

        goto error;

    }



    if (!siv->cur_range) {

        Range *r;



        siv->cur_range = g_list_first(siv->ranges);

        if (!siv->cur_range) {

            goto error;

        }



        r = siv->cur_range->data;

        if (!r) {

            goto error;

        }



        siv->cur = r->begin;

    }



    *VAR_2 = siv->cur;

    siv->cur++;

    return;



error:

    error_setg(VAR_3, QERR_INVALID_PARAMETER_VALUE, VAR_1 ? VAR_1 : "null",

               "an int64 value or range");

}

static void FUNC_0(Visitor *VAR_0, const char *VAR_1, int64_t *VAR_2,
Error **VAR_3)
{ StringInputVisitor *siv = to_siv(VAR_0); if (!siv->string) { error_setg(VAR_3, QERR_INVALID_PARAMETER_TYPE, VAR_1 ? VAR_1 : "null",
"integer"); return; } if (parse_str(siv, VAR_1, VAR_3) < 0) { return; } if (!siv->ranges) { goto error; } if (!siv->cur_range) { Range *r; siv->cur_range = g_list_first(siv->ranges); if (!siv->cur_range) { goto error; } r = siv->cur_range->data; if (!r) { goto error; } siv->cur = r->begin; } *VAR_2 = siv->cur; siv->cur++; return; error:
error_setg(VAR_3, QERR_INVALID_PARAMETER_VALUE, VAR_1 ? VAR_1 : "null",
"an int64 value or range"); }