void visit_type_enum(Visitor *v, const char *name, int *obj,

                     const char *const strings[], Error **errp)

{

    assert(obj && strings);

    if (v->type == VISITOR_INPUT) {

        input_type_enum(v, name, obj, strings, errp);

    } else if (v->type == VISITOR_OUTPUT) {

        output_type_enum(v, name, obj, strings, errp);

    }

}

void visit_type_enum(Visitor *v, const char *name, int *obj,

                     const char *const strings[], Error **errp)

{

    assert(obj && strings);

    if (v->type == VISITOR_INPUT) {

        input_type_enum(v, name, obj, strings, errp);

    } else if (v->type == VISITOR_OUTPUT) {

        output_type_enum(v, name, obj, strings, errp);

    }

}

    if (v->type == VISITOR_INPUT) {     if (v->type == VISITOR_INPUT) {     if (v->type == VISITOR_INPUT) {     } else if (v->type == VISITOR_OUTPUT) {
void FUNC_0(Visitor *VAR_0, const char *VAR_1, int *VAR_2,

                     const char *const VAR_3[], Error **VAR_4)

{

    assert(VAR_2 && VAR_3);

    if (VAR_0->type == VISITOR_INPUT) {

        input_type_enum(VAR_0, VAR_1, VAR_2, VAR_3, VAR_4);

    } else if (VAR_0->type == VISITOR_OUTPUT) {

        output_type_enum(VAR_0, VAR_1, VAR_2, VAR_3, VAR_4);

    }

}

void FUNC_0(Visitor *VAR_0, const char *VAR_1, int *VAR_2,
const char *const VAR_3[], Error **VAR_4)
{ assert(VAR_2 && VAR_3); if (VAR_0->type == VISITOR_INPUT) { input_type_enum(VAR_0, VAR_1, VAR_2, VAR_3, VAR_4); } else if (VAR_0->type == VISITOR_OUTPUT) { output_type_enum(VAR_0, VAR_1, VAR_2, VAR_3, VAR_4); } }