CartoType C++ API 7.8.2, 2022-03-25
for Windows, Linux, Qt and other platforms supporting C++ development
Public Member Functions | List of all members
CartoType::TWritableText Class Reference

#include <cartotype_string.h>

Inheritance diagram for CartoType::TWritableText:
CartoType::MString

Public Member Functions

 TWritableText ()
 
 TWritableText (uint16_t *aText, size_t aLength)
 
const uint16_t * Text () const
 
- Public Member Functions inherited from CartoType::MString
virtual ~MString ()
 
template<typename T >
MStringoperator= (const T &aText)
 
template<typename T >
MStringoperator+= (const T &aText)
 
size_t Length () const
 
bool IsEmpty () const
 
virtual const uint16_t * Text () const =0
 
void Delete (size_t aStart, size_t aEnd)
 
void Clear ()
 
void SetLengthToZero ()
 
std::basic_string< uint16_t > CreateUtf16String () const
 
std::string CreateUtf8String () const
 
 operator std::string () const
 
uint16_t operator[] (size_t aIndex) const
 
TText First (size_t aLength) const
 
TText Last (size_t aLength) const
 
void DeletePrefix (const MString &aPrefix)
 
void DeleteSuffix (const MString &aSuffix)
 
void SetCase (TLetterCase aCase, const CStringTypeDictionary *aTitleCaseDictionary=0)
 
void SetSentenceCase ()
 
int32_t Compare (MIter< int32_t > &aIter, TStringMatchMethod aStringMatchMethod) const noexcept
 
TResult Replace (size_t aStart, size_t aEnd, MIter< int32_t > &aText, size_t aMaxLength)
 
int32_t Compare (const MString &aString) const
 
int32_t Compare (const MString &aString, TStringMatchMethod aStringMatchMethod) const noexcept
 
size_t Find (const MString &aString, TStringMatchMethod aStringMatchMethod=TStringMatchMethod::Exact, size_t *aEndPos=nullptr) const noexcept
 
void Replace (size_t aStart, size_t aEnd, const MString &aString)
 
void Insert (size_t aIndex, const MString &aString)
 
void Append (const MString &aString)
 
void AppendCommaSeparated (const CString &aLabel, const CString &aText, size_t &aItems, size_t aMaxItems=SIZE_MAX)
 
void Set (const MString &aString)
 
int32_t Compare (const uint16_t *aText) const
 
int32_t Compare (const uint16_t *aText, size_t aLength) const
 
int32_t Compare (const char16_t *aText, size_t aLength=npos) const
 
int32_t Compare (const uint16_t *aText, size_t aLength, TStringMatchMethod aStringMatchMethod) const noexcept
 
void Replace (size_t aStart, size_t aEnd, const uint16_t *aText, size_t aLength=npos)
 
void Insert (size_t aIndex, const uint16_t *aText, size_t aLength=npos)
 
void Append (const uint16_t *aText, size_t aLength=npos)
 
void Set (const uint16_t *aText, size_t aLength=npos)
 
int32_t Compare (const char *aText, size_t aLength=npos, TStringMatchMethod aStringMatchMethod=TStringMatchMethod::Exact) const noexcept
 
int32_t CompareExact (const char *aText, size_t aLength=npos) const noexcept
 
int32_t CompareFoldCase (const char *aText, size_t aLength=npos) const noexcept
 
void Replace (size_t aStart, size_t aEnd, const char *aText, size_t aLength=npos, int32_t aCodePage=0)
 
bool operator== (const char *aText) const noexcept
 
bool operator% (const char *aText) const noexcept
 
bool operator!= (const char *aText) const
 
void Insert (size_t aIndex, const char *aText, size_t aLength=npos, int32_t aCodePage=0)
 
void Append (const char *aText, size_t aLength=npos, int32_t aCodePage=0)
 
template<typename T >
void Append (const std::basic_string< T > aString)
 
template<typename T >
void Set (const std::basic_string< T > aString)
 
void Set (const char *aText, size_t aLength=npos)
 
void Set (const char *aText, size_t aLength, int32_t aCodePage)
 
void Replace (size_t aStart, size_t aEnd, uint16_t aChar)
 
void Insert (size_t aIndex, uint16_t aChar)
 
void Append (uint16_t aChar)
 
void Set (uint16_t aChar)
 
void Trim ()
 
bool operator== (const MString &aString) const
 
bool operator== (const uint16_t *aText) const
 
bool operator== (const char16_t *aText) const
 
bool operator!= (const MString &aString) const
 
bool operator!= (const uint16_t *aText) const
 
bool operator!= (const char16_t *aText) const
 
bool operator% (const MString &aString) const
 
bool operator% (const uint16_t *aText) const
 
bool WildMatch (const MString &aWildText) const noexcept
 
bool WildMatch (const char *aWildText) const noexcept
 
bool LayerMatch (const MString &aWildText) const
 
bool LayerMatch (const char *aWildText) const noexcept
 
template<class T >
bool operator< (const T &aOther) const
 
template<class T >
bool operator<= (const T &aOther) const
 
template<class T >
bool operator> (const T &aOther) const
 
template<class T >
bool operator>= (const T &aOther) const
 
int32_t ToInt32 (size_t *aLengthUsed=nullptr, int32_t aBase=10) const noexcept
 
int64_t ToInt64 (size_t *aLengthUsed=nullptr, int32_t aBase=10) const noexcept
 
uint32_t ToUint32 (size_t *aLengthUsed=nullptr, int32_t aBase=10) const noexcept
 
double ToDouble (size_t *aLengthUsed=nullptr) const noexcept
 
double ToDimension (size_t *aLengthUsed=nullptr) const noexcept
 
void Shape (TBidiParDir aParDir, CBidiEngine *aBidiEngine, bool aParStart, bool aReorderFontSelectors)
 
void Abbreviate (const CAbbreviationDictionary &aDictionary)
 
void Transliterate (const CStringTypeDictionary *aTitleCaseDictionary=nullptr, const char *aLocale=nullptr)
 
bool IsLineBreak (size_t aPos) const noexcept
 
size_t LineBreakBefore (size_t aPos) const noexcept
 
size_t LineBreakAfter (size_t aPos) const noexcept
 
void SetAttribute (const MString &aKey, const MString &aValue)
 
void SetAttribute (const CString &aKey, const CString &aValue)
 
TText GetAttribute (const MString &aKey) const noexcept
 
TText GetAttribute (const CString &aKey) const noexcept
 
bool NextAttribute (size_t &aPos, TText &aKey, TText &aValue) const noexcept
 

Additional Inherited Members

- Static Public Member Functions inherited from CartoType::MString
static int32_t Compare (MIter< int32_t > &aIter1, MIter< int32_t > &aIter2, TStringMatchMethod aStringMatchMethod) noexcept
 
static bool FuzzyMatch (MIter< int32_t > &aIter1, MIter< int32_t > &aIter2, int32_t aMaxDistance) noexcept
 
static bool FuzzyMatch (const char *aText1, const char *aText2, int32_t aMaxDistance) noexcept
 
static int32_t ToInt32 (const uint8_t *aText, size_t aLength, size_t *aLengthUsed=nullptr, int32_t aBase=10) noexcept
 
- Static Public Attributes inherited from CartoType::MString
static constexpr int KMaxFuzzyDistance = 4
 
- Protected Member Functions inherited from CartoType::MString
 MString ()
 
 MString (size_t aLength)
 
- Protected Attributes inherited from CartoType::MString
size_t iLength
 

Detailed Description

A writable string that doesn't own its text.

Constructor & Destructor Documentation

◆ TWritableText() [1/2]

CartoType::TWritableText::TWritableText ( )
inline

Creates an empty TWritableText object.

◆ TWritableText() [2/2]

CartoType::TWritableText::TWritableText ( uint16_t *  aText,
size_t  aLength 
)
inline

Creates a TWritableText object to access aLength 16-bit characters starting at aText.

Member Function Documentation

◆ Text()

const uint16_t * CartoType::TWritableText::Text ( ) const
inlinevirtual

Returns a constant pointer to Unicode text stored in UTF16 format.

Implements CartoType::MString.


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