cbf0423abb17a6de49bfe059ae59f4526673d967
[isl.git] / isl_map_to_basic_set.h
blobcbf0423abb17a6de49bfe059ae59f4526673d967
1 #ifndef ISL_HMAP_MAP_BASIC_SET_H
2 #define ISL_HMAP_MAP_BASIC_SET_H
4 #include <isl/ctx.h>
5 #include <isl/hash.h>
6 #include <isl/map.h>
7 #include <isl/set.h>
8 #include <isl/printer.h>
10 struct isl_map_to_basic_set {
11 int ref;
12 isl_ctx *ctx;
13 struct isl_hash_table table;
15 typedef struct isl_map_to_basic_set isl_map_to_basic_set;
17 __isl_give isl_map_to_basic_set *isl_map_to_basic_set_alloc( isl_ctx *ctx,
18 int min_size);
19 __isl_give isl_map_to_basic_set *isl_map_to_basic_set_copy(
20 __isl_keep isl_map_to_basic_set *hmap);
21 void *isl_map_to_basic_set_free(__isl_take isl_map_to_basic_set *map2bset);
23 isl_ctx *isl_map_to_basic_set_get_ctx(__isl_keep isl_map_to_basic_set *hmap);
25 int isl_map_to_basic_set_has(__isl_keep isl_map_to_basic_set *map2bset,
26 __isl_keep isl_map *key);
27 __isl_give isl_basic_set *isl_map_to_basic_set_get(
28 __isl_keep isl_map_to_basic_set *map2bset, __isl_take isl_map *key);
29 __isl_give isl_map_to_basic_set *isl_map_to_basic_set_set(
30 __isl_take isl_map_to_basic_set *map2bset,
31 __isl_take isl_map *key, __isl_take isl_basic_set *val);
33 int isl_map_to_basic_set_foreach(__isl_keep isl_map_to_basic_set *hmap,
34 int (*fn)(__isl_take isl_map *key, __isl_take isl_basic_set *val,
35 void *user), void *user);
37 __isl_give isl_printer *isl_printer_print_map_to_basic_set(
38 __isl_take isl_printer *p, __isl_keep isl_map_to_basic_set *hmap);
39 void isl_map_to_basic_set_dump(__isl_keep isl_map_to_basic_set *hmap);
41 #endif