Home | History | Annotate | Line # | Download | only in dist
      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