CppAD: A C++ Algorithmic Differentiation Package  20171217

Vector of sets of positive integers, each set stored as a size_t vector. More...

## Public Types

typedef
sparse_sizevec_const_iterator
const_iterator
declare a const iterator More...

## Public Member Functions

void add_element (size_t i, size_t element)
Add one element to a set. More...

void assignment (size_t this_target, size_t other_source, const sparse_sizevec &other)
Assign one set equal to another set. More...

void binary_intersection (size_t this_target, size_t this_left, size_t other_right, const sparse_sizevec &other)
Assign a set equal to the intersection of two other sets. More...

void binary_union (size_t this_target, size_t this_left, size_t other_right, const sparse_sizevec &other)
Assign a set equal to the union of two other sets. More...

void clear (size_t target)
Assign the empty set to one of the sets. More...

size_t end (void) const
Fetch end for this vector of sets object. More...

bool is_element (size_t i, size_t element) const
Check if an element is in a set. More...

size_t memory (void) const
Amount of memory used by this vector of sets. More...

size_t n_set (void) const
Fetch n_set for vector of sets object. More...

size_t number_elements (size_t i) const
Return number of elements in a set. More...

void operator= (const sparse_sizevec &other)
Assignement operator. More...

void post_element (size_t i, size_t element)
Post an element for delayed addition to a set. More...

void print (void) const
Print the vector of sets (used for debugging) More...

void process_post (size_t i)
process post entries for a specific set. More...

void resize (size_t n_set, size_t end)
Start a new vector of sets. More...

sparse_sizevec (void)
Default constructor (no sets) More...

sparse_sizevec (const sparse_sizevec &v)
Using copy constructor is a programing (not user) error. More...

~sparse_sizevec (void)
Destructor. More...

## Private Member Functions

void binary_union (size_t target, size_t left, const pod_vector< size_t > &right)
Assign a set equal to the union of a set and a vector;. More...

void check_data_structure (void)
Checks data structure (effectively const, but modifies and restores values) More...

void collect_garbage (void)
Does garbage collection when indicated. More...

size_t drop (size_t i)
drop a set. More...

size_t is_subset (size_t one_this, size_t two_other, const sparse_sizevec &other) const
Check if one of two sets is a subset of the other set. More...

size_t reference_count (size_t i) const
Counts references to a set. More...

## Private Attributes

pod_vector< size_t > data_
The data for all the singly linked lists. More...

size_t data_not_used_
number of elements in data_ that have been allocated and are no longer being used. More...

size_t end_
Possible elements in each set are 0, 1, ..., end_ - 1;. More...

pod_vector< size_t > post_
Vectors of elements that have not yet been added to corresponding sets. More...

pod_vector< size_t > start_
Starting point for i-th set is start_[i]. More...

## Friends

class sparse_sizevec_const_iterator

## Detailed Description

Vector of sets of positive integers, each set stored as a size_t vector.

All the public members for this class are also in the sparse_pack and sparse_list classes. This defines the CppAD vector_of_sets concept.

Definition at line 34 of file sparse_sizevec.hpp.

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