1 #include <isl_printer_private.h>
2 
3 #define xCAT(A,B) A ## B
4 #define CAT(A,B) xCAT(A,B)
5 #undef TYPE
6 #define TYPE CAT(isl_,BASE)
7 #define xFN(TYPE,NAME) TYPE ## _ ## NAME
8 #define FN(TYPE,NAME) xFN(TYPE,NAME)
9 
10 #ifndef PRINT_DUMP_DEFAULT
11 #define PRINT_DUMP_DEFAULT	1
12 #endif
13 
FN(TYPE,dump)14 void FN(TYPE,dump)(__isl_keep TYPE *obj)
15 {
16 	isl_printer *p;
17 
18 	if (!obj)
19 		return;
20 	p = isl_printer_to_file(FN(TYPE,get_ctx)(obj), stderr);
21 	p = isl_printer_set_dump(p, PRINT_DUMP_DEFAULT);
22 	p = FN(isl_printer_print,BASE)(p, obj);
23 	p = isl_printer_end_line(p);
24 	isl_printer_free(p);
25 }
26 
27 #undef PRINT_DUMP_DEFAULT
28 
FN(TYPE,to_str)29 __isl_give char *FN(TYPE,to_str)(__isl_keep TYPE *obj)
30 {
31 	isl_printer *p;
32 	char *s;
33 
34 	if (!obj)
35 		return NULL;
36 	p = isl_printer_to_str(FN(TYPE,get_ctx)(obj));
37 	p = FN(isl_printer_print,BASE)(p, obj);
38 	s = isl_printer_get_str(p);
39 	isl_printer_free(p);
40 
41 	return s;
42 }
43