(
unsignedpos)
const;
61 unsigned* d=0)
const;
114 unsigned len, dsize;
166cout <<
"GAP Control failed."<< endl;
171 for(
unsigned i= 2;
i<
len; ++
i)
178cout <<
"GAP sequence control failed."<< endl;
GAP vector is designed to be very small.
void combine_sub(const gap_vector &vect)
const gap_word_t * get_buf() const
int is_bit_true(unsigned pos) const
Checks if bit pos 1 or 0. Returns 0 if 0 and non zero otherwise.
bool set_bit(unsigned pos)
Sets bit number pos to 1 returns true if operation sucessful, false if GAP threashold reached and we ...
void combine_xor(const gap_vector &vect)
int compare(const gap_vector &vect)
int combine_and(const gap_word_t *other)
void convert_to_bitset(unsigned *dest) const
bool clear_bit(unsigned pos)
Sets bit number pos to 0.
int test(unsigned pos) const
void combine_or(const gap_vector &vect)
unsigned count_range(unsigned left, unsigned right, unsigned *d=0) const
gap_vector(gap_word_t init=0)
bool get_last(unsigned *last) const
gap_word_t m_buf[bm::gap_max_buff_len+3]
unsigned bit_count() const
Counts number of bits ON.
static void DLIST_NAME() init(DLIST_LIST_TYPE *list)
static DLIST_TYPE *DLIST_NAME() last(DLIST_LIST_TYPE *list)
static DLIST_TYPE *DLIST_NAME() prev(DLIST_LIST_TYPE *list, DLIST_TYPE *item)
unsigned gap_bit_count_range(const T *const buf, unsigned left, unsigned right) noexcept
Counts 1 bits in GAP buffer in the closed [left, right] range.
gap_word_t * gap_operation_xor(const gap_word_t *vect1, const gap_word_t *vect2, gap_word_t *tmp_buf, unsigned &dsize) noexcept
GAP XOR operation.
gap_word_t * gap_operation_or(const gap_word_t *vect1, const gap_word_t *vect2, gap_word_t *tmp_buf, unsigned &dsize) noexcept
GAP OR operation.
unsigned gap_test(const T *buf, unsigned pos) noexcept
Tests if bit = pos is true.
unsigned gap_bit_count(const T *buf, unsigned dsize=0) noexcept
Calculates number of bits ON in GAP buffer.
unsigned gap_control_sum(const T *buf) noexcept
Calculates sum of all words in GAP block. (For debugging purposes)
unsigned gap_test_unr(const T *buf, const unsigned pos) noexcept
Tests if bit = pos is true. Analog of bm::gap_test with SIMD unrolling.
void gap_convert_to_bitset(unsigned *dest, const T *buf, unsigned len=0) noexcept
GAP block to bitblock conversion.
gap_word_t * gap_operation_sub(const gap_word_t *vect1, const gap_word_t *vect2, gap_word_t *tmp_buf, unsigned &dsize) noexcept
GAP SUB (AND NOT) operation.
gap_word_t * gap_operation_and(const gap_word_t *vect1, const gap_word_t *vect2, gap_word_t *tmp_buf, unsigned &dsize) noexcept
GAP AND operation.
unsigned gap_set_value(unsigned val, T *buf, unsigned pos) noexcept
Sets or clears bit in the GAP buffer.
unsigned gap_find_last(const T *buf, unsigned *last) noexcept
GAP block find the last set bit.
int gapcmp(const T *buf1, const T *buf2) noexcept
Lexicographical comparison of GAP buffers.
bm::gap_word_t gap_length(const bm::gap_word_t *buf) noexcept
Returs GAP block length.
unsigned int
A callback function used to compare two keys in a database.
const unsigned gap_max_buff_len
unsigned short gap_word_t
const unsigned gap_max_bits
static const sljit_gpr r1
static const sljit_gpr r2
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