Subversion Repositories QNX 8.QNX8 LLVM/Clang compiler suite

Rev

Blame | Last modification | View Log | Download | RSS feed

  1. #ifndef ISL_PRINTER_H
  2. #define ISL_PRINTER_H
  3.  
  4. #include <stdio.h>
  5. #include <isl/ctx.h>
  6. #include <isl/printer_type.h>
  7. #include <isl/id_type.h>
  8.  
  9. #if defined(__cplusplus)
  10. extern "C" {
  11. #endif
  12.  
  13. __isl_give isl_printer *isl_printer_to_file(isl_ctx *ctx, FILE *file);
  14. __isl_give isl_printer *isl_printer_to_str(isl_ctx *ctx);
  15. __isl_null isl_printer *isl_printer_free(__isl_take isl_printer *printer);
  16.  
  17. isl_ctx *isl_printer_get_ctx(__isl_keep isl_printer *printer);
  18. FILE *isl_printer_get_file(__isl_keep isl_printer *printer);
  19.  
  20. __isl_give char *isl_printer_get_str(__isl_keep isl_printer *printer);
  21.  
  22. __isl_give isl_printer *isl_printer_set_indent(__isl_take isl_printer *p,
  23.         int indent);
  24. __isl_give isl_printer *isl_printer_indent(__isl_take isl_printer *p,
  25.         int indent);
  26.  
  27. #define ISL_FORMAT_ISL                  0
  28. #define ISL_FORMAT_POLYLIB              1
  29. #define ISL_FORMAT_POLYLIB_CONSTRAINTS  2
  30. #define ISL_FORMAT_OMEGA                3
  31. #define ISL_FORMAT_C                    4
  32. #define ISL_FORMAT_LATEX                5
  33. #define ISL_FORMAT_EXT_POLYLIB          6
  34. __isl_give isl_printer *isl_printer_set_output_format(__isl_take isl_printer *p,
  35.         int output_format);
  36. int isl_printer_get_output_format(__isl_keep isl_printer *p);
  37.  
  38. #define ISL_YAML_STYLE_BLOCK            0
  39. #define ISL_YAML_STYLE_FLOW             1
  40. __isl_give isl_printer *isl_printer_set_yaml_style(__isl_take isl_printer *p,
  41.         int yaml_style);
  42. int isl_printer_get_yaml_style(__isl_keep isl_printer *p);
  43.  
  44. __isl_give isl_printer *isl_printer_set_indent_prefix(__isl_take isl_printer *p,
  45.         const char *prefix);
  46. __isl_give isl_printer *isl_printer_set_prefix(__isl_take isl_printer *p,
  47.         const char *prefix);
  48. __isl_give isl_printer *isl_printer_set_suffix(__isl_take isl_printer *p,
  49.         const char *suffix);
  50. __isl_give isl_printer *isl_printer_set_isl_int_width(__isl_take isl_printer *p,
  51.         int width);
  52.  
  53. isl_bool isl_printer_has_note(__isl_keep isl_printer *p,
  54.         __isl_keep isl_id *id);
  55. __isl_give isl_id *isl_printer_get_note(__isl_keep isl_printer *p,
  56.         __isl_take isl_id *id);
  57. __isl_give isl_printer *isl_printer_set_note(__isl_take isl_printer *p,
  58.         __isl_take isl_id *id, __isl_take isl_id *note);
  59.  
  60. __isl_give isl_printer *isl_printer_start_line(__isl_take isl_printer *p);
  61. __isl_give isl_printer *isl_printer_end_line(__isl_take isl_printer *p);
  62. __isl_give isl_printer *isl_printer_print_double(__isl_take isl_printer *p,
  63.         double d);
  64. __isl_give isl_printer *isl_printer_print_int(__isl_take isl_printer *p, int i);
  65. __isl_give isl_printer *isl_printer_print_str(__isl_take isl_printer *p,
  66.         const char *s);
  67.  
  68. __isl_give isl_printer *isl_printer_yaml_start_mapping(
  69.         __isl_take isl_printer *p);
  70. __isl_give isl_printer *isl_printer_yaml_end_mapping(
  71.         __isl_take isl_printer *p);
  72. __isl_give isl_printer *isl_printer_yaml_start_sequence(
  73.         __isl_take isl_printer *p);
  74. __isl_give isl_printer *isl_printer_yaml_end_sequence(
  75.         __isl_take isl_printer *p);
  76. __isl_give isl_printer *isl_printer_yaml_next(__isl_take isl_printer *p);
  77.  
  78. __isl_give isl_printer *isl_printer_flush(__isl_take isl_printer *p);
  79.  
  80. #if defined(__cplusplus)
  81. }
  82. #endif
  83.  
  84. #endif
  85.