|
SDSL 3.0.1
Succinct Data Structure Library
|
A generic immutable space-saving vector class for unsigned integers. More...
#include <dac_vector.hpp>
Public Types | |
| typedef int_vector ::value_type | value_type |
| typedef random_access_const_iterator< dac_vector > | const_iterator |
| typedef const_iterator | iterator |
| typedef const value_type | const_reference |
| typedef const_reference | reference |
| typedef const_reference * | pointer |
| typedef const pointer | const_pointer |
| typedef int_vector ::size_type | size_type |
| typedef ptrdiff_t | difference_type |
| typedef t_rank | rank_support_type |
| typedef iv_tag | index_category |
Public Member Functions | |
| dac_vector ()=default | |
| dac_vector (const dac_vector &v) | |
| dac_vector (dac_vector &&v) | |
| dac_vector & | operator= (const dac_vector &v) |
| dac_vector & | operator= (dac_vector &&v) |
| template<class Container > | |
| dac_vector (const Container &c) | |
| Constructor for a Container of unsigned integers. | |
| template<uint8_t int_width> | |
| dac_vector (int_vector_buffer< int_width > &v_buf) | |
| Constructor for an int_vector_buffer of unsigned integers. | |
| size_type | size () const |
| The number of elements in the dac_vector. | |
| bool | empty () const |
| Returns if the dac_vector is empty. | |
| const const_iterator | begin () const |
| Iterator that points to the first element of the dac_vector. | |
| const const_iterator | end () const |
| Iterator that points to the position after the last element of the dac_vector. | |
| value_type | operator[] (size_type i) const |
| []-operator | |
| size_type | serialize (std::ostream &out, structure_tree_node *v=nullptr, std::string name="") const |
| Serializes the dac_vector to a stream. | |
| void | load (std::istream &in) |
| Load from a stream. | |
| template<typename archive_t > | |
| void | CEREAL_SAVE_FUNCTION_NAME (archive_t &ar) const |
| Serialise (save) via cereal. | |
| template<typename archive_t > | |
| void | CEREAL_LOAD_FUNCTION_NAME (archive_t &ar) |
| bool | operator== (const dac_vector &v) const |
| bool | operator!= (const dac_vector &v) const |
Static Public Member Functions | |
| static size_type | max_size () |
| Return the largest size that this container can ever have. | |
A generic immutable space-saving vector class for unsigned integers.
The values of a dac_vector are immutable after the constructor call. The ,,escaping'' technique is used to encode values. This is defined as follows (see [1]): A k-bit integer is split into 



| t_b | Split block size. |
| t_rank | Rank structure to navigate between the different levels. |
Definition at line 45 of file dac_vector.hpp.
| typedef random_access_const_iterator<dac_vector> sdsl::dac_vector< t_b, t_rank >::const_iterator |
Definition at line 53 of file dac_vector.hpp.
| typedef const pointer sdsl::dac_vector< t_b, t_rank >::const_pointer |
Definition at line 58 of file dac_vector.hpp.
| typedef const value_type sdsl::dac_vector< t_b, t_rank >::const_reference |
Definition at line 55 of file dac_vector.hpp.
| typedef ptrdiff_t sdsl::dac_vector< t_b, t_rank >::difference_type |
Definition at line 60 of file dac_vector.hpp.
| typedef iv_tag sdsl::dac_vector< t_b, t_rank >::index_category |
Definition at line 62 of file dac_vector.hpp.
| typedef const_iterator sdsl::dac_vector< t_b, t_rank >::iterator |
Definition at line 54 of file dac_vector.hpp.
| typedef const_reference* sdsl::dac_vector< t_b, t_rank >::pointer |
Definition at line 57 of file dac_vector.hpp.
| typedef t_rank sdsl::dac_vector< t_b, t_rank >::rank_support_type |
Definition at line 61 of file dac_vector.hpp.
| typedef const_reference sdsl::dac_vector< t_b, t_rank >::reference |
Definition at line 56 of file dac_vector.hpp.
| typedef int_vector ::size_type sdsl::dac_vector< t_b, t_rank >::size_type |
Definition at line 59 of file dac_vector.hpp.
| typedef int_vector ::value_type sdsl::dac_vector< t_b, t_rank >::value_type |
Definition at line 52 of file dac_vector.hpp.
|
default |
|
inline |
Definition at line 74 of file dac_vector.hpp.
|
inline |
Definition at line 84 of file dac_vector.hpp.
| sdsl::dac_vector< t_b, t_rank >::dac_vector | ( | const Container & | c | ) |
Constructor for a Container of unsigned integers.
| c | A container of unsigned integers. |
Definition at line 184 of file dac_vector.hpp.
| sdsl::dac_vector< t_b, t_rank >::dac_vector | ( | int_vector_buffer< int_width > & | v_buf | ) |
Constructor for an int_vector_buffer of unsigned integers.
Definition at line 266 of file dac_vector.hpp.
|
inline |
Iterator that points to the first element of the dac_vector.
Definition at line 129 of file dac_vector.hpp.
| void sdsl::dac_vector< t_b, t_rank >::CEREAL_LOAD_FUNCTION_NAME | ( | archive_t & | ar | ) |
Definition at line 375 of file dac_vector.hpp.
| void sdsl::dac_vector< t_b, t_rank >::CEREAL_SAVE_FUNCTION_NAME | ( | archive_t & | ar | ) | const |
Serialise (save) via cereal.
Definition at line 364 of file dac_vector.hpp.
|
inline |
Returns if the dac_vector is empty.
Definition at line 126 of file dac_vector.hpp.
|
inline |
Iterator that points to the position after the last element of the dac_vector.
Definition at line 132 of file dac_vector.hpp.
|
inline |
Load from a stream.
Definition at line 157 of file dac_vector.hpp.
|
inlinestatic |
Return the largest size that this container can ever have.
Definition at line 123 of file dac_vector.hpp.
|
inline |
Definition at line 179 of file dac_vector.hpp.
|
inline |
Definition at line 85 of file dac_vector.hpp.
|
inline |
Definition at line 95 of file dac_vector.hpp.
|
inline |
Definition at line 173 of file dac_vector.hpp.
|
inline |
[]-operator
Definition at line 135 of file dac_vector.hpp.
| dac_vector::size_type sdsl::dac_vector< t_b, t_rank >::serialize | ( | std::ostream & | out, |
| structure_tree_node * | v = nullptr, |
||
| std::string | name = "" |
||
| ) | const |
Serializes the dac_vector to a stream.
Definition at line 347 of file dac_vector.hpp.
|
inline |
The number of elements in the dac_vector.
Definition at line 121 of file dac_vector.hpp.