Thrill  0.1
GenericCharStringSet< CharType > Class Template Reference

Detailed Description

template<typename CharType>
class tlx::sort_strings_detail::GenericCharStringSet< CharType >

Class implementing StringSet concept for char* and unsigned char* strings.

Definition at line 297 of file string_set.hpp.

+ Inheritance diagram for GenericCharStringSet< CharType >:
+ Collaboration diagram for GenericCharStringSet< CharType >:

#include <string_set.hpp>

Public Types

typedef Traits::Char Char
 
typedef Traits::CharIterator CharIterator
 
typedef Traits::Container Container
 
typedef Traits::Iterator Iterator
 
typedef Traits::String String
 
typedef GenericCharStringSetTraits< CharType > Traits
 
- Public Types inherited from GenericCharStringSetTraits< CharType >
typedef CharType Char
 exported alias for character type More...
 
typedef const CharCharIterator
 iterator of characters in a string More...
 
typedef std::pair< Iterator, size_t > Container
 exported alias for assumed string container More...
 
typedef StringIterator
 Iterator over string references: pointer over pointers. More...
 
typedef CharString
 String reference: pointer to first character. More...
 

Public Member Functions

 GenericCharStringSet (Iterator begin, Iterator end)
 Construct from begin and end string pointers. More...
 
 GenericCharStringSet (const Container &c)
 Construct from a string container. More...
 
Iterator begin () const
 Iterator representing first String position. More...
 
Iterator end () const
 Iterator representing beyond last String position. More...
 
CharIterator get_chars (const String &s, size_t depth) const
 Return CharIterator for referenced string, which belong to this set. More...
 
std::string get_string (const String &s, size_t depth=0) const
 Return complete string (for debugging purposes) More...
 
bool is_end (const String &, const CharIterator &i) const
 Returns true if CharIterator is at end of the given String. More...
 
Stringoperator[] (Iterator i) const
 Iterator-based array access (readable and writable) to String objects. More...
 
size_t size () const
 Return size of string array. More...
 
GenericCharStringSet sub (Iterator begin, Iterator end) const
 Subset this string set using iterator range. More...
 
- Public Member Functions inherited from StringSetBase< GenericCharStringSet< CharType >, GenericCharStringSetTraits< CharType > >
GenericCharStringSetTraits< CharType > ::String & at (size_t i) const
 index-based array access (readable and writable) to String objects. More...
 
bool check_order (const typename GenericCharStringSetTraits< CharType > ::String &s1, const typename GenericCharStringSetTraits< CharType > ::String &s2) const
 
bool check_order () const
 
void print () const
 
GenericCharStringSet< CharType > subi (size_t begin, size_t end) const
 Subset this string set using index range. More...
 
bool is_equal (const typename GenericCharStringSetTraits< CharType > ::String &a, const typename GenericCharStringSetTraits< CharType > ::CharIterator &ai, const typename GenericCharStringSetTraits< CharType > ::String &b, const typename GenericCharStringSetTraits< CharType > ::CharIterator &bi) const
 check equality of two strings a and b at char iterators ai and bi. More...
 
bool is_less (const typename GenericCharStringSetTraits< CharType > ::String &a, const typename GenericCharStringSetTraits< CharType > ::CharIterator &ai, const typename GenericCharStringSetTraits< CharType > ::String &b, const typename GenericCharStringSetTraits< CharType > ::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 GenericCharStringSetTraits< CharType > ::String &a, const typename GenericCharStringSetTraits< CharType > ::CharIterator &ai, const typename GenericCharStringSetTraits< CharType > ::String &b, const typename GenericCharStringSetTraits< CharType > ::CharIterator &bi) const
 check if string a is less or equal to string b at iterators ai and bi. More...
 
GenericCharStringSetTraits< CharType > ::Char get_char (const typename GenericCharStringSetTraits< CharType > ::String &s, size_t depth) const
 
uint8_t get_uint8 (const typename GenericCharStringSetTraits< CharType > ::String &s, typename GenericCharStringSetTraits< CharType > ::CharIterator i) const
 
uint8_t get_uint8 (const typename GenericCharStringSetTraits< CharType > ::String &s, size_t depth) const
 
uint16_t get_uint16 (const typename GenericCharStringSetTraits< CharType > ::String &s, typename GenericCharStringSetTraits< CharType > ::CharIterator i) const
 
uint16_t get_uint16 (const typename GenericCharStringSetTraits< CharType > ::String &s, size_t depth) const
 
uint32_t get_uint32 (const typename GenericCharStringSetTraits< CharType > ::String &s, typename GenericCharStringSetTraits< CharType > ::CharIterator i) const
 
uint32_t get_uint32 (const typename GenericCharStringSetTraits< CharType > ::String &s, size_t depth) const
 
uint64_t get_uint64 (const typename GenericCharStringSetTraits< CharType > ::String &s, typename GenericCharStringSetTraits< CharType > ::CharIterator i) const
 
uint64_t get_uint64 (const typename GenericCharStringSetTraits< CharType > ::String &s, size_t depth) const
 

Static Public Member Functions

static Container allocate (size_t n)
 Allocate a new temporary string container with n empty Strings. More...
 
static void deallocate (Container &c)
 Deallocate a temporary string container. More...
 

Protected Attributes

Iterator begin_
 array of string pointers More...
 
Iterator end_
 

Member Typedef Documentation

◆ Char

typedef Traits::Char Char

Definition at line 305 of file string_set.hpp.

◆ CharIterator

Definition at line 308 of file string_set.hpp.

◆ Container

Definition at line 309 of file string_set.hpp.

◆ Iterator

Definition at line 307 of file string_set.hpp.

◆ String

Definition at line 306 of file string_set.hpp.

◆ Traits

Definition at line 303 of file string_set.hpp.

Constructor & Destructor Documentation

◆ GenericCharStringSet() [1/2]

GenericCharStringSet ( Iterator  begin,
Iterator  end 
)
inline

Construct from begin and end string pointers.

Definition at line 312 of file string_set.hpp.

◆ GenericCharStringSet() [2/2]

GenericCharStringSet ( const Container c)
inlineexplicit

Construct from a string container.

Definition at line 317 of file string_set.hpp.

Member Function Documentation

◆ allocate()

static Container allocate ( size_t  n)
inlinestatic

Allocate a new temporary string container with n empty Strings.

Definition at line 349 of file string_set.hpp.

◆ begin()

Iterator begin ( ) const
inline

Iterator representing first String position.

Definition at line 324 of file string_set.hpp.

◆ deallocate()

static void deallocate ( Container c)
inlinestatic

Deallocate a temporary string container.

Definition at line 353 of file string_set.hpp.

◆ end()

Iterator end ( ) const
inline

Iterator representing beyond last String position.

Definition at line 326 of file string_set.hpp.

◆ get_chars()

CharIterator get_chars ( const String s,
size_t  depth 
) const
inline

Return CharIterator for referenced string, which belong to this set.

Definition at line 333 of file string_set.hpp.

◆ get_string()

std::string get_string ( const String s,
size_t  depth = 0 
) const
inline

Return complete string (for debugging purposes)

Definition at line 341 of file string_set.hpp.

◆ is_end()

bool is_end ( const String ,
const CharIterator i 
) const
inline

Returns true if CharIterator is at end of the given String.

Definition at line 337 of file string_set.hpp.

◆ operator[]()

String& operator[] ( Iterator  i) const
inline

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

Definition at line 329 of file string_set.hpp.

◆ size()

size_t size ( ) const
inline

Return size of string array.

Definition at line 322 of file string_set.hpp.

◆ sub()

GenericCharStringSet sub ( Iterator  begin,
Iterator  end 
) const
inline

Subset this string set using iterator range.

Definition at line 345 of file string_set.hpp.

Member Data Documentation

◆ begin_

Iterator begin_
protected

array of string pointers

Definition at line 358 of file string_set.hpp.

◆ end_

Iterator end_
protected

Definition at line 358 of file string_set.hpp.


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