Search Toolkit Book for bm::str_sparse_vector
succinct sparse vector for strings with compression using bit-slicing ( transposition) method More...
#include <util/bitset/bmstrsparsevec.h>
Remapping runs character usage analysis (frequency analysis) based on that implements reduction of dit-depth thus improves search performance and memory usage (both RAM and serialized).
Remapping limits farther modifications of sparse vector. (Use remapped vector as read-only).
bool is_remap () const noexcept Get character remapping status (true | false) More...succinct sparse vector for strings with compression using bit-slicing ( transposition) method
Initial string is bit-transposed into bit-slices so collection may use less memory due to prefix sum (GAP) compression in bit-slices. In addition, the container can use chracter re-mapping using char freaquencies to compute the minimal codes. Re-mapping can reduce memory footprint, get better search performance and improve storage compression.
Template parameters: CharType - type of character (char or unsigned char) (wchar not tested) BV - bit-vector for bit-slicing STR_SIZE - initial string size (can dynamically increase on usage)
Definition at line 71 of file bmstrsparsevec.h.
◆ allocation_policy_typetemplate<typename CharType , typename BV , unsigned STR_SIZE>
Definition at line 81 of file bmstrsparsevec.h.
◆ allocator_pool_typetemplate<typename CharType , typename BV , unsigned STR_SIZE>
Definition at line 83 of file bmstrsparsevec.h.
◆ allocator_typetemplate<typename CharType , typename BV , unsigned STR_SIZE>
Definition at line 80 of file bmstrsparsevec.h.
◆ bmatrix_typetemplate<typename CharType , typename BV , unsigned STR_SIZE>
Definition at line 84 of file bmstrsparsevec.h.
◆ bvector_enumerator_typetemplate<typename CharType , typename BV , unsigned STR_SIZE>
Definition at line 82 of file bmstrsparsevec.h.
◆ bvector_typetemplate<typename CharType , typename BV , unsigned STR_SIZE>
Definition at line 74 of file bmstrsparsevec.h.
◆ bvector_type_const_ptrtemplate<typename CharType , typename BV , unsigned STR_SIZE>
Definition at line 76 of file bmstrsparsevec.h.
◆ bvector_type_ptrtemplate<typename CharType , typename BV , unsigned STR_SIZE>
Definition at line 75 of file bmstrsparsevec.h.
◆ octet_freq_matrix_typetemplate<typename CharType , typename BV , unsigned STR_SIZE>
◆ parent_typetemplate<typename CharType , typename BV , unsigned STR_SIZE>
Definition at line 85 of file bmstrsparsevec.h.
◆ remap_matrix_typetemplate<typename CharType , typename BV , unsigned STR_SIZE>
Definition at line 102 of file bmstrsparsevec.h.
◆ size_typetemplate<typename CharType , typename BV , unsigned STR_SIZE>
Definition at line 79 of file bmstrsparsevec.h.
◆ slice_octet_matrix_typetemplate<typename CharType , typename BV , unsigned STR_SIZE>
◆ unsigned_value_typetemplate<typename CharType , typename BV , unsigned STR_SIZE>
Definition at line 86 of file bmstrsparsevec.h.
◆ value_typetemplate<typename CharType , typename BV , unsigned STR_SIZE>
Definition at line 77 of file bmstrsparsevec.h.
◆ value_type_prttemplate<typename CharType , typename BV , unsigned STR_SIZE>
Definition at line 78 of file bmstrsparsevec.h.
◆ insert_buf_size_etemplate<typename CharType , typename BV , unsigned STR_SIZE>
◆ octet_slicestemplate<typename CharType , typename BV , unsigned STR_SIZE>
◆ str_sparse_vector() [1/4]template<class CharType , class BV , unsigned STR_SIZE>
Sparse vector constructor.
Definition at line 1608 of file bmstrsparsevec.h.
◆ str_sparse_vector() [2/4]template<class CharType , class BV , unsigned STR_SIZE>
◆ str_sparse_vector() [3/4]template<class CharType , class BV , unsigned STR_SIZE>
◆ str_sparse_vector() [4/4]template<typename CharType , typename BV , unsigned STR_SIZE>
move-ctor
Definition at line 524 of file bmstrsparsevec.h.
References bm::str_sparse_vector< CharType, BV, STR_SIZE >::remap_flags_, bm::str_sparse_vector< CharType, BV, STR_SIZE >::remap_matrix1_, bm::str_sparse_vector< CharType, BV, STR_SIZE >::remap_matrix2_, bm::base_sparse_vector< CharType, BV, STR_SIZE >::swap(), and bm::dynamic_heap_matrix< Val, BVAlloc >::swap().
◆ assign()template<typename CharType , typename BV , unsigned STR_SIZE>
template<typename StrType >
set specified element with bounds checking and automatic resize
This is an equivalent of set() method, but templetized to be more compatible with the STL std::string and the likes
Definition at line 649 of file bmstrsparsevec.h.
References BM_ASSERT, bm::base_sparse_vector< CharType, BV, STR_SIZE >::bmatr_, bm::base_sparse_vector< CharType, BV, STR_SIZE >::clear_value_planes_from(), bm::dynamic_heap_matrix< Val, BVAlloc >::get(), bm::base_sparse_vector< CharType, BV, STR_SIZE >::get_null_bvect(), i, bm::str_sparse_vector< CharType, BV, STR_SIZE >::remap_flags_, bm::str_sparse_vector< CharType, BV, STR_SIZE >::remap_matrix2_, bm::basic_bmatrix< BV >::set_octet(), bm::str_sparse_vector< CharType, BV, STR_SIZE >::size(), bm::base_sparse_vector< CharType, BV, STR_SIZE >::size_, and str().
Referenced by bm::str_sparse_vector< CharType, BV, STR_SIZE >::push_back(), and TestStrSparseVector().
◆ begin()template<class CharType , class BV , unsigned STR_SIZE>
◆ build_octet_remap()template<class CharType , class BV , unsigned STR_SIZE>
Compute optimal remap codes
Definition at line 2204 of file bmstrsparsevec.h.
References BM_ASSERT, bm::dynamic_heap_matrix< Val, BVAlloc >::cols(), bm::find_first_nz(), bm::find_max_nz(), i, bm::dynamic_heap_matrix< Val, BVAlloc >::resize(), bm::dynamic_heap_matrix< Val, BVAlloc >::row(), bm::dynamic_heap_matrix< Val, BVAlloc >::rows(), and bm::dynamic_heap_matrix< Val, BVAlloc >::set_zero().
Referenced by bm::str_sparse_vector< CharType, BV, STR_SIZE >::remap_from_impl(), and TestStrSparseVector().
◆ calc_octet_stat()template<class CharType , class BV , unsigned STR_SIZE>
Calculate flags which octets are present on each byte-plane.
Definition at line 2174 of file bmstrsparsevec.h.
References i, bm::dynamic_heap_matrix< Val, BVAlloc >::resize(), row, bm::dynamic_heap_matrix< Val, BVAlloc >::row(), bm::dynamic_heap_matrix< Val, BVAlloc >::set_zero(), and bm::str_sparse_vector< CharType, BV, STR_SIZE >::const_iterator::valid().
Referenced by bm::str_sparse_vector< CharType, BV, STR_SIZE >::remap_from_impl(), and TestStrSparseVector().
◆ calc_stat()template<class CharType , class BV , unsigned STR_SIZE>
Calculates memory statistics.
Function fills statistics structure containing information about how this vector uses memory and estimation of max. amount of memory bvector needs to serialize itself.
Definition at line 1864 of file bmstrsparsevec.h.
References BM_ASSERT, and st().
Referenced by TestStrSparseVector().
◆ clear() [1/2]template<typename CharType , typename BV , unsigned STR_SIZE>
◆ clear() [2/2]template<typename CharType , typename BV , unsigned STR_SIZE>
◆ clear_all()template<class CharType , class BV , unsigned STR_SIZE>
resize to zero, free memory
Definition at line 2601 of file bmstrsparsevec.h.
Referenced by bm::str_sparse_vector< CharType, BV, STR_SIZE >::clear().
◆ clear_range()template<typename CharType , typename BV , unsigned STR_SIZE>
clear range (assign bit 0 for all planes)
Definition at line 841 of file bmstrsparsevec.h.
References bm::base_sparse_vector< CharType, BV, STR_SIZE >::clear_range(), and bm::str_sparse_vector< CharType, BV, STR_SIZE >::set_null().
Referenced by bm::str_sparse_vector< CharType, BV, STR_SIZE >::import(), bm::str_sparse_vector< CharType, BV, STR_SIZE >::remap_from_impl(), and TestStrSparseVector().
◆ common_prefix_length()template<class CharType , class BV , unsigned STR_SIZE>
template<bool USE_PREFIX_BUF>
Find size of common prefix between two vector elements in octets.
Definition at line 2119 of file bmstrsparsevec.h.
References BM_ASSERT, ch1, ch2, and i.
Referenced by StressTestStrSparseVector().
◆ compare() [1/2]template<class CharType , class BV , unsigned STR_SIZE>
Compare vector element with argument lexicographically.
The function does not account for NULL values, NULL element is treated as an empty string
NOTE: for a re-mapped container, input string may have no correct remapping, in this case we have an ambiguity (we know it is not equal (0) but LT or GT?). Behavior is undefined.
Definition at line 2052 of file bmstrsparsevec.h.
References BM_ASSERT, and str().
Referenced by CompareStrSparseVector(), quicksort2(), StressTestStrSparseVector(), TestStrSparseVector(), and TestStrSparseVectorSerial().
◆ compare() [2/2]template<class CharType , class BV , unsigned STR_SIZE>
Compare two vector elements.
The function does not account for NULL values, NULL element is treated as an empty string
Definition at line 2065 of file bmstrsparsevec.h.
References BM_ASSERT, i, and ncbi::grid::netcache::search::fields::size.
◆ compare_nomap()template<class CharType , class BV , unsigned STR_SIZE>
◆ compare_remap()template<class CharType , class BV , unsigned STR_SIZE>
◆ compare_str() [1/2]template<class CharType , class BV , unsigned STR_SIZE>
◆ compare_str() [2/2]template<class CharType , class BV , unsigned STR_SIZE>
◆ copy_range()template<class CharType , class BV , unsigned STR_SIZE>
copy range of values from another sparse vector
Copy [left..right] values from the source vector, clear everything outside the range.
Definition at line 2525 of file bmstrsparsevec.h.
References bm::str_sparse_vector< CharType, BV, STR_SIZE >::remap_flags_, bm::str_sparse_vector< CharType, BV, STR_SIZE >::remap_matrix1_, bm::str_sparse_vector< CharType, BV, STR_SIZE >::remap_matrix2_, pythonpp::resize(), bm::str_sparse_vector< CharType, BV, STR_SIZE >::size(), and bm::xor_swap().
Referenced by TestStrSparseVector(), and TestStrSparseVectorSerial().
◆ decode()template<typename CharType , typename BV , unsigned STR_SIZE>
template<typename CharMatrix >
◆ decode_substr()template<typename CharType , typename BV , unsigned STR_SIZE>
template<typename CharMatrix >
Bulk export strings to a C-style matrix of chars.
Definition at line 1144 of file bmstrsparsevec.h.
References BM_ASSERT, bm::base_sparse_vector< CharType, BV, STR_SIZE >::bmatr_, BMNOEXCEPT, BMNOEXCEPT2, BMRESTRICT, bm::str_sparse_vector< CharType, BV, STR_SIZE >::end(), bm::for_each_bit_range_no_check(), bm::base_sparse_vector< CharType, BV, STR_SIZE >::get_null_bvector(), bm::basic_bmatrix< BV >::get_row(), i, bm::str_sparse_vector< CharType, BV, STR_SIZE >::remap_flags_, bm::str_sparse_vector< CharType, BV, STR_SIZE >::remap_matrix1_, bm::dynamic_heap_matrix< Val, BVAlloc >::remapz(), bm::basic_bmatrix< BV >::rows_not_null(), bm::str_sparse_vector< CharType, BV, STR_SIZE >::size(), and str().
Referenced by bm::str_sparse_vector< CharType, BV, STR_SIZE >::decode(), and TestStrSparseVector().
◆ effective_max_str()template<class CharType , class BV , unsigned STR_SIZE>
get effective string length used in vector Calculate and returns efficiency, how close are we to the reserved maximum.
Definition at line 2165 of file bmstrsparsevec.h.
Referenced by bm::str_sparse_vector< CharType, BV, STR_SIZE >::const_reference::const_reference(), bm::str_sparse_vector< CharType, BV, STR_SIZE >::decode(), bm::str_sparse_vector< CharType, BV, STR_SIZE >::effective_vector_max(), bm::str_sparse_vector< CharType, BV, STR_SIZE >::reference::reference(), bm::str_sparse_vector< CharType, BV, STR_SIZE >::remap_from_impl(), and TestStrSparseVector().
◆ effective_size()template<typename CharType , typename BV , unsigned STR_SIZE>
◆ effective_vector_max()template<typename CharType , typename BV , unsigned STR_SIZE>
◆ empty()template<typename CharType , typename BV , unsigned STR_SIZE>
◆ end()template<typename CharType , typename BV , unsigned STR_SIZE>
◆ equal()template<class CharType , class BV , unsigned STR_SIZE>
◆ erase()template<class CharType , class BV , unsigned STR_SIZE>
◆ find_rank()template<class CharType , class BV , unsigned STR_SIZE>
◆ freeze()template<typename CharType , typename BV , unsigned STR_SIZE>
◆ get() [1/2]template<typename CharType , typename BV , unsigned STR_SIZE>
template<typename StrType >
get specified string element Template method expects an STL-compatible type basic_string<>
Definition at line 727 of file bmstrsparsevec.h.
References BM_ASSERT, bm::base_sparse_vector< CharType, BV, STR_SIZE >::bmatr_, bm::basic_bmatrix< BV >::get_octet(), i, bm::str_sparse_vector< CharType, BV, STR_SIZE >::remap_flags_, bm::str_sparse_vector< CharType, BV, STR_SIZE >::remap_matrix1_, bm::dynamic_heap_matrix< Val, BVAlloc >::row(), str(), and bm::str_sparse_vector< CharType, BV, STR_SIZE >::throw_bad_value().
◆ get() [2/2]template<class CharType , class BV , unsigned STR_SIZE>
get specified element
Definition at line 1828 of file bmstrsparsevec.h.
Referenced by CompareStrSparseVector(), EraseStrCollection(), quicksort2(), StressTestStrSparseVector(), TestStrSparseSort(), TestStrSparseVector(), TestStrSparseVectorSerial(), and bm::str_sparse_vector< CharType, BV, STR_SIZE >::try_get().
◆ get_back_inserter()template<typename CharType , typename BV , unsigned STR_SIZE>
◆ get_const_iterator()template<typename CharType , typename BV , unsigned STR_SIZE>
◆ get_remap_buffer()template<typename CharType , typename BV , unsigned STR_SIZE>
◆ get_remap_matrix() [1/2]template<typename CharType , typename BV , unsigned STR_SIZE>
◆ get_remap_matrix() [2/2]template<typename CharType , typename BV , unsigned STR_SIZE>
◆ import()template<typename CharType , typename BV , unsigned STR_SIZE>
template<typename CharMatrix >
◆ import_back()template<typename CharType , typename BV , unsigned STR_SIZE>
template<typename CharMatrix >
◆ import_char_slice()template<typename CharType , typename BV , unsigned STR_SIZE>
template<size_t BufSize = ins_buf_size>
Definition at line 1466 of file bmstrsparsevec.h.
References bm::bit_list(), BM_ASSERT, ch0, bm::base_sparse_vector< CharType, BV, STR_SIZE >::get_create_slice(), bm::str_sparse_vector< CharType, BV, STR_SIZE >::ins_buf_size, mask, and bm::word_bitcount().
Referenced by bm::str_sparse_vector< CharType, BV, STR_SIZE >::import_no_check().
◆ import_no_check()template<typename CharType , typename BV , unsigned STR_SIZE>
template<typename CharMatrix , size_t BufSize = ins_buf_size>
Definition at line 1380 of file bmstrsparsevec.h.
References bm::basic_bmatrix< BV >::allocate_rows(), BM_ASSERT, bm::base_sparse_vector< CharType, BV, STR_SIZE >::bmatr_, ch0, ch1, ch2, ch3, bm::dynamic_heap_matrix< Val, BVAlloc >::get(), bm::base_sparse_vector< CharType, BV, STR_SIZE >::get_null_bvect(), i, bm::str_sparse_vector< CharType, BV, STR_SIZE >::import_char_slice(), bm::str_sparse_vector< CharType, BV, STR_SIZE >::ins_buf_size, bm::base_sparse_vector< CharType, BV, STR_SIZE >::is_nullable(), bm::str_sparse_vector< CharType, BV, STR_SIZE >::remap_flags_, bm::str_sparse_vector< CharType, BV, STR_SIZE >::remap_matrix2_, bm::str_sparse_vector< CharType, BV, STR_SIZE >::size(), bm::base_sparse_vector< CharType, BV, STR_SIZE >::size_, and str().
Referenced by bm::str_sparse_vector< CharType, BV, STR_SIZE >::import(), and bm::str_sparse_vector< CharType, BV, STR_SIZE >::import_back().
◆ init_remap_buffer()template<typename CharType , typename BV , unsigned STR_SIZE>
◆ insert() [1/2]template<typename CharType , typename BV , unsigned STR_SIZE>
template<typename StrType >
◆ insert() [2/2]template<class CharType , class BV , unsigned STR_SIZE>
◆ insert_value()template<class CharType , class BV , unsigned STR_SIZE>
◆ insert_value_no_null()template<class CharType , class BV , unsigned STR_SIZE>
◆ is_compressed()template<typename CharType , typename BV , unsigned STR_SIZE>
inlinestaticconstexprnoexcept ◆ is_remap()template<typename CharType , typename BV , unsigned STR_SIZE>
◆ is_ro()template<typename CharType , typename BV , unsigned STR_SIZE>
◆ is_str()template<typename CharType , typename BV , unsigned STR_SIZE>
inlinestaticconstexprnoexceptDefinition at line 976 of file bmstrsparsevec.h.
◆ keep()template<typename CharType , typename BV , unsigned STR_SIZE>
◆ keep_range()template<class CharType , class BV , unsigned STR_SIZE>
Keep only specified interval in the sparse vector, clear all other elements.
Definition at line 2578 of file bmstrsparsevec.h.
References bm::xor_swap().
Referenced by TestStrSparseVector().
◆ max_str()template<typename CharType , typename BV , unsigned STR_SIZE>
◆ merge()template<class CharType , class BV , unsigned STR_SIZE>
merge with another sparse vector using OR operation Merge is different from join(), because it borrows data from the source vector, so it gets modified (destructive join)
Definition at line 2546 of file bmstrsparsevec.h.
References bm::base_sparse_vector< Val, BV, MAX_SIZE >::bmatr_, bm::base_sparse_vector< Val, BV, MAX_SIZE >::is_nullable(), bm::str_sparse_vector< CharType, BV, STR_SIZE >::remap_flags_, bm::str_sparse_vector< CharType, BV, STR_SIZE >::remap_matrix1_, bm::str_sparse_vector< CharType, BV, STR_SIZE >::remap_matrix2_, pythonpp::resize(), and bm::str_sparse_vector< CharType, BV, STR_SIZE >::size().
Referenced by TestStrSparseVector().
◆ operator=() [1/2]template<typename CharType , typename BV , unsigned STR_SIZE>
copy assignmment operator
Definition at line 512 of file bmstrsparsevec.h.
References bm::base_sparse_vector< CharType, BV, STR_SIZE >::copy_from(), bm::str_sparse_vector< CharType, BV, STR_SIZE >::remap_flags_, bm::str_sparse_vector< CharType, BV, STR_SIZE >::remap_matrix1_, and bm::str_sparse_vector< CharType, BV, STR_SIZE >::remap_matrix2_.
◆ operator=() [2/2]template<typename CharType , typename BV , unsigned STR_SIZE>
◆ operator[]() [1/2]template<typename CharType , typename BV , unsigned STR_SIZE>
◆ operator[]() [2/2]template<typename CharType , typename BV , unsigned STR_SIZE>
◆ optimize()template<class CharType , class BV , unsigned STR_SIZE>
◆ push_back() [1/2]template<typename CharType , typename BV , unsigned STR_SIZE>
template<typename StrType >
push back a string
Definition at line 684 of file bmstrsparsevec.h.
References bm::str_sparse_vector< CharType, BV, STR_SIZE >::assign(), and bm::base_sparse_vector< CharType, BV, STR_SIZE >::size_.
Referenced by StressTestStrSparseVector(), TestSparseFindEqStrPipeline(), TestStrSparseSort(), TestStrSparseVector(), and TestStrSparseVectorAlgo().
◆ push_back() [2/2]template<typename CharType , typename BV , unsigned STR_SIZE>
◆ push_back_null() [1/2]template<typename CharType , typename BV , unsigned STR_SIZE>
◆ push_back_null() [2/2]template<class CharType , class BV , unsigned STR_SIZE>
◆ recalc_remap_matrix2()template<class CharType , class BV , unsigned STR_SIZE>
◆ remap() [1/2]template<class CharType , class BV , unsigned MAX_STR_SIZE>
◆ remap() [2/2]template<class CharType , class BV , unsigned MAX_STR_SIZE>
reamp using statistics table from inserter
Definition at line 2372 of file bmstrsparsevec.h.
References bm::str_sparse_vector< CharType, BV, STR_SIZE >::back_insert_iterator::omatrix_, bm::str_sparse_vector< CharType, BV, STR_SIZE >::back_insert_iterator::remap_flags_, bm::str_sparse_vector< CharType, BV, STR_SIZE >::remap_from_impl(), bm::dynamic_heap_matrix< Val, BVAlloc >::rows(), and bm::str_sparse_vector< CharType, BV, STR_SIZE >::swap().
◆ remap_from()template<class CharType , class BV , unsigned STR_SIZE>
Build remapping profile and load content from another sparse vector Remapped vector likely saves memory (both RAM and disk) but should not be modified (should be read-only).
Definition at line 2390 of file bmstrsparsevec.h.
Referenced by StressTestStrSparseVector(), TestStrSparseVector(), and TestStrSparseVectorSerial().
◆ remap_from_impl()template<class CharType , class BV , unsigned STR_SIZE>
Remap from implementation, please note that move_data flag can violate cosnt-ness.
Definition at line 2401 of file bmstrsparsevec.h.
References bm::alloc_pool_guard< POOL, PCLASS >::assign_if_not_set(), bm::str_sparse_vector< CharType, BV, STR_SIZE >::build_octet_remap(), bm::str_sparse_vector< CharType, BV, STR_SIZE >::calc_octet_stat(), bm::str_sparse_vector< CharType, BV, STR_SIZE >::clear_range(), bm::str_sparse_vector< CharType, BV, STR_SIZE >::decode(), bm::str_sparse_vector< CharType, BV, STR_SIZE >::effective_max_str(), bm::str_sparse_vector< CharType, BV, STR_SIZE >::empty(), bm::base_sparse_vector< Val, BV, MAX_SIZE >::get_bmatrix(), bm::base_sparse_vector< Val, BV, MAX_SIZE >::get_null_bvector(), i, bm::str_sparse_vector< CharType, BV, STR_SIZE >::is_remap(), r(), and bm::basic_bmatrix< BV >::rows().
Referenced by bm::str_sparse_vector< CharType, BV, STR_SIZE >::remap().
◆ remap_fromsv()template<class CharType , class BV , unsigned MAX_STR_SIZE>
remap string from internal code to external (ASCII) system
Definition at line 2334 of file bmstrsparsevec.h.
Referenced by TestStrSparseVector().
◆ remap_n_tosv_2way() [1/2]template<typename CharType , typename BV , unsigned STR_SIZE>
◆ remap_n_tosv_2way() [2/2]template<class CharType , class BV , unsigned STR_SIZE>
◆ remap_size()template<typename CharType , typename BV , unsigned STR_SIZE>
◆ remap_tosv() [1/2]template<typename CharType , typename BV , unsigned STR_SIZE>
◆ remap_tosv() [2/2]template<class CharType , class BV , unsigned STR_SIZE>
◆ resize()template<typename CharType , typename BV , unsigned STR_SIZE>
◆ resize_internal()template<typename CharType , typename BV , unsigned STR_SIZE>
◆ resolve_range()template<typename CharType , typename BV , unsigned STR_SIZE>
Definition at line 1570 of file bmstrsparsevec.h.
◆ set()template<class CharType , class BV , unsigned STR_SIZE>
◆ set_null() [1/2]template<typename CharType , typename BV , unsigned STR_SIZE>
◆ set_null() [2/2]template<class CharType , class BV , unsigned STR_SIZE>
◆ set_remap()template<typename CharType , typename BV , unsigned STR_SIZE>
◆ set_value()template<class CharType , class BV , unsigned STR_SIZE>
◆ set_value_no_null()template<class CharType , class BV , unsigned STR_SIZE>
◆ size()template<typename CharType , typename BV , unsigned STR_SIZE>
return size of the vector
Definition at line 858 of file bmstrsparsevec.h.
References bm::base_sparse_vector< CharType, BV, STR_SIZE >::size_.
Referenced by bm::str_sparse_vector< CharType, BV, STR_SIZE >::assign(), CompareStrSparseVector(), bm::str_sparse_vector< CharType, BV, STR_SIZE >::copy_range(), bm::str_sparse_vector< CharType, BV, STR_SIZE >::decode_substr(), bm::str_sparse_vector< CharType, BV, STR_SIZE >::effective_size(), bm::str_sparse_vector< CharType, BV, STR_SIZE >::empty(), EraseStrCollection(), bm::str_sparse_vector< CharType, BV, STR_SIZE >::import_back(), bm::str_sparse_vector< CharType, BV, STR_SIZE >::import_no_check(), bm::str_sparse_vector< CharType, BV, STR_SIZE >::merge(), bm::str_sparse_vector< CharType, BV, STR_SIZE >::size_internal(), StressTestStrSparseVector(), TestStrSparseQuickSort(), TestStrSparseSort(), TestStrSparseVector(), and TestStrSparseVectorSerial().
◆ size_internal()template<typename CharType , typename BV , unsigned STR_SIZE>
◆ swap() [1/2]template<class CharType , class BV , unsigned STR_SIZE>
◆ swap() [2/2]template<class CharType , class BV , unsigned STR_SIZE>
◆ sync()template<class CharType , class BV , unsigned STR_SIZE>
◆ sync_size()template<class CharType , class BV , unsigned STR_SIZE>
◆ throw_bad_value()template<class CharType , class BV , unsigned STR_SIZE>
◆ throw_range_error()template<class CharType , class BV , unsigned STR_SIZE>
◆ try_get()template<typename CharType , typename BV , unsigned STR_SIZE>
template<typename StrType >
◆ sparse_vector_deserializertemplate<typename CharType , typename BV , unsigned STR_SIZE>
template<class SVect >
Definition at line 1595 of file bmstrsparsevec.h.
◆ sparse_vector_serializertemplate<typename CharType , typename BV , unsigned STR_SIZE>
template<class SVect >
Definition at line 1594 of file bmstrsparsevec.h.
◆ remap_flags_template<typename CharType , typename BV , unsigned STR_SIZE>
remapping status
Definition at line 1598 of file bmstrsparsevec.h.
Referenced by bm::str_sparse_vector< CharType, BV, STR_SIZE >::back_insert_iterator::add_remap_stat(), bm::str_sparse_vector< CharType, BV, STR_SIZE >::back_insert_iterator::add_value(), bm::str_sparse_vector< CharType, BV, STR_SIZE >::assign(), bm::str_sparse_vector< CharType, BV, STR_SIZE >::copy_range(), bm::str_sparse_vector< CharType, BV, STR_SIZE >::decode_substr(), bm::str_sparse_vector< CharType, BV, STR_SIZE >::back_insert_iterator::flush(), bm::str_sparse_vector< CharType, BV, STR_SIZE >::get(), bm::str_sparse_vector< CharType, BV, STR_SIZE >::import_no_check(), bm::str_sparse_vector< CharType, BV, STR_SIZE >::is_remap(), bm::str_sparse_vector< CharType, BV, STR_SIZE >::merge(), bm::str_sparse_vector< CharType, BV, STR_SIZE >::operator=(), bm::str_sparse_vector< CharType, BV, STR_SIZE >::set_remap(), and bm::str_sparse_vector< CharType, BV, STR_SIZE >::str_sparse_vector().
◆ remap_matrix1_template<typename CharType , typename BV , unsigned STR_SIZE>
octet remap table 1
Definition at line 1599 of file bmstrsparsevec.h.
Referenced by bm::str_sparse_vector< CharType, BV, STR_SIZE >::copy_range(), bm::str_sparse_vector< CharType, BV, STR_SIZE >::decode_substr(), bm::str_sparse_vector< CharType, BV, STR_SIZE >::get(), bm::str_sparse_vector< CharType, BV, STR_SIZE >::get_remap_buffer(), bm::str_sparse_vector< CharType, BV, STR_SIZE >::get_remap_matrix(), bm::str_sparse_vector< CharType, BV, STR_SIZE >::init_remap_buffer(), bm::str_sparse_vector< CharType, BV, STR_SIZE >::merge(), bm::str_sparse_vector< CharType, BV, STR_SIZE >::operator=(), bm::str_sparse_vector< CharType, BV, STR_SIZE >::remap_size(), and bm::str_sparse_vector< CharType, BV, STR_SIZE >::str_sparse_vector().
◆ remap_matrix2_template<typename CharType , typename BV , unsigned STR_SIZE>
octet remap table 2
Definition at line 1600 of file bmstrsparsevec.h.
Referenced by bm::str_sparse_vector< CharType, BV, STR_SIZE >::assign(), bm::str_sparse_vector< CharType, BV, STR_SIZE >::copy_range(), bm::str_sparse_vector< CharType, BV, STR_SIZE >::import_no_check(), bm::str_sparse_vector< CharType, BV, STR_SIZE >::merge(), bm::str_sparse_vector< CharType, BV, STR_SIZE >::operator=(), bm::str_sparse_vector< CharType, BV, STR_SIZE >::remap_n_tosv_2way(), bm::str_sparse_vector< CharType, BV, STR_SIZE >::remap_tosv(), and bm::str_sparse_vector< CharType, BV, STR_SIZE >::str_sparse_vector().
The documentation for this class was generated from the following file:
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4