xref: /llvm-project/polly/lib/External/isl/include/isl/map_type.h (revision dddb225acf1f194c85e29e47ac07205cc38186d1)
1 #ifndef ISL_MAP_TYPE_H
2 #define ISL_MAP_TYPE_H
3 
4 #include <isl/ctx.h>
5 #include <isl/list.h>
6 
7 #if defined(__cplusplus)
8 extern "C" {
9 #endif
10 
11 struct __isl_subclass(isl_map) isl_basic_map;
12 typedef struct isl_basic_map isl_basic_map;
13 ISL_DECLARE_LIST_TYPE(basic_map)
14 struct __isl_subclass(isl_union_map) isl_map;
15 typedef struct isl_map isl_map;
16 ISL_DECLARE_EXPORTED_LIST_TYPE(map)
17 
18 #ifndef isl_basic_set
19 struct __isl_subclass(isl_set) isl_basic_set;
20 typedef struct isl_basic_set isl_basic_set;
21 ISL_DECLARE_LIST_TYPE(basic_set)
22 #endif
23 
24 #ifndef isl_set
25 struct __isl_subclass(isl_union_set) isl_set;
26 typedef struct isl_set isl_set;
27 ISL_DECLARE_EXPORTED_LIST_TYPE(set)
28 #endif
29 
30 ISL_DECLARE_LIST_FN(basic_set)
31 ISL_DECLARE_EXPORTED_LIST_FN(set)
32 ISL_DECLARE_EXPORTED_LIST_FN_READ(set)
33 
34 #if defined(__cplusplus)
35 }
36 #endif
37 
38 #endif
39