1/* 2 * Copyright 2011 Sven Verdoolaege 3 * 4 * Use of this software is governed by the MIT license 5 * 6 * Written by Sven Verdoolaege. 7 */ 8 9#undef TYPE 10#define TYPE CAT(isl_pw_,BASE) 11 12/* Read an object of type "TYPE" from "s" with parameter domain "dom". 13 * "v" contains a description of the identifiers parsed so far. 14 */ 15static __isl_give TYPE *FN(isl_stream_read_with_params_pw,BASE)( 16 __isl_keep isl_stream *s, __isl_keep isl_set *dom, struct vars *v) 17{ 18 TYPE *obj; 19 20 obj = FN(read_conditional,BASE)(s, isl_set_copy(dom), v); 21 22 while (isl_stream_eat_if_available(s, ';')) { 23 TYPE *obj2; 24 25 obj2 = FN(read_conditional,BASE)(s, isl_set_copy(dom), v); 26 obj = FN(TYPE,union_add)(obj, obj2); 27 } 28 29 return obj; 30} 31