Files
mie/mie/print/type.c

18 lines
580 B
C

#include <mie/print/printer.h>
#include <mie/type/type-definition.h>
#include <mie/type/type.h>
void mie_printer_print_type(struct mie_printer *printer, const struct mie_type *type)
{
if (type->ty_def && type->ty_def->ty_print) {
type->ty_def->ty_print(type, printer);
} else if (type->ty_name) {
b_stream_write_string(printer->p_stream, type->ty_name, NULL);
} else if (type->ty_def && type->ty_def->ty_name) {
b_stream_write_string(
printer->p_stream, type->ty_def->ty_name, NULL);
} else {
b_stream_write_string(printer->p_stream, "<UNNAMED-TYPE>", NULL);
}
}