Rumba C++ SDK
maquina::StringViewBase< C, STDS > Class Template Reference

#include <StringView.h>

Public Types

typedef std::char_traits< C > traits_type
 
typedef C value_type
 
typedef const C * pointer
 
typedef const C * const_pointer
 
typedef const C & reference
 
typedef const C & const_reference
 
typedef const_pointer const_iterator
 
typedef const_iterator iterator
 
typedef std::reverse_iterator< const_iteratorconst_reverse_iterator
 
typedef const_reverse_iterator reverse_iterator
 
typedef size_t size_type
 
typedef ptrdiff_t difference_type
 

Public Member Functions

 StringViewBase () noexcept
 
 StringViewBase (const StringViewBase &other) noexcept=default
 
 StringViewBase (StringViewBase &&other) noexcept
 
StringViewBaseoperator= (const StringViewBase &other) noexcept=default
 
StringViewBaseoperator= (StringViewBase &&other) noexcept
 
 StringViewBase (const C *str) noexcept
 
 StringViewBase (const std::basic_string< C > &string) noexcept
 
 StringViewBase (const C *str, size_t size_) noexcept
 Warning, size_ MUST be strlen(str). More...
 
StringViewBaseoperator= (const std::basic_string< C > &string) noexcept
 
iterator begin () const noexcept
 
iterator end () const noexcept
 
const_iterator cbegin () const noexcept
 
const_iterator cend () const noexcept
 
size_type size () const noexcept
 
size_type length () const noexcept
 
const_pointer data () const noexcept
 
pointer data () noexcept
 
const_pointer c_str () const noexcept
 
pointer c_str () noexcept
 
bool empty () const noexcept
 
bool operator== (const StringViewBase &other) const noexcept
 
bool operator!= (const StringViewBase &other) const noexcept
 
size_type find (value_type c, size_type pos=0) const noexcept
 
size_type find (const StringViewBase &pattern, size_type pos=0) const noexcept
 
size_type rfind (value_type c, size_type pos=npos) const noexcept
 
size_type rfind (const StringViewBase &pattern, size_type pos=npos) const noexcept
 
STDS substr (size_type pos=0, size_type n=npos) const
 
std::vector< STDS > split (StringViewBase separator) const
 
value_type operator[] (size_type position) const
 
 operator STDS () const
 

Static Public Attributes

static const size_type npos = size_type(-1)
 

Protected Attributes

const value_type_str
 
size_type _size
 

Member Typedef Documentation

◆ const_iterator

template<class C, class STDS>
typedef const_pointer maquina::StringViewBase< C, STDS >::const_iterator

◆ const_pointer

template<class C, class STDS>
typedef const C* maquina::StringViewBase< C, STDS >::const_pointer

◆ const_reference

template<class C, class STDS>
typedef const C& maquina::StringViewBase< C, STDS >::const_reference

◆ const_reverse_iterator

template<class C, class STDS>
typedef std::reverse_iterator<const_iterator> maquina::StringViewBase< C, STDS >::const_reverse_iterator

◆ difference_type

template<class C, class STDS>
typedef ptrdiff_t maquina::StringViewBase< C, STDS >::difference_type

◆ iterator

template<class C, class STDS>
typedef const_iterator maquina::StringViewBase< C, STDS >::iterator

◆ pointer

template<class C, class STDS>
typedef const C* maquina::StringViewBase< C, STDS >::pointer

◆ reference

template<class C, class STDS>
typedef const C& maquina::StringViewBase< C, STDS >::reference

◆ reverse_iterator

template<class C, class STDS>
typedef const_reverse_iterator maquina::StringViewBase< C, STDS >::reverse_iterator

◆ size_type

template<class C, class STDS>
typedef size_t maquina::StringViewBase< C, STDS >::size_type

◆ traits_type

template<class C, class STDS>
typedef std::char_traits<C> maquina::StringViewBase< C, STDS >::traits_type

◆ value_type

template<class C, class STDS>
typedef C maquina::StringViewBase< C, STDS >::value_type

Constructor & Destructor Documentation

◆ StringViewBase() [1/6]

template<class C, class STDS>
maquina::StringViewBase< C, STDS >::StringViewBase ( )
inlinenoexcept

◆ StringViewBase() [2/6]

template<class C, class STDS>
maquina::StringViewBase< C, STDS >::StringViewBase ( const StringViewBase< C, STDS > &  other)
defaultnoexcept

◆ StringViewBase() [3/6]

template<class C, class STDS>
maquina::StringViewBase< C, STDS >::StringViewBase ( StringViewBase< C, STDS > &&  other)
inlinenoexcept

◆ StringViewBase() [4/6]

template<class C, class STDS>
maquina::StringViewBase< C, STDS >::StringViewBase ( const C *  str)
inlinenoexcept

◆ StringViewBase() [5/6]

template<class C, class STDS>
maquina::StringViewBase< C, STDS >::StringViewBase ( const std::basic_string< C > &  string)
inlinenoexcept

◆ StringViewBase() [6/6]

template<class C, class STDS>
maquina::StringViewBase< C, STDS >::StringViewBase ( const C *  str,
size_t  size_ 
)
inlinenoexcept

Warning, size_ MUST be strlen(str).

Member Function Documentation

◆ begin()

template<class C, class STDS>
iterator maquina::StringViewBase< C, STDS >::begin ( ) const
inlinenoexcept

◆ c_str() [1/2]

template<class C, class STDS>
const_pointer maquina::StringViewBase< C, STDS >::c_str ( ) const
inlinenoexcept

◆ c_str() [2/2]

template<class C, class STDS>
pointer maquina::StringViewBase< C, STDS >::c_str ( )
inlinenoexcept

◆ cbegin()

template<class C, class STDS>
const_iterator maquina::StringViewBase< C, STDS >::cbegin ( ) const
inlinenoexcept

◆ cend()

template<class C, class STDS>
const_iterator maquina::StringViewBase< C, STDS >::cend ( ) const
inlinenoexcept

◆ data() [1/2]

template<class C, class STDS>
const_pointer maquina::StringViewBase< C, STDS >::data ( ) const
inlinenoexcept

◆ data() [2/2]

template<class C, class STDS>
pointer maquina::StringViewBase< C, STDS >::data ( )
inlinenoexcept

◆ empty()

template<class C, class STDS>
bool maquina::StringViewBase< C, STDS >::empty ( ) const
inlinenoexcept

◆ end()

template<class C, class STDS>
iterator maquina::StringViewBase< C, STDS >::end ( ) const
inlinenoexcept

◆ find() [1/2]

template<class C, class STDS>
size_type maquina::StringViewBase< C, STDS >::find ( value_type  c,
size_type  pos = 0 
) const
inlinenoexcept

◆ find() [2/2]

template<class C, class STDS>
size_type maquina::StringViewBase< C, STDS >::find ( const StringViewBase< C, STDS > &  pattern,
size_type  pos = 0 
) const
inlinenoexcept

◆ length()

template<class C, class STDS>
size_type maquina::StringViewBase< C, STDS >::length ( ) const
inlinenoexcept

◆ operator STDS()

template<class C, class STDS>
maquina::StringViewBase< C, STDS >::operator STDS ( ) const
inline

◆ operator!=()

template<class C, class STDS>
bool maquina::StringViewBase< C, STDS >::operator!= ( const StringViewBase< C, STDS > &  other) const
inlinenoexcept

◆ operator=() [1/3]

template<class C, class STDS>
StringViewBase& maquina::StringViewBase< C, STDS >::operator= ( const StringViewBase< C, STDS > &  other)
defaultnoexcept

◆ operator=() [2/3]

template<class C, class STDS>
StringViewBase& maquina::StringViewBase< C, STDS >::operator= ( StringViewBase< C, STDS > &&  other)
inlinenoexcept

◆ operator=() [3/3]

template<class C, class STDS>
StringViewBase& maquina::StringViewBase< C, STDS >::operator= ( const std::basic_string< C > &  string)
inlinenoexcept

◆ operator==()

template<class C, class STDS>
bool maquina::StringViewBase< C, STDS >::operator== ( const StringViewBase< C, STDS > &  other) const
inlinenoexcept

◆ operator[]()

template<class C, class STDS>
value_type maquina::StringViewBase< C, STDS >::operator[] ( size_type  position) const
inline

◆ rfind() [1/2]

template<class C, class STDS>
size_type maquina::StringViewBase< C, STDS >::rfind ( value_type  c,
size_type  pos = npos 
) const
inlinenoexcept

◆ rfind() [2/2]

template<class C, class STDS>
size_type maquina::StringViewBase< C, STDS >::rfind ( const StringViewBase< C, STDS > &  pattern,
size_type  pos = npos 
) const
inlinenoexcept

◆ size()

template<class C, class STDS>
size_type maquina::StringViewBase< C, STDS >::size ( ) const
inlinenoexcept

◆ split()

template<class C, class STDS>
std::vector< STDS > maquina::StringViewBase< C, STDS >::split ( StringViewBase< C, STDS >  separator) const
inline

◆ substr()

template<class C, class STDS>
STDS maquina::StringViewBase< C, STDS >::substr ( size_type  pos = 0,
size_type  n = npos 
) const
inline

Member Data Documentation

◆ _size

template<class C, class STDS>
size_type maquina::StringViewBase< C, STDS >::_size
protected

◆ _str

template<class C, class STDS>
const value_type* maquina::StringViewBase< C, STDS >::_str
protected

◆ npos

template<class C, class STDS>
const size_type maquina::StringViewBase< C, STDS >::npos = size_type(-1)
static

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