/* TYPE */
-typedef struct _eo_type_def
+typedef struct _eo_typedef_def
{
const char *alias;
Eolian_Type type;
-} Eo_Type_Def;
+} Eo_Typedef_Def;
/* TEMPS */
const char *legacy_def;
Eo_Class_Def *kls;
Eo_Ret_Def *ret_def;
- Eo_Type_Def *type_def;
+ Eo_Typedef_Def *typedef_def;
Eo_Property_Def *prop;
Eo_Method_Def *meth;
Eo_Param_Def *param;
} Eo_Lexer_Temps;
void eo_definitions_class_def_free(Eo_Class_Def *kls);
-void eo_definitions_type_def_free(Eo_Type_Def *type);
+void eo_definitions_typedef_def_free(Eo_Typedef_Def *type);
void eo_definitions_temps_free(Eo_Lexer_Temps *tmp);
#endif /* __EO_DEFINITIONS_H__ */
static void
parse_typedef(Eo_Lexer *ls)
{
- ls->tmp.type_def = calloc(1, sizeof(Eo_Type_Def));
+ ls->tmp.typedef_def = calloc(1, sizeof(Eo_Typedef_Def));
eo_lexer_get(ls);
check(ls, TOK_VALUE);
- ls->tmp.type_def->alias = eina_stringshare_add(ls->t.value);
+ ls->tmp.typedef_def->alias = eina_stringshare_add(ls->t.value);
eo_lexer_get(ls);
test_next(ls, ':');
- ls->tmp.type_def->type = parse_type(ls, NULL, NULL);
+ ls->tmp.typedef_def->type = parse_type(ls, NULL, NULL);
ls->tmp.type = NULL;
check_next(ls, ';');
}
case KW_type:
{
parse_typedef(ls);
- append_node(ls, NODE_TYPEDEF, ls->tmp.type_def);
- ls->tmp.type_def = NULL;
+ append_node(ls, NODE_TYPEDEF, ls->tmp.typedef_def);
+ ls->tmp.typedef_def = NULL;
break;
}
def:
} _Parameter_Type;
static void
-_print_type(FILE *f, _Parameter_Type *tp)
+_print_type(FILE *f, Eolian_Type tp)
{
Eina_List *l;
Eolian_Type stp;
- fprintf(f, "%s%s<", tp->name, tp->is_own ? "@own " : "");
- EINA_LIST_FOREACH(tp->subtypes, l, stp)
- _type_print(f, stp);
+ _Parameter_Type *tpp = (_Parameter_Type*)tp;
+ fprintf(f, "%s%s<", tpp->name, tpp->is_own ? "@own " : "");
+ EINA_LIST_FOREACH(tpp->subtypes, l, stp)
+ _print_type(f, stp);
fputc('>', f);
}
}
static void
-_dump_type(Eo_Type_Def *type)
+_dump_type(Eo_Typedef_Def *type)
{
printf("Typedef: %s ", type->alias);
_print_type(stdout, type->type);
_dump_class(nd->def_class);
break;
case NODE_TYPEDEF:
- _dump_type(nd->def_type);
+ _dump_type(nd->def_typedef);
break;
default:
break;
}
static Eina_Bool
-_db_fill_type(Eo_Type_Def *type_def)
+_db_fill_type(Eo_Typedef_Def *type_def)
{
database_type_add(type_def->alias, type_def->type);
type_def->type = NULL;
goto error;
break;
case NODE_TYPEDEF:
- if (!_db_fill_type(nd->def_type))
+ if (!_db_fill_type(nd->def_typedef))
goto error;
break;
default: