12 #ifndef __UT_IDNANAME_H__
13 #define __UT_IDNANAME_H__
43 bool isEmpty() const noexcept {
return myALabel.isEmpty(); }
50 if (myULabelCache == myALabel)
54 str.
format(
"{} ({})", myULabelCache, myALabel);
60 return myALabel.equal(other.myALabel,
true);
64 return !(*
this == other);
71 return h.alabel().toLower().hash();
76 void ensureULabel_()
const;
80 mutable bool myULabelCached =
false;
95 #endif // __UT_IDNANAME_H__
const UT_StringHolder & alabel() const noexcept
const UT_StringHolder & name() const noexcept
bool operator!=(const UT_IdnaName &other) const noexcept
const UT_StringHolder & ulabel() const
size_t operator()(const UT_IdnaName &h) const noexcept
GLuint const GLchar * name
size_t format(const char *fmt, const Args &...args)
Format a string using the same formatting codes as UTformat.
bool isEmpty() const noexcept
size_t operator()(const UT_IdnaName &h) const noexcept
std::error_code UT_ErrorCode
GLfloat GLfloat GLfloat GLfloat h
const UT_StringHolder & display() const
UT_StringHolder full() const
bool operator==(const UT_IdnaName &other) const noexcept