<xstd/bits/ext/boost/bit_small_set.hpp>¶
basic_bit_small_set, bit_small_set¶
template<class Key, unsigned_integer Block, size_t N, bit_index_mapping<Key> KeyMapping = bit_key_mapping<Key>,
see below Compare = less<Key>, class Alloc = boost::container::new_allocator<Block>>
requires see below
using basic_bit_small_set = basic_bit_set<Key, boost::container::small_vector<Block, see below, Alloc>,
dynamic_extent, KeyMapping, Compare>;
template<size_t N>
using bit_small_set = basic_bit_small_set<size_t, size_t, N>;
A basic_bit_set over the small storage, with:
bit_small_set<N>holds its keys insize_tblocks, theceil(N / D)blocks that holdNbits inline.allocator_typeand the allocator arguments are as forbasic_bit_small_vector; the constructor from an allocator isnoexcept, and thefrom_blocksconstructornoexceptwhere the block container's move is.- A key past the inline blocks moves them to the heap, keeping the keys and their count.
- The header also brings
std::hashand Boost'sis_rangeandis_tuple_likefor it, whichbasic_bit_set's headers declare.