/* * Copyright 2013 Ecole Normale Superieure * * Use of this software is governed by the MIT license * * Written by Sven Verdoolaege, * Ecole Normale Superieure, 45 rue d'Ulm, 75230 Paris, France */ /* Apply "fn" to each of the elements of "multi" with as second argument "v". */ static __isl_give MULTI(BASE) *FN(MULTI(BASE),fn_val)( __isl_take MULTI(BASE) *multi, __isl_give EL *(*fn)(__isl_take EL *el, __isl_take isl_val *v), __isl_take isl_val *v) { … } #undef TYPE #define TYPE … #include "isl_type_check_match_range_multi_val.c" /* Elementwise apply "fn" to "multi" and "mv". */ static __isl_give MULTI(BASE) *FN(MULTI(BASE),fn_multi_val)( __isl_take MULTI(BASE) *multi, __isl_give EL *(*fn)(__isl_take EL *el, __isl_take isl_val *v), __isl_take isl_multi_val *mv) { … }