1 /// These are automatically generated conversions between
2 /// the default and the checked C++ bindings for isl.
3 ///
4 /// isl is a library for computing with integer sets and maps described by
5 /// Presburger formulas. On top of this, isl provides various tools for
6 /// polyhedral compilation, ranging from dependence analysis over scheduling
7 /// to AST generation.
8 
9 #ifndef ISL_CPP_CHECKED_CONVERSION
10 #define ISL_CPP_CHECKED_CONVERSION
11 
12 #include <isl/cpp.h>
13 #include <isl/cpp-checked.h>
14 
15 namespace isl {
16 
check(aff obj)17 checked::aff check(aff obj) {
18 	return checked::manage(obj.copy());
19 }
20 
uncheck(checked::aff obj)21 aff uncheck(checked::aff obj) {
22 	return manage(obj.copy());
23 }
24 
check(aff_list obj)25 checked::aff_list check(aff_list obj) {
26 	return checked::manage(obj.copy());
27 }
28 
uncheck(checked::aff_list obj)29 aff_list uncheck(checked::aff_list obj) {
30 	return manage(obj.copy());
31 }
32 
check(ast_build obj)33 checked::ast_build check(ast_build obj) {
34 	return checked::manage(obj.copy());
35 }
36 
uncheck(checked::ast_build obj)37 ast_build uncheck(checked::ast_build obj) {
38 	return manage(obj.copy());
39 }
40 
check(ast_expr obj)41 checked::ast_expr check(ast_expr obj) {
42 	return checked::manage(obj.copy());
43 }
44 
uncheck(checked::ast_expr obj)45 ast_expr uncheck(checked::ast_expr obj) {
46 	return manage(obj.copy());
47 }
48 
check(ast_expr_id obj)49 checked::ast_expr_id check(ast_expr_id obj) {
50 	return checked::manage(obj.copy()).as<checked::ast_expr_id>();
51 }
52 
uncheck(checked::ast_expr_id obj)53 ast_expr_id uncheck(checked::ast_expr_id obj) {
54 	return manage(obj.copy()).as<ast_expr_id>();
55 }
56 
check(ast_expr_int obj)57 checked::ast_expr_int check(ast_expr_int obj) {
58 	return checked::manage(obj.copy()).as<checked::ast_expr_int>();
59 }
60 
uncheck(checked::ast_expr_int obj)61 ast_expr_int uncheck(checked::ast_expr_int obj) {
62 	return manage(obj.copy()).as<ast_expr_int>();
63 }
64 
check(ast_expr_op obj)65 checked::ast_expr_op check(ast_expr_op obj) {
66 	return checked::manage(obj.copy()).as<checked::ast_expr_op>();
67 }
68 
uncheck(checked::ast_expr_op obj)69 ast_expr_op uncheck(checked::ast_expr_op obj) {
70 	return manage(obj.copy()).as<ast_expr_op>();
71 }
72 
check(ast_expr_op_access obj)73 checked::ast_expr_op_access check(ast_expr_op_access obj) {
74 	return checked::manage(obj.copy()).as<checked::ast_expr_op>().as<checked::ast_expr_op_access>();
75 }
76 
uncheck(checked::ast_expr_op_access obj)77 ast_expr_op_access uncheck(checked::ast_expr_op_access obj) {
78 	return manage(obj.copy()).as<ast_expr_op>().as<ast_expr_op_access>();
79 }
80 
check(ast_expr_op_add obj)81 checked::ast_expr_op_add check(ast_expr_op_add obj) {
82 	return checked::manage(obj.copy()).as<checked::ast_expr_op>().as<checked::ast_expr_op_add>();
83 }
84 
uncheck(checked::ast_expr_op_add obj)85 ast_expr_op_add uncheck(checked::ast_expr_op_add obj) {
86 	return manage(obj.copy()).as<ast_expr_op>().as<ast_expr_op_add>();
87 }
88 
check(ast_expr_op_address_of obj)89 checked::ast_expr_op_address_of check(ast_expr_op_address_of obj) {
90 	return checked::manage(obj.copy()).as<checked::ast_expr_op>().as<checked::ast_expr_op_address_of>();
91 }
92 
uncheck(checked::ast_expr_op_address_of obj)93 ast_expr_op_address_of uncheck(checked::ast_expr_op_address_of obj) {
94 	return manage(obj.copy()).as<ast_expr_op>().as<ast_expr_op_address_of>();
95 }
96 
check(ast_expr_op_and obj)97 checked::ast_expr_op_and check(ast_expr_op_and obj) {
98 	return checked::manage(obj.copy()).as<checked::ast_expr_op>().as<checked::ast_expr_op_and>();
99 }
100 
uncheck(checked::ast_expr_op_and obj)101 ast_expr_op_and uncheck(checked::ast_expr_op_and obj) {
102 	return manage(obj.copy()).as<ast_expr_op>().as<ast_expr_op_and>();
103 }
104 
check(ast_expr_op_and_then obj)105 checked::ast_expr_op_and_then check(ast_expr_op_and_then obj) {
106 	return checked::manage(obj.copy()).as<checked::ast_expr_op>().as<checked::ast_expr_op_and_then>();
107 }
108 
uncheck(checked::ast_expr_op_and_then obj)109 ast_expr_op_and_then uncheck(checked::ast_expr_op_and_then obj) {
110 	return manage(obj.copy()).as<ast_expr_op>().as<ast_expr_op_and_then>();
111 }
112 
check(ast_expr_op_call obj)113 checked::ast_expr_op_call check(ast_expr_op_call obj) {
114 	return checked::manage(obj.copy()).as<checked::ast_expr_op>().as<checked::ast_expr_op_call>();
115 }
116 
uncheck(checked::ast_expr_op_call obj)117 ast_expr_op_call uncheck(checked::ast_expr_op_call obj) {
118 	return manage(obj.copy()).as<ast_expr_op>().as<ast_expr_op_call>();
119 }
120 
check(ast_expr_op_cond obj)121 checked::ast_expr_op_cond check(ast_expr_op_cond obj) {
122 	return checked::manage(obj.copy()).as<checked::ast_expr_op>().as<checked::ast_expr_op_cond>();
123 }
124 
uncheck(checked::ast_expr_op_cond obj)125 ast_expr_op_cond uncheck(checked::ast_expr_op_cond obj) {
126 	return manage(obj.copy()).as<ast_expr_op>().as<ast_expr_op_cond>();
127 }
128 
check(ast_expr_op_div obj)129 checked::ast_expr_op_div check(ast_expr_op_div obj) {
130 	return checked::manage(obj.copy()).as<checked::ast_expr_op>().as<checked::ast_expr_op_div>();
131 }
132 
uncheck(checked::ast_expr_op_div obj)133 ast_expr_op_div uncheck(checked::ast_expr_op_div obj) {
134 	return manage(obj.copy()).as<ast_expr_op>().as<ast_expr_op_div>();
135 }
136 
check(ast_expr_op_eq obj)137 checked::ast_expr_op_eq check(ast_expr_op_eq obj) {
138 	return checked::manage(obj.copy()).as<checked::ast_expr_op>().as<checked::ast_expr_op_eq>();
139 }
140 
uncheck(checked::ast_expr_op_eq obj)141 ast_expr_op_eq uncheck(checked::ast_expr_op_eq obj) {
142 	return manage(obj.copy()).as<ast_expr_op>().as<ast_expr_op_eq>();
143 }
144 
check(ast_expr_op_fdiv_q obj)145 checked::ast_expr_op_fdiv_q check(ast_expr_op_fdiv_q obj) {
146 	return checked::manage(obj.copy()).as<checked::ast_expr_op>().as<checked::ast_expr_op_fdiv_q>();
147 }
148 
uncheck(checked::ast_expr_op_fdiv_q obj)149 ast_expr_op_fdiv_q uncheck(checked::ast_expr_op_fdiv_q obj) {
150 	return manage(obj.copy()).as<ast_expr_op>().as<ast_expr_op_fdiv_q>();
151 }
152 
check(ast_expr_op_ge obj)153 checked::ast_expr_op_ge check(ast_expr_op_ge obj) {
154 	return checked::manage(obj.copy()).as<checked::ast_expr_op>().as<checked::ast_expr_op_ge>();
155 }
156 
uncheck(checked::ast_expr_op_ge obj)157 ast_expr_op_ge uncheck(checked::ast_expr_op_ge obj) {
158 	return manage(obj.copy()).as<ast_expr_op>().as<ast_expr_op_ge>();
159 }
160 
check(ast_expr_op_gt obj)161 checked::ast_expr_op_gt check(ast_expr_op_gt obj) {
162 	return checked::manage(obj.copy()).as<checked::ast_expr_op>().as<checked::ast_expr_op_gt>();
163 }
164 
uncheck(checked::ast_expr_op_gt obj)165 ast_expr_op_gt uncheck(checked::ast_expr_op_gt obj) {
166 	return manage(obj.copy()).as<ast_expr_op>().as<ast_expr_op_gt>();
167 }
168 
check(ast_expr_op_le obj)169 checked::ast_expr_op_le check(ast_expr_op_le obj) {
170 	return checked::manage(obj.copy()).as<checked::ast_expr_op>().as<checked::ast_expr_op_le>();
171 }
172 
uncheck(checked::ast_expr_op_le obj)173 ast_expr_op_le uncheck(checked::ast_expr_op_le obj) {
174 	return manage(obj.copy()).as<ast_expr_op>().as<ast_expr_op_le>();
175 }
176 
check(ast_expr_op_lt obj)177 checked::ast_expr_op_lt check(ast_expr_op_lt obj) {
178 	return checked::manage(obj.copy()).as<checked::ast_expr_op>().as<checked::ast_expr_op_lt>();
179 }
180 
uncheck(checked::ast_expr_op_lt obj)181 ast_expr_op_lt uncheck(checked::ast_expr_op_lt obj) {
182 	return manage(obj.copy()).as<ast_expr_op>().as<ast_expr_op_lt>();
183 }
184 
check(ast_expr_op_max obj)185 checked::ast_expr_op_max check(ast_expr_op_max obj) {
186 	return checked::manage(obj.copy()).as<checked::ast_expr_op>().as<checked::ast_expr_op_max>();
187 }
188 
uncheck(checked::ast_expr_op_max obj)189 ast_expr_op_max uncheck(checked::ast_expr_op_max obj) {
190 	return manage(obj.copy()).as<ast_expr_op>().as<ast_expr_op_max>();
191 }
192 
check(ast_expr_op_member obj)193 checked::ast_expr_op_member check(ast_expr_op_member obj) {
194 	return checked::manage(obj.copy()).as<checked::ast_expr_op>().as<checked::ast_expr_op_member>();
195 }
196 
uncheck(checked::ast_expr_op_member obj)197 ast_expr_op_member uncheck(checked::ast_expr_op_member obj) {
198 	return manage(obj.copy()).as<ast_expr_op>().as<ast_expr_op_member>();
199 }
200 
check(ast_expr_op_min obj)201 checked::ast_expr_op_min check(ast_expr_op_min obj) {
202 	return checked::manage(obj.copy()).as<checked::ast_expr_op>().as<checked::ast_expr_op_min>();
203 }
204 
uncheck(checked::ast_expr_op_min obj)205 ast_expr_op_min uncheck(checked::ast_expr_op_min obj) {
206 	return manage(obj.copy()).as<ast_expr_op>().as<ast_expr_op_min>();
207 }
208 
check(ast_expr_op_minus obj)209 checked::ast_expr_op_minus check(ast_expr_op_minus obj) {
210 	return checked::manage(obj.copy()).as<checked::ast_expr_op>().as<checked::ast_expr_op_minus>();
211 }
212 
uncheck(checked::ast_expr_op_minus obj)213 ast_expr_op_minus uncheck(checked::ast_expr_op_minus obj) {
214 	return manage(obj.copy()).as<ast_expr_op>().as<ast_expr_op_minus>();
215 }
216 
check(ast_expr_op_mul obj)217 checked::ast_expr_op_mul check(ast_expr_op_mul obj) {
218 	return checked::manage(obj.copy()).as<checked::ast_expr_op>().as<checked::ast_expr_op_mul>();
219 }
220 
uncheck(checked::ast_expr_op_mul obj)221 ast_expr_op_mul uncheck(checked::ast_expr_op_mul obj) {
222 	return manage(obj.copy()).as<ast_expr_op>().as<ast_expr_op_mul>();
223 }
224 
check(ast_expr_op_or obj)225 checked::ast_expr_op_or check(ast_expr_op_or obj) {
226 	return checked::manage(obj.copy()).as<checked::ast_expr_op>().as<checked::ast_expr_op_or>();
227 }
228 
uncheck(checked::ast_expr_op_or obj)229 ast_expr_op_or uncheck(checked::ast_expr_op_or obj) {
230 	return manage(obj.copy()).as<ast_expr_op>().as<ast_expr_op_or>();
231 }
232 
check(ast_expr_op_or_else obj)233 checked::ast_expr_op_or_else check(ast_expr_op_or_else obj) {
234 	return checked::manage(obj.copy()).as<checked::ast_expr_op>().as<checked::ast_expr_op_or_else>();
235 }
236 
uncheck(checked::ast_expr_op_or_else obj)237 ast_expr_op_or_else uncheck(checked::ast_expr_op_or_else obj) {
238 	return manage(obj.copy()).as<ast_expr_op>().as<ast_expr_op_or_else>();
239 }
240 
check(ast_expr_op_pdiv_q obj)241 checked::ast_expr_op_pdiv_q check(ast_expr_op_pdiv_q obj) {
242 	return checked::manage(obj.copy()).as<checked::ast_expr_op>().as<checked::ast_expr_op_pdiv_q>();
243 }
244 
uncheck(checked::ast_expr_op_pdiv_q obj)245 ast_expr_op_pdiv_q uncheck(checked::ast_expr_op_pdiv_q obj) {
246 	return manage(obj.copy()).as<ast_expr_op>().as<ast_expr_op_pdiv_q>();
247 }
248 
check(ast_expr_op_pdiv_r obj)249 checked::ast_expr_op_pdiv_r check(ast_expr_op_pdiv_r obj) {
250 	return checked::manage(obj.copy()).as<checked::ast_expr_op>().as<checked::ast_expr_op_pdiv_r>();
251 }
252 
uncheck(checked::ast_expr_op_pdiv_r obj)253 ast_expr_op_pdiv_r uncheck(checked::ast_expr_op_pdiv_r obj) {
254 	return manage(obj.copy()).as<ast_expr_op>().as<ast_expr_op_pdiv_r>();
255 }
256 
check(ast_expr_op_select obj)257 checked::ast_expr_op_select check(ast_expr_op_select obj) {
258 	return checked::manage(obj.copy()).as<checked::ast_expr_op>().as<checked::ast_expr_op_select>();
259 }
260 
uncheck(checked::ast_expr_op_select obj)261 ast_expr_op_select uncheck(checked::ast_expr_op_select obj) {
262 	return manage(obj.copy()).as<ast_expr_op>().as<ast_expr_op_select>();
263 }
264 
check(ast_expr_op_sub obj)265 checked::ast_expr_op_sub check(ast_expr_op_sub obj) {
266 	return checked::manage(obj.copy()).as<checked::ast_expr_op>().as<checked::ast_expr_op_sub>();
267 }
268 
uncheck(checked::ast_expr_op_sub obj)269 ast_expr_op_sub uncheck(checked::ast_expr_op_sub obj) {
270 	return manage(obj.copy()).as<ast_expr_op>().as<ast_expr_op_sub>();
271 }
272 
check(ast_expr_op_zdiv_r obj)273 checked::ast_expr_op_zdiv_r check(ast_expr_op_zdiv_r obj) {
274 	return checked::manage(obj.copy()).as<checked::ast_expr_op>().as<checked::ast_expr_op_zdiv_r>();
275 }
276 
uncheck(checked::ast_expr_op_zdiv_r obj)277 ast_expr_op_zdiv_r uncheck(checked::ast_expr_op_zdiv_r obj) {
278 	return manage(obj.copy()).as<ast_expr_op>().as<ast_expr_op_zdiv_r>();
279 }
280 
check(ast_node obj)281 checked::ast_node check(ast_node obj) {
282 	return checked::manage(obj.copy());
283 }
284 
uncheck(checked::ast_node obj)285 ast_node uncheck(checked::ast_node obj) {
286 	return manage(obj.copy());
287 }
288 
check(ast_node_block obj)289 checked::ast_node_block check(ast_node_block obj) {
290 	return checked::manage(obj.copy()).as<checked::ast_node_block>();
291 }
292 
uncheck(checked::ast_node_block obj)293 ast_node_block uncheck(checked::ast_node_block obj) {
294 	return manage(obj.copy()).as<ast_node_block>();
295 }
296 
check(ast_node_for obj)297 checked::ast_node_for check(ast_node_for obj) {
298 	return checked::manage(obj.copy()).as<checked::ast_node_for>();
299 }
300 
uncheck(checked::ast_node_for obj)301 ast_node_for uncheck(checked::ast_node_for obj) {
302 	return manage(obj.copy()).as<ast_node_for>();
303 }
304 
check(ast_node_if obj)305 checked::ast_node_if check(ast_node_if obj) {
306 	return checked::manage(obj.copy()).as<checked::ast_node_if>();
307 }
308 
uncheck(checked::ast_node_if obj)309 ast_node_if uncheck(checked::ast_node_if obj) {
310 	return manage(obj.copy()).as<ast_node_if>();
311 }
312 
check(ast_node_list obj)313 checked::ast_node_list check(ast_node_list obj) {
314 	return checked::manage(obj.copy());
315 }
316 
uncheck(checked::ast_node_list obj)317 ast_node_list uncheck(checked::ast_node_list obj) {
318 	return manage(obj.copy());
319 }
320 
check(ast_node_mark obj)321 checked::ast_node_mark check(ast_node_mark obj) {
322 	return checked::manage(obj.copy()).as<checked::ast_node_mark>();
323 }
324 
uncheck(checked::ast_node_mark obj)325 ast_node_mark uncheck(checked::ast_node_mark obj) {
326 	return manage(obj.copy()).as<ast_node_mark>();
327 }
328 
check(ast_node_user obj)329 checked::ast_node_user check(ast_node_user obj) {
330 	return checked::manage(obj.copy()).as<checked::ast_node_user>();
331 }
332 
uncheck(checked::ast_node_user obj)333 ast_node_user uncheck(checked::ast_node_user obj) {
334 	return manage(obj.copy()).as<ast_node_user>();
335 }
336 
check(basic_map obj)337 checked::basic_map check(basic_map obj) {
338 	return checked::manage(obj.copy());
339 }
340 
uncheck(checked::basic_map obj)341 basic_map uncheck(checked::basic_map obj) {
342 	return manage(obj.copy());
343 }
344 
check(basic_set obj)345 checked::basic_set check(basic_set obj) {
346 	return checked::manage(obj.copy());
347 }
348 
uncheck(checked::basic_set obj)349 basic_set uncheck(checked::basic_set obj) {
350 	return manage(obj.copy());
351 }
352 
check(fixed_box obj)353 checked::fixed_box check(fixed_box obj) {
354 	return checked::manage(obj.copy());
355 }
356 
uncheck(checked::fixed_box obj)357 fixed_box uncheck(checked::fixed_box obj) {
358 	return manage(obj.copy());
359 }
360 
check(id obj)361 checked::id check(id obj) {
362 	return checked::manage(obj.copy());
363 }
364 
uncheck(checked::id obj)365 id uncheck(checked::id obj) {
366 	return manage(obj.copy());
367 }
368 
check(id_list obj)369 checked::id_list check(id_list obj) {
370 	return checked::manage(obj.copy());
371 }
372 
uncheck(checked::id_list obj)373 id_list uncheck(checked::id_list obj) {
374 	return manage(obj.copy());
375 }
376 
check(map obj)377 checked::map check(map obj) {
378 	return checked::manage(obj.copy());
379 }
380 
uncheck(checked::map obj)381 map uncheck(checked::map obj) {
382 	return manage(obj.copy());
383 }
384 
check(multi_aff obj)385 checked::multi_aff check(multi_aff obj) {
386 	return checked::manage(obj.copy());
387 }
388 
uncheck(checked::multi_aff obj)389 multi_aff uncheck(checked::multi_aff obj) {
390 	return manage(obj.copy());
391 }
392 
check(multi_id obj)393 checked::multi_id check(multi_id obj) {
394 	return checked::manage(obj.copy());
395 }
396 
uncheck(checked::multi_id obj)397 multi_id uncheck(checked::multi_id obj) {
398 	return manage(obj.copy());
399 }
400 
check(multi_pw_aff obj)401 checked::multi_pw_aff check(multi_pw_aff obj) {
402 	return checked::manage(obj.copy());
403 }
404 
uncheck(checked::multi_pw_aff obj)405 multi_pw_aff uncheck(checked::multi_pw_aff obj) {
406 	return manage(obj.copy());
407 }
408 
check(multi_union_pw_aff obj)409 checked::multi_union_pw_aff check(multi_union_pw_aff obj) {
410 	return checked::manage(obj.copy());
411 }
412 
uncheck(checked::multi_union_pw_aff obj)413 multi_union_pw_aff uncheck(checked::multi_union_pw_aff obj) {
414 	return manage(obj.copy());
415 }
416 
check(multi_val obj)417 checked::multi_val check(multi_val obj) {
418 	return checked::manage(obj.copy());
419 }
420 
uncheck(checked::multi_val obj)421 multi_val uncheck(checked::multi_val obj) {
422 	return manage(obj.copy());
423 }
424 
check(point obj)425 checked::point check(point obj) {
426 	return checked::manage(obj.copy());
427 }
428 
uncheck(checked::point obj)429 point uncheck(checked::point obj) {
430 	return manage(obj.copy());
431 }
432 
check(pw_aff obj)433 checked::pw_aff check(pw_aff obj) {
434 	return checked::manage(obj.copy());
435 }
436 
uncheck(checked::pw_aff obj)437 pw_aff uncheck(checked::pw_aff obj) {
438 	return manage(obj.copy());
439 }
440 
check(pw_aff_list obj)441 checked::pw_aff_list check(pw_aff_list obj) {
442 	return checked::manage(obj.copy());
443 }
444 
uncheck(checked::pw_aff_list obj)445 pw_aff_list uncheck(checked::pw_aff_list obj) {
446 	return manage(obj.copy());
447 }
448 
check(pw_multi_aff obj)449 checked::pw_multi_aff check(pw_multi_aff obj) {
450 	return checked::manage(obj.copy());
451 }
452 
uncheck(checked::pw_multi_aff obj)453 pw_multi_aff uncheck(checked::pw_multi_aff obj) {
454 	return manage(obj.copy());
455 }
456 
check(pw_multi_aff_list obj)457 checked::pw_multi_aff_list check(pw_multi_aff_list obj) {
458 	return checked::manage(obj.copy());
459 }
460 
uncheck(checked::pw_multi_aff_list obj)461 pw_multi_aff_list uncheck(checked::pw_multi_aff_list obj) {
462 	return manage(obj.copy());
463 }
464 
check(schedule obj)465 checked::schedule check(schedule obj) {
466 	return checked::manage(obj.copy());
467 }
468 
uncheck(checked::schedule obj)469 schedule uncheck(checked::schedule obj) {
470 	return manage(obj.copy());
471 }
472 
check(schedule_constraints obj)473 checked::schedule_constraints check(schedule_constraints obj) {
474 	return checked::manage(obj.copy());
475 }
476 
uncheck(checked::schedule_constraints obj)477 schedule_constraints uncheck(checked::schedule_constraints obj) {
478 	return manage(obj.copy());
479 }
480 
check(schedule_node obj)481 checked::schedule_node check(schedule_node obj) {
482 	return checked::manage(obj.copy());
483 }
484 
uncheck(checked::schedule_node obj)485 schedule_node uncheck(checked::schedule_node obj) {
486 	return manage(obj.copy());
487 }
488 
check(schedule_node_band obj)489 checked::schedule_node_band check(schedule_node_band obj) {
490 	return checked::manage(obj.copy()).as<checked::schedule_node_band>();
491 }
492 
uncheck(checked::schedule_node_band obj)493 schedule_node_band uncheck(checked::schedule_node_band obj) {
494 	return manage(obj.copy()).as<schedule_node_band>();
495 }
496 
check(schedule_node_context obj)497 checked::schedule_node_context check(schedule_node_context obj) {
498 	return checked::manage(obj.copy()).as<checked::schedule_node_context>();
499 }
500 
uncheck(checked::schedule_node_context obj)501 schedule_node_context uncheck(checked::schedule_node_context obj) {
502 	return manage(obj.copy()).as<schedule_node_context>();
503 }
504 
check(schedule_node_domain obj)505 checked::schedule_node_domain check(schedule_node_domain obj) {
506 	return checked::manage(obj.copy()).as<checked::schedule_node_domain>();
507 }
508 
uncheck(checked::schedule_node_domain obj)509 schedule_node_domain uncheck(checked::schedule_node_domain obj) {
510 	return manage(obj.copy()).as<schedule_node_domain>();
511 }
512 
check(schedule_node_expansion obj)513 checked::schedule_node_expansion check(schedule_node_expansion obj) {
514 	return checked::manage(obj.copy()).as<checked::schedule_node_expansion>();
515 }
516 
uncheck(checked::schedule_node_expansion obj)517 schedule_node_expansion uncheck(checked::schedule_node_expansion obj) {
518 	return manage(obj.copy()).as<schedule_node_expansion>();
519 }
520 
check(schedule_node_extension obj)521 checked::schedule_node_extension check(schedule_node_extension obj) {
522 	return checked::manage(obj.copy()).as<checked::schedule_node_extension>();
523 }
524 
uncheck(checked::schedule_node_extension obj)525 schedule_node_extension uncheck(checked::schedule_node_extension obj) {
526 	return manage(obj.copy()).as<schedule_node_extension>();
527 }
528 
check(schedule_node_filter obj)529 checked::schedule_node_filter check(schedule_node_filter obj) {
530 	return checked::manage(obj.copy()).as<checked::schedule_node_filter>();
531 }
532 
uncheck(checked::schedule_node_filter obj)533 schedule_node_filter uncheck(checked::schedule_node_filter obj) {
534 	return manage(obj.copy()).as<schedule_node_filter>();
535 }
536 
check(schedule_node_guard obj)537 checked::schedule_node_guard check(schedule_node_guard obj) {
538 	return checked::manage(obj.copy()).as<checked::schedule_node_guard>();
539 }
540 
uncheck(checked::schedule_node_guard obj)541 schedule_node_guard uncheck(checked::schedule_node_guard obj) {
542 	return manage(obj.copy()).as<schedule_node_guard>();
543 }
544 
check(schedule_node_leaf obj)545 checked::schedule_node_leaf check(schedule_node_leaf obj) {
546 	return checked::manage(obj.copy()).as<checked::schedule_node_leaf>();
547 }
548 
uncheck(checked::schedule_node_leaf obj)549 schedule_node_leaf uncheck(checked::schedule_node_leaf obj) {
550 	return manage(obj.copy()).as<schedule_node_leaf>();
551 }
552 
check(schedule_node_mark obj)553 checked::schedule_node_mark check(schedule_node_mark obj) {
554 	return checked::manage(obj.copy()).as<checked::schedule_node_mark>();
555 }
556 
uncheck(checked::schedule_node_mark obj)557 schedule_node_mark uncheck(checked::schedule_node_mark obj) {
558 	return manage(obj.copy()).as<schedule_node_mark>();
559 }
560 
check(schedule_node_sequence obj)561 checked::schedule_node_sequence check(schedule_node_sequence obj) {
562 	return checked::manage(obj.copy()).as<checked::schedule_node_sequence>();
563 }
564 
uncheck(checked::schedule_node_sequence obj)565 schedule_node_sequence uncheck(checked::schedule_node_sequence obj) {
566 	return manage(obj.copy()).as<schedule_node_sequence>();
567 }
568 
check(schedule_node_set obj)569 checked::schedule_node_set check(schedule_node_set obj) {
570 	return checked::manage(obj.copy()).as<checked::schedule_node_set>();
571 }
572 
uncheck(checked::schedule_node_set obj)573 schedule_node_set uncheck(checked::schedule_node_set obj) {
574 	return manage(obj.copy()).as<schedule_node_set>();
575 }
576 
check(set obj)577 checked::set check(set obj) {
578 	return checked::manage(obj.copy());
579 }
580 
uncheck(checked::set obj)581 set uncheck(checked::set obj) {
582 	return manage(obj.copy());
583 }
584 
check(space obj)585 checked::space check(space obj) {
586 	return checked::manage(obj.copy());
587 }
588 
uncheck(checked::space obj)589 space uncheck(checked::space obj) {
590 	return manage(obj.copy());
591 }
592 
check(union_access_info obj)593 checked::union_access_info check(union_access_info obj) {
594 	return checked::manage(obj.copy());
595 }
596 
uncheck(checked::union_access_info obj)597 union_access_info uncheck(checked::union_access_info obj) {
598 	return manage(obj.copy());
599 }
600 
check(union_flow obj)601 checked::union_flow check(union_flow obj) {
602 	return checked::manage(obj.copy());
603 }
604 
uncheck(checked::union_flow obj)605 union_flow uncheck(checked::union_flow obj) {
606 	return manage(obj.copy());
607 }
608 
check(union_map obj)609 checked::union_map check(union_map obj) {
610 	return checked::manage(obj.copy());
611 }
612 
uncheck(checked::union_map obj)613 union_map uncheck(checked::union_map obj) {
614 	return manage(obj.copy());
615 }
616 
check(union_pw_aff obj)617 checked::union_pw_aff check(union_pw_aff obj) {
618 	return checked::manage(obj.copy());
619 }
620 
uncheck(checked::union_pw_aff obj)621 union_pw_aff uncheck(checked::union_pw_aff obj) {
622 	return manage(obj.copy());
623 }
624 
check(union_pw_aff_list obj)625 checked::union_pw_aff_list check(union_pw_aff_list obj) {
626 	return checked::manage(obj.copy());
627 }
628 
uncheck(checked::union_pw_aff_list obj)629 union_pw_aff_list uncheck(checked::union_pw_aff_list obj) {
630 	return manage(obj.copy());
631 }
632 
check(union_pw_multi_aff obj)633 checked::union_pw_multi_aff check(union_pw_multi_aff obj) {
634 	return checked::manage(obj.copy());
635 }
636 
uncheck(checked::union_pw_multi_aff obj)637 union_pw_multi_aff uncheck(checked::union_pw_multi_aff obj) {
638 	return manage(obj.copy());
639 }
640 
check(union_set obj)641 checked::union_set check(union_set obj) {
642 	return checked::manage(obj.copy());
643 }
644 
uncheck(checked::union_set obj)645 union_set uncheck(checked::union_set obj) {
646 	return manage(obj.copy());
647 }
648 
check(union_set_list obj)649 checked::union_set_list check(union_set_list obj) {
650 	return checked::manage(obj.copy());
651 }
652 
uncheck(checked::union_set_list obj)653 union_set_list uncheck(checked::union_set_list obj) {
654 	return manage(obj.copy());
655 }
656 
check(val obj)657 checked::val check(val obj) {
658 	return checked::manage(obj.copy());
659 }
660 
uncheck(checked::val obj)661 val uncheck(checked::val obj) {
662 	return manage(obj.copy());
663 }
664 
check(val_list obj)665 checked::val_list check(val_list obj) {
666 	return checked::manage(obj.copy());
667 }
668 
uncheck(checked::val_list obj)669 val_list uncheck(checked::val_list obj) {
670 	return manage(obj.copy());
671 }
672 
673 } // namespace isl
674 
675 #endif /* ISL_CPP_CHECKED_CONVERSION */
676