|
sparrow 2.4.0
C++20 idiomatic APIs for the Apache Arrow Columnar Format
|
#include <non_owning_dynamic_bitset.hpp>
Public Types | |
| using | base_type = dynamic_bitset_base<buffer<T>*, NCP> |
| using | storage_type = typename base_type::storage_type |
| using | block_type = typename base_type::block_type |
| using | value_type = typename base_type::value_type |
| using | size_type = typename base_type::size_type |
| Public Types inherited from sparrow::dynamic_bitset_base< buffer< T > *, tracking_null_count<> > | |
| using | self_type |
| This class type. | |
| using | null_count_policy_type |
| Null count tracking policy type. | |
| using | storage_type |
| Underlying storage container type. | |
| using | storage_type_without_cvrefpointer |
| Storage type without CV/ref/pointer qualifiers. | |
| using | block_type |
| Type of each storage block (integral type). | |
| using | value_type |
| Type of individual bit values. | |
| using | reference |
| Mutable reference to a bit. | |
| using | const_reference |
| Immutable reference to a bit (plain bool). | |
| using | size_type |
| Type for sizes and indices. | |
| using | difference_type |
| Type for iterator differences. | |
| using | iterator |
| Mutable iterator type. | |
| using | const_iterator |
| Immutable iterator type. | |
Public Member Functions | |
| constexpr | non_owning_dynamic_bitset (buffer< T > *buffer, size_type n) |
| constexpr | non_owning_dynamic_bitset (buffer< T > *buffer, size_type n, size_type offset) |
| constexpr | non_owning_dynamic_bitset (buffer< T > *buffer, size_type n, size_type offset, size_type null_count) |
| constexpr | ~non_owning_dynamic_bitset ()=default |
| constexpr | non_owning_dynamic_bitset (const non_owning_dynamic_bitset &)=default |
| constexpr | non_owning_dynamic_bitset (non_owning_dynamic_bitset &&) noexcept=default |
| constexpr non_owning_dynamic_bitset & | operator= (const non_owning_dynamic_bitset &)=default |
| constexpr non_owning_dynamic_bitset & | operator= (non_owning_dynamic_bitset &&) noexcept=default |
| constexpr void | clear () noexcept |
| Removes all bits from the bitset. | |
| constexpr iterator | emplace (const_iterator pos, value_type value) |
| Constructs a bit in-place at the specified position. | |
| constexpr iterator | erase (const_iterator pos) |
| Removes a single bit at the specified position. | |
| constexpr iterator | erase (const_iterator first, const_iterator last) |
| Removes bits in the specified range. | |
| constexpr iterator | insert (const_iterator pos, value_type value) |
| Inserts a single bit at the specified position. | |
| constexpr iterator | insert (const_iterator pos, size_type count, value_type value) |
| Inserts multiple bits with the same value at the specified position. | |
| constexpr iterator | insert (const_iterator pos, InputIt first, InputIt last) |
| Inserts bits from an iterator range at the specified position. | |
| constexpr iterator | insert (const_iterator pos, std::initializer_list< value_type > ilist) |
| Inserts bits from an initializer list at the specified position. | |
| constexpr void | pop_back () |
| Removes the last bit from the bitset. | |
| constexpr void | push_back (value_type value) |
| Adds a bit to the end of the bitset. | |
| constexpr void | resize (size_type n, value_type b=false) |
| Resizes the bitset to contain n bits. | |
| Public Member Functions inherited from sparrow::dynamic_bitset_base< buffer< T > *, tracking_null_count<> > | |
| constexpr size_type | size () const noexcept |
| Returns the number of bits in the bitset. | |
| constexpr void | set_size (size_type new_size) noexcept |
| constexpr size_type | offset () const noexcept |
| Returns the bit offset within the buffer. | |
| constexpr void | set_offset (size_type offset) noexcept |
| Sets the bit offset within the buffer. | |
| constexpr bool | empty () const noexcept |
| Checks if the bitset contains no bits. | |
| constexpr size_type | null_count () const noexcept |
| Returns the number of bits set to false (null/invalid). | |
| constexpr bool | test (size_type pos) const |
| Tests the value of a bit at the specified position. | |
| constexpr void | set (size_type pos, value_type value) |
| Sets the value of a bit at the specified position. | |
| constexpr const_reference | at (size_type pos) const |
| Accesses a bit with bounds checking. | |
| constexpr reference | operator[] (size_type i) |
| Accesses a bit without bounds checking. | |
| constexpr block_type * | data () noexcept |
| Returns a pointer to the underlying block storage. | |
| constexpr size_type | block_count () const noexcept |
| Returns the number of storage blocks. | |
| constexpr void | swap (self_type &rhs) noexcept |
| Swaps the contents with another bitset. | |
| constexpr iterator | begin () |
| Returns a mutable iterator to the first bit. | |
| constexpr iterator | end () |
| Returns a mutable iterator past the last bit. | |
| constexpr const_iterator | cbegin () const |
| Returns an immutable iterator to the first bit. | |
| constexpr const_iterator | cend () const |
| Returns an immutable iterator past the last bit. | |
| constexpr reference | front () |
| Accesses the first bit. | |
| constexpr reference | back () |
| Accesses the last bit. | |
| constexpr const storage_type_without_cvrefpointer & | buffer () const noexcept |
| Returns an immutable reference to the underlying buffer. | |
| storage_type | extract_storage () noexcept |
| Extracts the underlying storage (move operation). | |
Additional Inherited Members | |
| Static Public Member Functions inherited from sparrow::dynamic_bitset_base< buffer< T > *, tracking_null_count<> > | |
| static constexpr size_type | compute_block_count (size_type bits_count) noexcept |
| Computes the number of blocks needed to store the specified number of bits. | |
| Protected Member Functions inherited from sparrow::dynamic_bitset_base< buffer< T > *, tracking_null_count<> > | |
| constexpr | dynamic_bitset_base (storage_type buffer, size_type size) |
| Constructs a bitset with the given storage and size. | |
| constexpr | ~dynamic_bitset_base ()=default |
| constexpr dynamic_bitset_base & | operator= (const dynamic_bitset_base &)=default |
| constexpr void | resize (size_type n, value_type b=false) |
| Resizes the bitset to contain n bits. | |
| constexpr void | clear () noexcept |
| Removes all bits from the bitset. | |
| constexpr iterator | insert (const_iterator pos, value_type value) |
| Inserts a single bit at the specified position. | |
| constexpr iterator | emplace (const_iterator pos, value_type value) |
| Constructs a bit in-place at the specified position. | |
| constexpr iterator | erase (const_iterator pos) |
| Removes a single bit at the specified position. | |
| constexpr void | push_back (value_type value) |
| Adds a bit to the end of the bitset. | |
| constexpr void | pop_back () |
| Removes the last bit from the bitset. | |
| constexpr void | zero_unused_bits () |
| Clears any unused bits in the last storage block. | |
Definition at line 23 of file non_owning_dynamic_bitset.hpp.
| using sparrow::non_owning_dynamic_bitset< T, NCP >::base_type = dynamic_bitset_base<buffer<T>*, NCP> |
Definition at line 27 of file non_owning_dynamic_bitset.hpp.
| using sparrow::non_owning_dynamic_bitset< T, NCP >::block_type = typename base_type::block_type |
Definition at line 29 of file non_owning_dynamic_bitset.hpp.
| using sparrow::non_owning_dynamic_bitset< T, NCP >::size_type = typename base_type::size_type |
Definition at line 31 of file non_owning_dynamic_bitset.hpp.
| using sparrow::non_owning_dynamic_bitset< T, NCP >::storage_type = typename base_type::storage_type |
Definition at line 28 of file non_owning_dynamic_bitset.hpp.
| using sparrow::non_owning_dynamic_bitset< T, NCP >::value_type = typename base_type::value_type |
Definition at line 30 of file non_owning_dynamic_bitset.hpp.
|
explicitconstexpr |
Definition at line 56 of file non_owning_dynamic_bitset.hpp.
|
explicitconstexpr |
Definition at line 63 of file non_owning_dynamic_bitset.hpp.
|
explicitconstexpr |
Definition at line 74 of file non_owning_dynamic_bitset.hpp.
|
constexprdefault |
|
constexprdefault |
|
constexprdefaultnoexcept |
|
constexprnoexcept |
Removes all bits from the bitset.
|
constexpr |
Constructs a bit in-place at the specified position.
| pos | Iterator pointing to the insertion position |
| value | The value of the bit to emplace |
|
constexpr |
Removes bits in the specified range.
| first | Iterator pointing to the first bit to remove |
| last | Iterator pointing past the last bit to remove |
|
constexpr |
|
constexpr |
Inserts bits from an iterator range at the specified position.
| InputIt | Input iterator type |
| pos | Iterator pointing to the insertion position |
| first | Iterator pointing to the first bit to insert |
| last | Iterator pointing past the last bit to insert |
|
constexpr |
Inserts multiple bits with the same value at the specified position.
| pos | Iterator pointing to the insertion position |
| count | The number of bits to insert |
| value | The value of the bits to insert |
|
constexpr |
Inserts bits from an initializer list at the specified position.
| pos | Iterator pointing to the insertion position |
| ilist | Initializer list containing the bits to insert |
|
constexpr |
Inserts a single bit at the specified position.
| pos | Iterator pointing to the insertion position |
| value | The value of the bit to insert |
|
constexprdefault |
|
constexprdefaultnoexcept |
|
constexpr |
Removes the last bit from the bitset.
|
constexpr |
|
constexpr |
Resizes the bitset to contain n bits.
| n | The new size in bits |
| b | The value to initialize new bits with (default false) |