tlx
|
Class implementing StringSet concept for suffix sorting indexes of a std::string text object. More...
#include <string_set.hpp>
Public Member Functions | |
StringSuffixSet (const Text &text, const Iterator &begin, const Iterator &end) | |
Construct from begin and end string pointers. More... | |
size_t | size () const |
Return size of string array. More... | |
Iterator | begin () const |
Iterator representing first String position. More... | |
Iterator | end () const |
Iterator representing beyond last String position. More... | |
String & | operator[] (const Iterator &i) const |
Array access (readable and writable) to String objects. More... | |
CharIterator | get_chars (const String &s, size_t depth) const |
Return CharIterator for referenced string, which belongs to this set. More... | |
bool | is_end (const String &, const CharIterator &i) const |
Returns true if CharIterator is at end of the given String. More... | |
std::string | get_string (const String &s, size_t depth=0) const |
Return complete string (for debugging purposes) More... | |
StringSuffixSet | sub (Iterator begin, Iterator end) const |
Subset this string set using iterator range. More... | |
Container | allocate (size_t n) const |
Allocate a new temporary string container with n empty Strings. More... | |
StringSuffixSet (Container &c) | |
Construct from a string container. More... | |
Public Member Functions inherited from StringSetBase< StringSuffixSet, StringSuffixSetTraits > | |
StringSuffixSetTraits::String & | at (size_t i) const |
index-based array access (readable and writable) to String objects. More... | |
StringSuffixSet | subi (size_t begin, size_t end) const |
Subset this string set using index range. More... | |
bool | check_order (const typename StringSuffixSetTraits::String &s1, const typename StringSuffixSetTraits::String &s2) const |
bool | check_order () const |
void | print () const |
bool | is_equal (const typename StringSuffixSetTraits::String &a, const typename StringSuffixSetTraits::CharIterator &ai, const typename StringSuffixSetTraits::String &b, const typename StringSuffixSetTraits::CharIterator &bi) const |
check equality of two strings a and b at char iterators ai and bi. More... | |
bool | is_less (const typename StringSuffixSetTraits::String &a, const typename StringSuffixSetTraits::CharIterator &ai, const typename StringSuffixSetTraits::String &b, const typename StringSuffixSetTraits::CharIterator &bi) const |
check if string a is less or equal to string b at iterators ai and bi. More... | |
bool | is_leq (const typename StringSuffixSetTraits::String &a, const typename StringSuffixSetTraits::CharIterator &ai, const typename StringSuffixSetTraits::String &b, const typename StringSuffixSetTraits::CharIterator &bi) const |
check if string a is less or equal to string b at iterators ai and bi. More... | |
StringSuffixSetTraits::Char | get_char (const typename StringSuffixSetTraits::String &s, size_t depth) const |
uint8_t | get_uint8 (const typename StringSuffixSetTraits::String &s, typename StringSuffixSetTraits::CharIterator i) const |
Return up to 1 characters of string s at iterator i packed into a uint8_t (only works correctly for 8-bit characters) More... | |
uint8_t | get_uint8 (const typename StringSuffixSetTraits::String &s, size_t depth) const |
uint16_t | get_uint16 (const typename StringSuffixSetTraits::String &s, typename StringSuffixSetTraits::CharIterator i) const |
Return up to 2 characters of string s at iterator i packed into a uint16_t (only works correctly for 8-bit characters) More... | |
uint16_t | get_uint16 (const typename StringSuffixSetTraits::String &s, size_t depth) const |
uint32_t | get_uint32 (const typename StringSuffixSetTraits::String &s, typename StringSuffixSetTraits::CharIterator i) const |
Return up to 4 characters of string s at iterator i packed into a uint32_t (only works correctly for 8-bit characters) More... | |
uint32_t | get_uint32 (const typename StringSuffixSetTraits::String &s, size_t depth) const |
uint64_t | get_uint64 (const typename StringSuffixSetTraits::String &s, typename StringSuffixSetTraits::CharIterator i) const |
Return up to 8 characters of string s at iterator i packed into a uint64_t (only works correctly for 8-bit characters) More... | |
uint64_t | get_uint64 (const typename StringSuffixSetTraits::String &s, size_t depth) const |
Static Public Member Functions | |
static StringSuffixSet | Initialize (const Text &text, std::vector< String > &sa) |
Initializing constructor which fills output vector sa with indices. More... | |
static void | deallocate (Container &c) |
Deallocate a temporary string container. More... | |
Protected Attributes | |
const Text * | text_ |
reference to base text More... | |
Iterator | begin_ |
iterators inside the output suffix array. More... | |
Iterator | end_ |
Additional Inherited Members | |
Public Types inherited from StringSuffixSetTraits | |
typedef std::string | Text |
exported alias for assumed string container More... | |
typedef uint8_t | Char |
exported alias for character type More... | |
typedef Text::size_type | String |
String reference: suffix index of the text. More... | |
typedef std::vector< String >::iterator | Iterator |
Iterator over string references: using std::vector's iterator over suffix array vector. More... | |
typedef const Char * | CharIterator |
iterator of characters in a string More... | |
typedef std::pair< Text, std::vector< String > > | Container |
exported alias for assumed string container More... | |
Class implementing StringSet concept for suffix sorting indexes of a std::string text object.
Definition at line 575 of file string_set.hpp.
|
inline |
Construct from begin and end string pointers.
Definition at line 581 of file string_set.hpp.
|
inlineexplicit |
Construct from a string container.
Definition at line 632 of file string_set.hpp.
|
inline |
Allocate a new temporary string container with n empty Strings.
Definition at line 624 of file string_set.hpp.
|
inline |
Iterator representing first String position.
Definition at line 599 of file string_set.hpp.
|
inlinestatic |
Deallocate a temporary string container.
Definition at line 628 of file string_set.hpp.
|
inline |
Iterator representing beyond last String position.
Definition at line 601 of file string_set.hpp.
|
inline |
Return CharIterator for referenced string, which belongs to this set.
Definition at line 608 of file string_set.hpp.
|
inline |
Return complete string (for debugging purposes)
Definition at line 616 of file string_set.hpp.
|
inlinestatic |
Initializing constructor which fills output vector sa with indices.
Definition at line 589 of file string_set.hpp.
|
inline |
Returns true if CharIterator is at end of the given String.
Definition at line 612 of file string_set.hpp.
Array access (readable and writable) to String objects.
Definition at line 604 of file string_set.hpp.
|
inline |
Return size of string array.
Definition at line 597 of file string_set.hpp.
|
inline |
Subset this string set using iterator range.
Definition at line 620 of file string_set.hpp.
|
protected |
iterators inside the output suffix array.
Definition at line 642 of file string_set.hpp.
|
protected |
Definition at line 642 of file string_set.hpp.
|
protected |
reference to base text
Definition at line 639 of file string_set.hpp.