static corto_int16 cpp_fluent_walkMembers(corto_type type, cpp_classWalk_t *data) { struct corto_serializer_s s; corto_serializerInit(&s); s.metaprogram[CORTO_MEMBER] = cpp_fluent_visitMember; s.metaprogram[CORTO_BASE] = NULL; if (corto_metaWalk(&s, type, data)) { goto error; } return 0; error: return -1; }
struct corto_serializer_s corto_ser_init(corto_modifier access, corto_operatorKind accessKind, corto_serializerTraceKind trace) { struct corto_serializer_s s; corto_serializerInit(&s); s.access = access; s.accessKind = accessKind; s.traceKind = trace; s.program[CORTO_COLLECTION] = corto_ser_initCollection; s.program[CORTO_ANY] = NULL; return s; }
/* Create serializer */ struct corto_serializer_s ast_findMemberSerializer(corto_bool findHidden) { struct corto_serializer_s s; corto_serializerInit(&s); s.metaprogram[CORTO_MEMBER] = ast_Initializer_findMember; s.access = CORTO_LOCAL | CORTO_PRIVATE | CORTO_READONLY; if (!findHidden) { s.access |= CORTO_HIDDEN; } s.accessKind = CORTO_NOT; s.traceKind = CORTO_SERIALIZER_TRACE_NEVER; s.aliasAction = CORTO_SERIALIZER_ALIAS_FOLLOW; s.optionalAction = CORTO_SERIALIZER_OPTIONAL_ALWAYS; return s; }