Class RIndex

Class Documentation

class RIndex

the r-index of a text: count and locate in space proportional to the runs of its transform

Public Functions

inline RIndex(void)
explicit RIndex(std::string_view s)

the index of s

Pre:

s.size() < 2^32

inline std::size_t size(void) const

the length n of the text

inline std::size_t runs(void) const

the number r of the runs of the transform

std::pair<std::size_t, std::size_t> range(std::string_view P) const

the range [ first , last ) of the rows prefixed by P, empty if none

Pre:

P not empty

std::size_t count(std::string_view P) const

the number of the occurrences of P

Pre:

P not empty

std::vector<std::size_t> locate(std::string_view P) const

the places of the occurrences of P, in increasing order

Pre:

P not empty

std::size_t sizeInBits(void) const

the bits of the index: the runs, their heads, the sums of their lengths, the samples and the function phi