Types and functions for iterating on the disjuncts of a ppl_Pointset_Powerset_C_Polyhedron_tag. More...
#include <ppl_c.h>
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. | |
| 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. | |
Types and functions for iterating on the disjuncts of a ppl_Pointset_Powerset_C_Polyhedron_tag.
| int ppl_delete_Pointset_Powerset_C_Polyhedron_iterator | ( | ppl_const_Pointset_Powerset_C_Polyhedron_iterator_t | it | ) | [related] |
Invalidates the handle it: this makes sure the corresponding resources will eventually be released.
| int ppl_new_Pointset_Powerset_C_Polyhedron_iterator | ( | ppl_Pointset_Powerset_C_Polyhedron_iterator_t * | pit | ) | [related] |
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 | |||
| ) | [related] |
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 | |||
| ) | [related] |
Assigns to psit an iterator "pointing" to the beginning of the sequence of disjuncts of ps.
| int ppl_Pointset_Powerset_C_Polyhedron_iterator_decrement | ( | ppl_Pointset_Powerset_C_Polyhedron_iterator_t | it | ) | [related] |
Decrements it so that it "points" to the previous disjunct.
| 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.
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.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.| int ppl_Pointset_Powerset_C_Polyhedron_iterator_end | ( | ppl_Pointset_Powerset_C_Polyhedron_t | ps, | |
| ppl_Pointset_Powerset_C_Polyhedron_iterator_t | psit | |||
| ) | [related] |
Assigns to psit an iterator "pointing" past the end of the sequence of disjuncts of ps.
| 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 | |||
| ) | [related] |
Returns a positive integer if the iterators corresponding to x and y are equal; returns 0 if they are different.
| int ppl_Pointset_Powerset_C_Polyhedron_iterator_increment | ( | ppl_Pointset_Powerset_C_Polyhedron_iterator_t | it | ) | [related] |
Increments it so that it "points" to the next disjunct.
1.6.3