NeKernel dev
Loading...
Searching...
No Matches
Kernel::KBasicString< CharKind, MinSz > Class Template Referencefinal

Kernel string class, not dynamic. More...

#include <KString.h>

Public Member Functions

 KBasicString ()
 KBasicString (SizeT Sz)
 ~KBasicString ()
CharKind * Data ()
const CharKind * CData () const
Size Length () const
bool operator== (const CharKind *rhs) const
bool operator!= (const CharKind *rhs) const
bool operator== (const KBasicString< CharKind, MinSz > &rhs) const
bool operator!= (const KBasicString< CharKind, MinSz > &rhs) const
KBasicString< CharKind, MinSz > & operator+= (const CharKind *rhs)
KBasicString< CharKind, MinSz > & operator+= (const KBasicString< CharKind, MinSz > &rhs)
 operator const char * ()
 operator bool ()
bool operator! ()

Private Attributes

CharKind * fData {nullptr}
Size fDataSz {0}
Size fCur {0}

Friends

class KStringBuilder

Detailed Description

template<typename CharKind = Char, Int MinSz = kMinimumStringSize>
class Kernel::KBasicString< CharKind, MinSz >

Kernel string class, not dynamic.

Constructor & Destructor Documentation

◆ KBasicString() [1/2]

template<typename CharKind = Char, Int MinSz = kMinimumStringSize>
Kernel::KBasicString< CharKind, MinSz >::KBasicString ( )
inlineexplicit

◆ KBasicString() [2/2]

template<typename CharKind = Char, Int MinSz = kMinimumStringSize>
Kernel::KBasicString< CharKind, MinSz >::KBasicString ( SizeT Sz)
inlineexplicit

◆ ~KBasicString()

template<typename CharKind = Char, Int MinSz = kMinimumStringSize>
Kernel::KBasicString< CharKind, MinSz >::~KBasicString ( )
inline

Member Function Documentation

◆ CData()

template<typename CharKind, Int MinSz>
const CharKind * Kernel::KBasicString< CharKind, MinSz >::CData ( ) const
inline

◆ Data()

template<typename CharKind, Int MinSz>
CharKind * Kernel::KBasicString< CharKind, MinSz >::Data ( )
inline

◆ Length()

template<typename CharKind, Int MinSz>
SizeT Kernel::KBasicString< CharKind, MinSz >::Length ( ) const
inline

◆ operator bool()

template<typename CharKind = Char, Int MinSz = kMinimumStringSize>
Kernel::KBasicString< CharKind, MinSz >::operator bool ( )
inlineexplicit

◆ operator const char *()

template<typename CharKind = Char, Int MinSz = kMinimumStringSize>
Kernel::KBasicString< CharKind, MinSz >::operator const char * ( )
inline

◆ operator!()

template<typename CharKind = Char, Int MinSz = kMinimumStringSize>
bool Kernel::KBasicString< CharKind, MinSz >::operator! ( )
inline

◆ operator!=() [1/2]

template<typename CharKind, Int MinSz>
bool Kernel::KBasicString< CharKind, MinSz >::operator!= ( const CharKind * rhs) const
inline

◆ operator!=() [2/2]

template<typename CharKind, Int MinSz>
bool Kernel::KBasicString< CharKind, MinSz >::operator!= ( const KBasicString< CharKind, MinSz > & rhs) const
inline

◆ operator+=() [1/2]

template<typename CharKind, Int MinSz>
KBasicString< CharKind, MinSz > & Kernel::KBasicString< CharKind, MinSz >::operator+= ( const CharKind * rhs)
inline

◆ operator+=() [2/2]

template<typename CharKind, Int MinSz>
KBasicString< CharKind, MinSz > & Kernel::KBasicString< CharKind, MinSz >::operator+= ( const KBasicString< CharKind, MinSz > & rhs)
inline

◆ operator==() [1/2]

template<typename CharKind, Int MinSz>
bool Kernel::KBasicString< CharKind, MinSz >::operator== ( const CharKind * rhs) const
inline

◆ operator==() [2/2]

template<typename CharKind, Int MinSz>
bool Kernel::KBasicString< CharKind, MinSz >::operator== ( const KBasicString< CharKind, MinSz > & rhs) const
inline

◆ KStringBuilder

template<typename CharKind = Char, Int MinSz = kMinimumStringSize>
friend class KStringBuilder
friend

Member Data Documentation

◆ fCur

template<typename CharKind = Char, Int MinSz = kMinimumStringSize>
Size Kernel::KBasicString< CharKind, MinSz >::fCur {0}
private

◆ fData

template<typename CharKind = Char, Int MinSz = kMinimumStringSize>
CharKind* Kernel::KBasicString< CharKind, MinSz >::fData {nullptr}
private

◆ fDataSz

template<typename CharKind = Char, Int MinSz = kMinimumStringSize>
Size Kernel::KBasicString< CharKind, MinSz >::fDataSz {0}
private

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