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 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 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