id.h 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. #ifndef ISL_ID_H
  2. #define ISL_ID_H
  3. #include <isl/ctx.h>
  4. #include <isl/id_type.h>
  5. #include <isl/list.h>
  6. #include <isl/multi.h>
  7. #include <isl/printer_type.h>
  8. #include <isl/stdint.h>
  9. #if defined(__cplusplus)
  10. extern "C" {
  11. #endif
  12. ISL_DECLARE_EXPORTED_LIST_FN(id)
  13. ISL_DECLARE_EXPORTED_LIST_FN_READ(id)
  14. ISL_DECLARE_MULTI(id)
  15. isl_ctx *isl_id_get_ctx(__isl_keep isl_id *id);
  16. uint32_t isl_id_get_hash(__isl_keep isl_id *id);
  17. __isl_give isl_id *isl_id_alloc(isl_ctx *ctx,
  18. __isl_keep const char *name, void *user);
  19. __isl_give isl_id *isl_id_copy(isl_id *id);
  20. __isl_null isl_id *isl_id_free(__isl_take isl_id *id);
  21. void *isl_id_get_user(__isl_keep isl_id *id);
  22. __isl_export
  23. __isl_keep const char *isl_id_get_name(__isl_keep isl_id *id);
  24. __isl_give isl_id *isl_id_set_free_user(__isl_take isl_id *id,
  25. void (*free_user)(void *user));
  26. void (*isl_id_get_free_user(__isl_keep isl_id *id))(void *user);
  27. __isl_constructor
  28. __isl_give isl_id *isl_id_read_from_str(isl_ctx *ctx, const char *str);
  29. __isl_give char *isl_id_to_str(__isl_keep isl_id *id);
  30. __isl_give isl_printer *isl_printer_print_id(__isl_take isl_printer *p,
  31. __isl_keep isl_id *id);
  32. void isl_id_dump(__isl_keep isl_id *id);
  33. __isl_constructor
  34. __isl_give isl_multi_id *isl_multi_id_read_from_str(isl_ctx *ctx,
  35. const char *str);
  36. __isl_give isl_printer *isl_printer_print_multi_id(__isl_take isl_printer *p,
  37. __isl_keep isl_multi_id *mi);
  38. void isl_multi_id_dump(__isl_keep isl_multi_id *mi);
  39. __isl_give char *isl_multi_id_to_str(__isl_keep isl_multi_id *mi);
  40. #if defined(__cplusplus)
  41. }
  42. #endif
  43. #endif