- bounds = {}
- coordinates = []
- symbols = self.symbols
- if self.isbounded():
- islset = self._toislset(self.polyhedra, self.symbols)
- points = islhelper.isl_set_points(islset)
- for sym in symbols:
- for point in points:
- coordinate = libisl.isl_point_get_coordinate_val(point, libisl.isl_dim_set, symbols.index(sym))
- coordinate = islhelper.isl_val_to_int(coordinate)
- coordinates.append(coordinate)
- else:
- raise TypeError('set must be bounded')
- return coordinates
+ if not self.isbounded():
+ raise ValueError('domain must be unbounded')
+ from .polyhedra import Universe, Eq
+ islset = self._toislset(self.polyhedra, self.symbols)
+ islpoints = islhelper.isl_set_points(islset)
+ points = []
+ for islpoint in islpoints:
+ point = {}
+ for index, symbol in enumerate(self.symbols):
+ coordinate = libisl.isl_point_get_coordinate_val(islpoint,
+ libisl.isl_dim_set, index)
+ coordinate = islhelper.isl_val_to_int(coordinate)
+ point[symbol] = coordinate
+ points.append(point)
+ return points