Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
QUnicodeTables Namespace Reference

Classes

struct  CaseConversion
struct  IdnaMapEntry
struct  NormalizationCorrection
struct  Properties

Enumerations

enum  Case {
  LowerCase , UpperCase , TitleCase , CaseFold ,
  NumCases
}
enum class  EastAsianWidth : unsigned int {
  A , F , H , N ,
  Na , W
}
enum  GraphemeBreakClass {
  GraphemeBreak_Any , GraphemeBreak_CR , GraphemeBreak_LF , GraphemeBreak_Control ,
  GraphemeBreak_Extend , GraphemeBreak_ZWJ , GraphemeBreak_RegionalIndicator , GraphemeBreak_Prepend ,
  GraphemeBreak_SpacingMark , GraphemeBreak_L , GraphemeBreak_V , GraphemeBreak_T ,
  GraphemeBreak_LV , GraphemeBreak_LVT , GraphemeBreak_Extended_Pictographic , NumGraphemeBreakClasses
}
enum  WordBreakClass {
  WordBreak_Any , WordBreak_CR , WordBreak_LF , WordBreak_Newline ,
  WordBreak_Extend , WordBreak_ZWJ , WordBreak_Format , WordBreak_RegionalIndicator ,
  WordBreak_Katakana , WordBreak_HebrewLetter , WordBreak_ALetter , WordBreak_SingleQuote ,
  WordBreak_DoubleQuote , WordBreak_MidNumLet , WordBreak_MidLetter , WordBreak_MidNum ,
  WordBreak_Numeric , WordBreak_ExtendNumLet , WordBreak_WSegSpace , NumWordBreakClasses
}
enum  SentenceBreakClass {
  SentenceBreak_Any , SentenceBreak_CR , SentenceBreak_LF , SentenceBreak_Sep ,
  SentenceBreak_Extend , SentenceBreak_Sp , SentenceBreak_Lower , SentenceBreak_Upper ,
  SentenceBreak_OLetter , SentenceBreak_Numeric , SentenceBreak_ATerm , SentenceBreak_SContinue ,
  SentenceBreak_STerm , SentenceBreak_Close , NumSentenceBreakClasses
}
enum  LineBreakClass {
  LineBreak_OP , LineBreak_CL , LineBreak_CP , LineBreak_QU ,
  LineBreak_QU_Pi , LineBreak_QU_Pf , LineBreak_QU_19 , LineBreak_GL ,
  LineBreak_NS , LineBreak_EX , LineBreak_SY , LineBreak_IS ,
  LineBreak_PR , LineBreak_PO , LineBreak_NU , LineBreak_AL ,
  LineBreak_HL , LineBreak_ID , LineBreak_IN , LineBreak_HY ,
  LineBreak_WS_HY , LineBreak_BA , LineBreak_WS_BA , LineBreak_HYBA ,
  LineBreak_BB , LineBreak_B2 , LineBreak_ZW , LineBreak_CM ,
  LineBreak_WJ , LineBreak_H2 , LineBreak_H3 , LineBreak_JL ,
  LineBreak_JV , LineBreak_JT , LineBreak_RI , LineBreak_CB ,
  LineBreak_EB , LineBreak_EM , LineBreak_AK , LineBreak_AP ,
  LineBreak_AS , LineBreak_VI , LineBreak_VF , LineBreak_ZWJ ,
  LineBreak_SA , LineBreak_SG , LineBreak_SP , LineBreak_CR ,
  LineBreak_LF , LineBreak_BK , NumLineBreakClasses
}
enum class  IdnaStatus : unsigned int {
  Disallowed , Valid , Ignored , Mapped ,
  Deviation
}
enum class  EmojiFlags : uchar {
  NoEmoji = 0 , Emoji = 1 , Emoji_Presentation = 2 , Emoji_Modifier = 4 ,
  Emoji_Modifier_Base = 8 , Emoji_Component = 16
}
enum  { NumNormalizationCorrections = 6 , NumNormalizationCorrections = 6 }
enum  { NormalizationCorrectionsVersionMax = 7 , NormalizationCorrectionsVersionMax = 7 }
enum  { NumNormalizationCorrections = 6 , NumNormalizationCorrections = 6 }
enum  { NormalizationCorrectionsVersionMax = 7 , NormalizationCorrectionsVersionMax = 7 }

Functions

Q_DECL_CONST_FUNCTION Q_CORE_EXPORT const Properties *QT_FASTCALL properties (char32_t ucs4) noexcept
Q_DECL_CONST_FUNCTION Q_CORE_EXPORT QSpan< const CaseConversion, NumCases > QT_FASTCALL caseConversion (char32_t ucs4) noexcept
Q_CORE_EXPORT GraphemeBreakClass QT_FASTCALL graphemeBreakClass (char32_t ucs4) noexcept
GraphemeBreakClass graphemeBreakClass (QChar ch) noexcept
Q_CORE_EXPORT WordBreakClass QT_FASTCALL wordBreakClass (char32_t ucs4) noexcept
WordBreakClass wordBreakClass (QChar ch) noexcept
Q_CORE_EXPORT SentenceBreakClass QT_FASTCALL sentenceBreakClass (char32_t ucs4) noexcept
SentenceBreakClass sentenceBreakClass (QChar ch) noexcept
Q_CORE_EXPORT LineBreakClass QT_FASTCALL lineBreakClass (char32_t ucs4) noexcept
LineBreakClass lineBreakClass (QChar ch) noexcept
Q_CORE_EXPORT IdnaStatus QT_FASTCALL idnaStatus (char32_t ucs4) noexcept
IdnaStatus idnaStatus (QChar ch) noexcept
Q_CORE_EXPORT QStringView QT_FASTCALL idnaMapping (char32_t usc4) noexcept
QStringView idnaMapping (QChar ch) noexcept
Q_CORE_EXPORT EastAsianWidth QT_FASTCALL eastAsianWidth (char32_t ucs4) noexcept
EastAsianWidth eastAsianWidth (QChar ch) noexcept
static Q_DECL_CONST_FUNCTION Q_ALWAYS_INLINE const PropertiesqGetProp (char32_t ucs4) noexcept
template<typename T>
static Q_NEVER_INLINE QString detachAndConvertCase (T &str, QStringIterator it, QUnicodeTables::Case which)
template<typename T>
static QString convertCase (T &str, QUnicodeTables::Case which)

Variables

static constexpr char32_t MaxSeparatorCodepoint = 0x3000
static constexpr unsigned short uc_property_trie []
static constexpr Properties uc_properties []
static constexpr unsigned short specialCaseMap []
constexpr unsigned int MaxSpecialCaseLength = 3
static constexpr unsigned short uc_decomposition_trie []
static constexpr unsigned short uc_decomposition_map []
static constexpr unsigned short uc_ligature_trie []
static constexpr unsigned short uc_ligature_map []
static constexpr NormalizationCorrection uc_normalization_corrections []
static constexpr char16_t idnaMappingData []
static constexpr IdnaMapEntry idnaMap []

Enumeration Type Documentation

◆ anonymous enum [1/2]

anonymous enum
Enumerator
NormalizationCorrectionsVersionMax 
NormalizationCorrectionsVersionMax 

Definition at line 15948 of file qunicodetables.cpp.

◆ anonymous enum [2/2]

anonymous enum
Enumerator
NormalizationCorrectionsVersionMax 
NormalizationCorrectionsVersionMax 

Definition at line 15948 of file qunicodetables.cpp.

◆ anonymous enum [1/2]

anonymous enum
Enumerator
NumNormalizationCorrections 
NumNormalizationCorrections 

Definition at line 15947 of file qunicodetables.cpp.

◆ anonymous enum [2/2]

anonymous enum
Enumerator
NumNormalizationCorrections 
NumNormalizationCorrections 

Definition at line 15947 of file qunicodetables.cpp.

◆ Case

Enumerator
LowerCase 
UpperCase 
TitleCase 
CaseFold 
NumCases 

Definition at line 35 of file qunicodetables_p.h.

◆ EastAsianWidth

enum class QUnicodeTables::EastAsianWidth : unsigned int
strong
Enumerator
Na 

Definition at line 77 of file qunicodetables_p.h.

◆ EmojiFlags

enum class QUnicodeTables::EmojiFlags : uchar
strong
Enumerator
NoEmoji 
Emoji 
Emoji_Presentation 
Emoji_Modifier 
Emoji_Modifier_Base 
Emoji_Component 

Definition at line 184 of file qunicodetables_p.h.

◆ GraphemeBreakClass

Enumerator
GraphemeBreak_Any 
GraphemeBreak_CR 
GraphemeBreak_LF 
GraphemeBreak_Control 
GraphemeBreak_Extend 
GraphemeBreak_ZWJ 
GraphemeBreak_RegionalIndicator 
GraphemeBreak_Prepend 
GraphemeBreak_SpacingMark 
GraphemeBreak_L 
GraphemeBreak_V 
GraphemeBreak_T 
GraphemeBreak_LV 
GraphemeBreak_LVT 
GraphemeBreak_Extended_Pictographic 
NumGraphemeBreakClasses 

Definition at line 86 of file qunicodetables_p.h.

◆ IdnaStatus

enum class QUnicodeTables::IdnaStatus : unsigned int
strong
Enumerator
Disallowed 
Valid 
Ignored 
Mapped 
Deviation 

Definition at line 176 of file qunicodetables_p.h.

◆ LineBreakClass

Enumerator
LineBreak_OP 
LineBreak_CL 
LineBreak_CP 
LineBreak_QU 
LineBreak_QU_Pi 
LineBreak_QU_Pf 
LineBreak_QU_19 
LineBreak_GL 
LineBreak_NS 
LineBreak_EX 
LineBreak_SY 
LineBreak_IS 
LineBreak_PR 
LineBreak_PO 
LineBreak_NU 
LineBreak_AL 
LineBreak_HL 
LineBreak_ID 
LineBreak_IN 
LineBreak_HY 
LineBreak_WS_HY 
LineBreak_BA 
LineBreak_WS_BA 
LineBreak_HYBA 
LineBreak_BB 
LineBreak_B2 
LineBreak_ZW 
LineBreak_CM 
LineBreak_WJ 
LineBreak_H2 
LineBreak_H3 
LineBreak_JL 
LineBreak_JV 
LineBreak_JT 
LineBreak_RI 
LineBreak_CB 
LineBreak_EB 
LineBreak_EM 
LineBreak_AK 
LineBreak_AP 
LineBreak_AS 
LineBreak_VI 
LineBreak_VF 
LineBreak_ZWJ 
LineBreak_SA 
LineBreak_SG 
LineBreak_SP 
LineBreak_CR 
LineBreak_LF 
LineBreak_BK 
NumLineBreakClasses 

Definition at line 152 of file qunicodetables_p.h.

◆ SentenceBreakClass

Enumerator
SentenceBreak_Any 
SentenceBreak_CR 
SentenceBreak_LF 
SentenceBreak_Sep 
SentenceBreak_Extend 
SentenceBreak_Sp 
SentenceBreak_Lower 
SentenceBreak_Upper 
SentenceBreak_OLetter 
SentenceBreak_Numeric 
SentenceBreak_ATerm 
SentenceBreak_SContinue 
SentenceBreak_STerm 
SentenceBreak_Close 
NumSentenceBreakClasses 

Definition at line 130 of file qunicodetables_p.h.

◆ WordBreakClass

Enumerator
WordBreak_Any 
WordBreak_CR 
WordBreak_LF 
WordBreak_Newline 
WordBreak_Extend 
WordBreak_ZWJ 
WordBreak_Format 
WordBreak_RegionalIndicator 
WordBreak_Katakana 
WordBreak_HebrewLetter 
WordBreak_ALetter 
WordBreak_SingleQuote 
WordBreak_DoubleQuote 
WordBreak_MidNumLet 
WordBreak_MidLetter 
WordBreak_MidNum 
WordBreak_Numeric 
WordBreak_ExtendNumLet 
WordBreak_WSegSpace 
NumWordBreakClasses 

Definition at line 106 of file qunicodetables_p.h.

Function Documentation

◆ caseConversion()

QSpan< const CaseConversion, NumCases > QT_FASTCALL QUnicodeTables::caseConversion ( char32_t ucs4)
noexcept

Definition at line 10853 of file qunicodetables.cpp.

◆ convertCase()

template<typename T>
QString QUnicodeTables::convertCase ( T & str,
QUnicodeTables::Case which )
static

Definition at line 7272 of file qstring.cpp.

References QStringIterator::hasNext(), QStringIterator::next(), and QStringIterator::recede().

Here is the call graph for this function:

◆ detachAndConvertCase()

template<typename T>
Q_NEVER_INLINE QString QUnicodeTables::detachAndConvertCase ( T & str,
QStringIterator it,
QUnicodeTables::Case which )
static

Definition at line 7237 of file qstring.cpp.

◆ eastAsianWidth() [1/2]

Q_CORE_EXPORT EastAsianWidth QT_FASTCALL QUnicodeTables::eastAsianWidth ( char32_t ucs4)
noexcept

Definition at line 10883 of file qunicodetables.cpp.

◆ eastAsianWidth() [2/2]

EastAsianWidth QUnicodeTables::eastAsianWidth ( QChar ch)
inlinenoexcept

Definition at line 218 of file qunicodetables_p.h.

◆ graphemeBreakClass() [1/2]

Q_CORE_EXPORT GraphemeBreakClass QT_FASTCALL QUnicodeTables::graphemeBreakClass ( char32_t ucs4)
noexcept

Definition at line 10858 of file qunicodetables.cpp.

◆ graphemeBreakClass() [2/2]

GraphemeBreakClass QUnicodeTables::graphemeBreakClass ( QChar ch)
inlinenoexcept

Definition at line 194 of file qunicodetables_p.h.

◆ idnaMapping() [1/2]

Q_CORE_EXPORT QStringView QT_FASTCALL QUnicodeTables::idnaMapping ( char32_t usc4)
noexcept

Definition at line 22399 of file qunicodetables.cpp.

◆ idnaMapping() [2/2]

QStringView QUnicodeTables::idnaMapping ( QChar ch)
inlinenoexcept

Definition at line 214 of file qunicodetables_p.h.

◆ idnaStatus() [1/2]

Q_CORE_EXPORT IdnaStatus QT_FASTCALL QUnicodeTables::idnaStatus ( char32_t ucs4)
noexcept

Definition at line 10878 of file qunicodetables.cpp.

◆ idnaStatus() [2/2]

IdnaStatus QUnicodeTables::idnaStatus ( QChar ch)
inlinenoexcept

Definition at line 210 of file qunicodetables_p.h.

◆ lineBreakClass() [1/2]

Q_CORE_EXPORT LineBreakClass QT_FASTCALL QUnicodeTables::lineBreakClass ( char32_t ucs4)
noexcept

Definition at line 10873 of file qunicodetables.cpp.

◆ lineBreakClass() [2/2]

LineBreakClass QUnicodeTables::lineBreakClass ( QChar ch)
inlinenoexcept

Definition at line 206 of file qunicodetables_p.h.

◆ properties()

const Properties *QT_FASTCALL QUnicodeTables::properties ( char32_t ucs4)
noexcept

Definition at line 10848 of file qunicodetables.cpp.

◆ qGetProp()

Q_DECL_CONST_FUNCTION Q_ALWAYS_INLINE const Properties * QUnicodeTables::qGetProp ( char32_t ucs4)
staticnoexcept

Definition at line 10838 of file qunicodetables.cpp.

References uc_properties, and uc_property_trie.

Referenced by canonicalOrderHelper(), composeHelper(), and normalizationQuickCheckHelper().

Here is the caller graph for this function:

◆ sentenceBreakClass() [1/2]

Q_CORE_EXPORT SentenceBreakClass QT_FASTCALL QUnicodeTables::sentenceBreakClass ( char32_t ucs4)
noexcept

Definition at line 10868 of file qunicodetables.cpp.

◆ sentenceBreakClass() [2/2]

SentenceBreakClass QUnicodeTables::sentenceBreakClass ( QChar ch)
inlinenoexcept

Definition at line 202 of file qunicodetables_p.h.

◆ wordBreakClass() [1/2]

Q_CORE_EXPORT WordBreakClass QT_FASTCALL QUnicodeTables::wordBreakClass ( char32_t ucs4)
noexcept

Definition at line 10863 of file qunicodetables.cpp.

◆ wordBreakClass() [2/2]

WordBreakClass QUnicodeTables::wordBreakClass ( QChar ch)
inlinenoexcept

Definition at line 198 of file qunicodetables_p.h.

Variable Documentation

◆ idnaMap

constexpr IdnaMapEntry QUnicodeTables::idnaMap
staticconstexpr

Definition at line 16072 of file qunicodetables.cpp.

◆ idnaMappingData

constexpr char16_t QUnicodeTables::idnaMappingData
staticconstexpr

Definition at line 15950 of file qunicodetables.cpp.

◆ MaxSeparatorCodepoint

constexpr char32_t QUnicodeTables::MaxSeparatorCodepoint = 0x3000
staticconstexpr

Definition at line 12 of file qunicodetables.cpp.

◆ MaxSpecialCaseLength

unsigned int QUnicodeTables::MaxSpecialCaseLength = 3
constexpr

Definition at line 11199 of file qunicodetables.cpp.

Referenced by fullConvertCase().

◆ specialCaseMap

constexpr unsigned short QUnicodeTables::specialCaseMap
staticconstexpr

Definition at line 10888 of file qunicodetables.cpp.

Referenced by fullConvertCase().

◆ uc_decomposition_map

constexpr unsigned short QUnicodeTables::uc_decomposition_map
staticconstexpr

Definition at line 13286 of file qunicodetables.cpp.

◆ uc_decomposition_trie

constexpr unsigned short QUnicodeTables::uc_decomposition_trie
staticconstexpr

Definition at line 11201 of file qunicodetables.cpp.

◆ uc_ligature_map

constexpr unsigned short QUnicodeTables::uc_ligature_map
staticconstexpr

Definition at line 15672 of file qunicodetables.cpp.

Referenced by ligatureHelper().

◆ uc_ligature_trie

constexpr unsigned short QUnicodeTables::uc_ligature_trie
staticconstexpr

Definition at line 15147 of file qunicodetables.cpp.

◆ uc_normalization_corrections

constexpr NormalizationCorrection QUnicodeTables::uc_normalization_corrections
staticconstexpr
Initial value:
= {
{ 0xf951, 0x96fb, 6 },
{ 0x2f868, 0x2136a, 7 },
{ 0x2f874, 0x5f33, 7 },
{ 0x2f91f, 0x43ab, 7 },
{ 0x2f95f, 0x7aae, 7 },
{ 0x2f9bf, 0x4d57, 7 }
}

Definition at line 15938 of file qunicodetables.cpp.

Referenced by qt_string_normalize().

◆ uc_properties

constexpr Properties QUnicodeTables::uc_properties
staticconstexpr

Definition at line 7462 of file qunicodetables.cpp.

Referenced by qGetProp().

◆ uc_property_trie

constexpr unsigned short QUnicodeTables::uc_property_trie
staticconstexpr

Definition at line 14 of file qunicodetables.cpp.

Referenced by qGetProp().