start_list(Visitor *v, const char *name, GenericList **list, size_t size,

           Error **errp)

{

    StringInputVisitor *siv = to_siv(v);



    /* We don't support visits without a list */

    assert(list);



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

        *list = NULL;

        return;

    }



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

    if (siv->cur_range) {

        Range *r = siv->cur_range->data;

        if (r) {

            siv->cur = r->begin;

        }

        *list = g_malloc0(size);

    } else {

        *list = NULL;

    }

}

start_list(Visitor *v, const char *name, GenericList **list, size_t size,

           Error **errp)

{

    StringInputVisitor *siv = to_siv(v);



    

    assert(list);



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

        *list = NULL;

        return;

    }



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

    if (siv->cur_range) {

        Range *r = siv->cur_range->data;

        if (r) {

            siv->cur = r->begin;

        }

        *list = g_malloc0(size);

    } else {

        *list = NULL;

    }

}

FUNC_0(Visitor *VAR_0, const char *VAR_1, GenericList **VAR_2, size_t VAR_3,

           Error **VAR_4)

{

    StringInputVisitor *siv = to_siv(VAR_0);



    

    assert(VAR_2);



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

        *VAR_2 = NULL;

        return;

    }



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

    if (siv->cur_range) {

        Range *r = siv->cur_range->data;

        if (r) {

            siv->cur = r->begin;

        }

        *VAR_2 = g_malloc0(VAR_3);

    } else {

        *VAR_2 = NULL;

    }

}

FUNC_0(Visitor *VAR_0, const char *VAR_1, GenericList **VAR_2, size_t VAR_3,
Error **VAR_4)
{ StringInputVisitor *siv = to_siv(VAR_0); assert(VAR_2); if (parse_str(siv, VAR_1, VAR_4) < 0) { *VAR_2 = NULL; return; } siv->cur_range = g_list_first(siv->ranges); if (siv->cur_range) { Range *r = siv->cur_range->data; if (r) { siv->cur = r->begin; } *VAR_2 = g_malloc0(VAR_3); } else { *VAR_2 = NULL; } }