PPL C Language Interface  1.2
ppl_Pointset_Powerset_C_Polyhedron_iterator_tag Interface Reference

Types and functions for iterating on the disjuncts of a ppl_Pointset_Powerset_C_Polyhedron_tag. More...

Related Functions

(Note that these are not member functions.)

Construction, Initialization and Destruction
int ppl_new_Pointset_Powerset_C_Polyhedron_iterator (ppl_Pointset_Powerset_C_Polyhedron_iterator_t *pit)
 Builds a new `iterator' and writes a handle to it at address pit.
 
int ppl_new_Pointset_Powerset_C_Polyhedron_iterator_from_iterator (ppl_Pointset_Powerset_C_Polyhedron_iterator_t *pit, ppl_const_Pointset_Powerset_C_Polyhedron_iterator_t y)
 Builds a copy of y and writes a handle to it at address pit.
 
int ppl_Pointset_Powerset_C_Polyhedron_iterator_begin (ppl_Pointset_Powerset_C_Polyhedron_t ps, ppl_Pointset_Powerset_C_Polyhedron_iterator_t psit)
 Assigns to psit an iterator "pointing" to the beginning of the sequence of disjuncts of ps.
 
int ppl_Pointset_Powerset_C_Polyhedron_iterator_end (ppl_Pointset_Powerset_C_Polyhedron_t ps, ppl_Pointset_Powerset_C_Polyhedron_iterator_t psit)
 Assigns to psit an iterator "pointing" past the end of the sequence of disjuncts of ps.
 
int ppl_delete_Pointset_Powerset_C_Polyhedron_iterator (ppl_const_Pointset_Powerset_C_Polyhedron_iterator_t it)
 Invalidates the handle it: this makes sure the corresponding resources will eventually be released.
 
Dereferencing, Increment, Decrement and Equality Testing
int ppl_Pointset_Powerset_C_Polyhedron_iterator_dereference (ppl_const_Pointset_Powerset_C_Polyhedron_iterator_t it, ppl_const_Polyhedron_t *d)
 Dereferences it writing a const handle to the resulting disjunct at address d. More...
 
int ppl_Pointset_Powerset_C_Polyhedron_iterator_increment (ppl_Pointset_Powerset_C_Polyhedron_iterator_t it)
 Increments it so that it "points" to the next disjunct.
 
int ppl_Pointset_Powerset_C_Polyhedron_iterator_decrement (ppl_Pointset_Powerset_C_Polyhedron_iterator_t it)
 Decrements it so that it "points" to the previous disjunct.
 
int ppl_Pointset_Powerset_C_Polyhedron_iterator_equal_test (ppl_const_Pointset_Powerset_C_Polyhedron_iterator_t x, ppl_const_Pointset_Powerset_C_Polyhedron_iterator_t y)
 Returns a positive integer if the iterators corresponding to x and y are equal; returns 0 if they are different.
 

Detailed Description

Types and functions for iterating on the disjuncts of a ppl_Pointset_Powerset_C_Polyhedron_tag.

Friends And Related Function Documentation

int ppl_Pointset_Powerset_C_Polyhedron_iterator_dereference ( ppl_const_Pointset_Powerset_C_Polyhedron_iterator_t  it,
ppl_const_Polyhedron_t d 
)
related

Dereferences it writing a const handle to the resulting disjunct at address d.

Note
Even though it is an non-const iterator, dereferencing it results in a handle to a const disjunct. This is because mutable iterators are meant to allow for the modification of the sequence of disjuncts (e.g., by dropping elements), while preventing direct modifications of the disjuncts they point to.
Warning
On exit, the disjunct d is still owned by the powerset object: any function call on the owning powerset object may invalidate it. Moreover, d should not be deleted directly: its resources will be released when deleting the owning powerset.

The documentation for this interface was generated from the following file: