tlx
StringSetBase< StringSet, Traits > Class Template Reference

Base class for common string set functions, included via CRTP. More...

#include <string_set.hpp>

Public Member Functions

Traits::String & at (size_t i) const
 index-based array access (readable and writable) to String objects. More...
 
StringSet subi (size_t begin, size_t end) const
 Subset this string set using index range. More...
 
bool check_order (const typename Traits::String &s1, const typename Traits::String &s2) const
 
bool check_order () const
 
void print () const
 
CharIterator Comparisons
bool is_equal (const typename Traits::String &a, const typename Traits::CharIterator &ai, const typename Traits::String &b, const typename Traits::CharIterator &bi) const
 check equality of two strings a and b at char iterators ai and bi. More...
 
bool is_less (const typename Traits::String &a, const typename Traits::CharIterator &ai, const typename Traits::String &b, const typename Traits::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 Traits::String &a, const typename Traits::CharIterator &ai, const typename Traits::String &b, const typename Traits::CharIterator &bi) const
 check if string a is less or equal to string b at iterators ai and bi. More...
 
Character Extractors
Traits::Char get_char (const typename Traits::String &s, size_t depth) const
 
uint8_t get_uint8 (const typename Traits::String &s, typename Traits::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...
 
uint16_t get_uint16 (const typename Traits::String &s, typename Traits::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...
 
uint32_t get_uint32 (const typename Traits::String &s, typename Traits::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...
 
uint64_t get_uint64 (const typename Traits::String &s, typename Traits::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...
 
uint8_t get_uint8 (const typename Traits::String &s, size_t depth) const
 
uint16_t get_uint16 (const typename Traits::String &s, size_t depth) const
 
uint32_t get_uint32 (const typename Traits::String &s, size_t depth) const
 
uint64_t get_uint64 (const typename Traits::String &s, size_t depth) const
 

Detailed Description

template<typename StringSet, typename Traits>
class tlx::sort_strings_detail::StringSetBase< StringSet, Traits >

Base class for common string set functions, included via CRTP.

Definition at line 48 of file string_set.hpp.

Member Function Documentation

Traits::String& at ( size_t  i) const
inline

index-based array access (readable and writable) to String objects.

Definition at line 52 of file string_set.hpp.

bool check_order ( const typename Traits::String &  s1,
const typename Traits::String &  s2 
) const
inline

Definition at line 207 of file string_set.hpp.

bool check_order ( ) const
inline

Definition at line 220 of file string_set.hpp.

Traits::Char get_char ( const typename Traits::String &  s,
size_t  depth 
) const
inline

Definition at line 95 of file string_set.hpp.

uint16_t get_uint16 ( const typename Traits::String &  s,
typename Traits::CharIterator  i 
) const
inline

Return up to 2 characters of string s at iterator i packed into a uint16_t (only works correctly for 8-bit characters)

Definition at line 112 of file string_set.hpp.

uint16_t get_uint16 ( const typename Traits::String &  s,
size_t  depth 
) const
inline

Definition at line 184 of file string_set.hpp.

uint32_t get_uint32 ( const typename Traits::String &  s,
typename Traits::CharIterator  i 
) const
inline

Return up to 4 characters of string s at iterator i packed into a uint32_t (only works correctly for 8-bit characters)

Definition at line 127 of file string_set.hpp.

uint32_t get_uint32 ( const typename Traits::String &  s,
size_t  depth 
) const
inline

Definition at line 189 of file string_set.hpp.

uint64_t get_uint64 ( const typename Traits::String &  s,
typename Traits::CharIterator  i 
) const
inline

Return up to 8 characters of string s at iterator i packed into a uint64_t (only works correctly for 8-bit characters)

Definition at line 148 of file string_set.hpp.

uint64_t get_uint64 ( const typename Traits::String &  s,
size_t  depth 
) const
inline

Definition at line 194 of file string_set.hpp.

uint8_t get_uint8 ( const typename Traits::String &  s,
typename Traits::CharIterator  i 
) const
inline

Return up to 1 characters of string s at iterator i packed into a uint8_t (only works correctly for 8-bit characters)

Definition at line 102 of file string_set.hpp.

uint8_t get_uint8 ( const typename Traits::String &  s,
size_t  depth 
) const
inline

Definition at line 179 of file string_set.hpp.

bool is_equal ( const typename Traits::String &  a,
const typename Traits::CharIterator &  ai,
const typename Traits::String &  b,
const typename Traits::CharIterator &  bi 
) const
inline

check equality of two strings a and b at char iterators ai and bi.

Definition at line 61 of file string_set.hpp.

bool is_leq ( const typename Traits::String &  a,
const typename Traits::CharIterator &  ai,
const typename Traits::String &  b,
const typename Traits::CharIterator &  bi 
) const
inline

check if string a is less or equal to string b at iterators ai and bi.

Definition at line 80 of file string_set.hpp.

bool is_less ( const typename Traits::String &  a,
const typename Traits::CharIterator &  ai,
const typename Traits::String &  b,
const typename Traits::CharIterator &  bi 
) const
inline

check if string a is less or equal to string b at iterators ai and bi.

Definition at line 70 of file string_set.hpp.

void print ( ) const
inline

Definition at line 234 of file string_set.hpp.

StringSet subi ( size_t  begin,
size_t  end 
) const
inline

Subset this string set using index range.

Definition at line 202 of file string_set.hpp.


The documentation for this class was generated from the following file: