46 #if defined(QT_NO_CAST_FROM_ASCII) && defined(QT_RESTRICTED_CAST_FROM_ASCII)
47 #error QT_NO_CAST_FROM_ASCII and QT_RESTRICTED_CAST_FROM_ASCII must not be defined at the same time
50 #include <QtCore/qchar.h>
51 #include <QtCore/qbytearray.h>
52 #include <QtCore/qarraydata.h>
53 #include <QtCore/qnamespace.h>
54 #include <QtCore/qstringliteral.h>
55 #include <QtCore/qstringalgorithms.h>
56 #include <QtCore/qanystringview.h>
57 #include <QtCore/qstringtokenizer.h>
65 #error qstring.h must be included before any header file that defines truncate
68 #if defined(Q_OS_DARWIN) || defined(Q_QDOC)
86 constexpr
inline QLatin1String() noexcept : m_size(0), m_data(
nullptr) {}
96 constexpr
const char *
latin1()
const noexcept {
return m_data; }
98 constexpr
const char *
data()
const noexcept {
return m_data; }
103 template <
typename...Args>
196 if (
size_t(
n) >=
size_t(
size()))
202 if (
size_t(
n) >=
size_t(
size()))
219 { verify(
n); m_size -=
n; }
221 { verify(
n); m_size =
n; }
225 template <
typename Needle,
typename...Flags>
229 {
return qTokenize(*
this, std::forward<Needle>(needle),
flags...); }
232 {
return s1.size() ==
s2.size() && (!
s1.size() || !memcmp(
s1.latin1(),
s2.latin1(),
s1.size())); }
234 {
return !(
s1 ==
s2); }
238 const int r =
len ? memcmp(
s1.latin1(),
s2.latin1(),
len) : 0;
239 return r < 0 || (
r == 0 &&
s1.size() <
s2.size());
244 {
return !(
s1 >
s2); }
246 {
return !(
s1 <
s2); }
281 #if !defined(QT_NO_CAST_FROM_ASCII) && !defined(QT_RESTRICTED_CAST_FROM_ASCII)
282 QT_ASCII_CAST_WARN
inline bool operator==(
const char *
s)
const;
283 QT_ASCII_CAST_WARN
inline bool operator!=(
const char *
s)
const;
284 QT_ASCII_CAST_WARN
inline bool operator<(
const char *
s)
const;
285 QT_ASCII_CAST_WARN
inline bool operator>(
const char *
s)
const;
286 QT_ASCII_CAST_WARN
inline bool operator<=(
const char *
s)
const;
287 QT_ASCII_CAST_WARN
inline bool operator>=(
const char *
s)
const;
305 #if !defined(QT_NO_CAST_FROM_ASCII) && !defined(QT_RESTRICTED_CAST_FROM_ASCII)
315 Q_CORE_EXPORT
static int compare_helper(
const QChar *data1,
qsizetype length1,
356 constexpr
QLatin1String QAnyStringView::asLatin1StringView()
const
362 template <
typename Visitor>
366 return std::forward<Visitor>(
v)(asStringView());
368 return std::forward<Visitor>(
v)(asLatin1StringView());
370 return std::forward<Visitor>(
v)(asUtf8StringView());
379 return visit([] (
auto that) {
return QAnyStringView::toQChar(that.front()); });
383 return visit([] (
auto that) {
return QAnyStringView::toQChar(that.back()); });
393 inline constexpr
QString() noexcept;
398 #if defined(__cpp_char8_t) || defined(Q_CLANG_QDOC)
426 inline void squeeze();
428 inline const QChar *unicode()
const;
431 inline const QChar *constData()
const;
433 inline void detach();
434 inline bool isDetached()
const;
465 [[nodiscard]]
QString arg(
char a,
int fieldWidth = 0,
469 #if QT_STRINGVIEW_LEVEL < 2
478 template <
typename T>
479 struct is_convertible_to_view_or_qstring_helper
480 : std::integral_constant<bool,
481 std::is_convertible<T, QString>::value ||
482 std::is_convertible<T, QStringView>::value ||
483 std::is_convertible<T, QLatin1String>::value> {};
484 template <
typename T>
485 struct is_convertible_to_view_or_qstring
486 : is_convertible_to_view_or_qstring_helper<typename std::decay<T>::type> {};
488 template <
typename...Args>
493 typename std::enable_if<
494 sizeof...(Args) >= 2 && std::is_same<
504 static QString vasprintf(
const char *
format, va_list ap) Q_ATTRIBUTE_FORMAT_PRINTF(1, 0);
505 static QString asprintf(
const char *
format, ...) Q_ATTRIBUTE_FORMAT_PRINTF(1, 2);
509 #if QT_STRINGVIEW_LEVEL < 2
520 #if QT_STRINGVIEW_LEVEL < 2
532 #if QT_STRINGVIEW_LEVEL < 2
541 #if QT_CONFIG(regularexpression)
548 template <
typename T = QRegularExpressionMatch, std::enable_if_t<std::is_same_v<T, QRegularExpressionMatch>,
bool> = false>
559 SectionDefault = 0x00,
560 SectionSkipEmpty = 0x01,
561 SectionIncludeLeadingSep = 0x02,
562 SectionIncludeTrailingSep = 0x04,
563 SectionCaseInsensitiveSeps = 0x08
569 #if QT_CONFIG(regularexpression)
588 #if QT_STRINGVIEW_LEVEL < 2
596 #if QT_STRINGVIEW_LEVEL < 2
604 bool isUpper()
const;
605 bool isLower()
const;
610 #if !defined(Q_CLANG_QDOC)
612 {
return toLower_helper(*
this); }
614 {
return toLower_helper(*
this); }
616 {
return toUpper_helper(*
this); }
618 {
return toUpper_helper(*
this); }
620 {
return toCaseFolded_helper(*
this); }
622 {
return toCaseFolded_helper(*
this); }
624 {
return trimmed_helper(*
this); }
626 {
return trimmed_helper(*
this); }
628 {
return simplified_helper(*
this); }
630 {
return simplified_helper(*
this); }
633 [[nodiscard]]
QString toUpper()
const;
634 [[nodiscard]]
QString toCaseFolded()
const;
636 [[nodiscard]]
QString simplified()
const;
638 [[nodiscard]]
QString toHtmlEscaped()
const;
642 #if QT_STRINGVIEW_LEVEL < 2
650 #if QT_STRINGVIEW_LEVEL < 2
658 #if QT_STRINGVIEW_LEVEL < 2
666 #if QT_STRINGVIEW_LEVEL < 2
676 template <
typename Predicate>
694 #if QT_CONFIG(regularexpression)
697 {
return replace(re,
QString()); }
707 #ifndef QT_NO_REGULAREXPRESSION
713 template <
typename Needle,
typename...Flags>
719 template <
typename Needle,
typename...Flags>
723 {
return qTokenize(std::move(*
this), std::forward<Needle>(needle),
flags...); }
725 template <
typename Needle,
typename...Flags>
727 noexcept(noexcept(
qTokenize(std::declval<QString>(), std::forward<Needle>(needle),
flags...)))
728 -> decltype(
qTokenize(std::move(*
this), std::forward<Needle>(needle),
flags...))
729 {
return qTokenize(std::move(*
this), std::forward<Needle>(needle),
flags...); }
742 const ushort *utf16()
const;
744 #if !defined(Q_CLANG_QDOC)
746 {
return toLatin1_helper(*
this); }
748 {
return toLatin1_helper_inplace(*
this); }
750 {
return toUtf8_helper(*
this); }
752 {
return toUtf8_helper(*
this); }
754 {
return toLocal8Bit_helper(
isNull() ?
nullptr : constData(),
size()); }
756 {
return toLocal8Bit_helper(
isNull() ?
nullptr : constData(),
size()); }
779 #if defined(__cpp_char8_t) || defined(Q_CLANG_QDOC)
782 {
return fromUtf8(
reinterpret_cast<const char *
>(
str)); }
798 #if QT_DEPRECATED_SINCE(6, 0)
804 {
return fromUcs4(
reinterpret_cast<const char32_t *
>(
str),
size); }
814 #if QT_STRINGVIEW_LEVEL < 2
824 {
return s1.compare(
s2, cs); }
828 {
return s1.compare(
s2, cs); }
831 {
return -
s2.compare(
s1, cs); }
833 {
return s1.compare(
s2, cs); }
835 {
return -
s2.compare(
s1, cs); }
837 int localeAwareCompare(
const QString&
s)
const;
840 {
return s1.localeAwareCompare(
s2); }
845 {
return toIntegral_helper<short>(*
this,
ok,
base); }
847 {
return toIntegral_helper<ushort>(*
this,
ok,
base); }
849 {
return toIntegral_helper<int>(*
this,
ok,
base); }
851 {
return toIntegral_helper<uint>(*
this,
ok,
base); }
853 {
return toIntegral_helper<long>(*
this,
ok,
base); }
855 {
return toIntegral_helper<ulong>(*
this,
ok,
base); }
936 {
return rhs.size() == 1 && lhs ==
rhs.front(); }
938 {
return compare_helper(&lhs, 1,
rhs.data(),
rhs.size()) < 0; }
940 {
return compare_helper(&lhs, 1,
rhs.data(),
rhs.size()) > 0; }
954 #if defined(QT_RESTRICTED_CAST_FROM_ASCII)
955 template <qsizetype N>
959 template <qsizetype N>
961 template <qsizetype N>
962 inline QString &operator=(
const char (&
ch)[
N])
964 template <qsizetype N>
965 QString &operator=(
char (&)[
N]) =
delete;
967 #if !defined(QT_NO_CAST_FROM_ASCII) && !defined(QT_RESTRICTED_CAST_FROM_ASCII)
997 QT_ASCII_CAST_WARN
inline bool operator==(
const char *
s)
const;
998 QT_ASCII_CAST_WARN
inline bool operator!=(
const char *
s)
const;
999 QT_ASCII_CAST_WARN
inline bool operator<(
const char *
s)
const;
1000 QT_ASCII_CAST_WARN
inline bool operator<=(
const char *
s)
const;
1001 QT_ASCII_CAST_WARN
inline bool operator>(
const char *
s)
const;
1002 QT_ASCII_CAST_WARN
inline bool operator>=(
const char *
s)
const;
1012 {
return QString::compare_helper(
s2.constData(),
s2.size(),
s1, -1) == 0; }
1014 {
return QString::compare_helper(
s2.constData(),
s2.size(),
s1, -1) != 0; }
1016 {
return QString::compare_helper(
s2.constData(),
s2.size(),
s1, -1) > 0; }
1018 {
return QString::compare_helper(
s2.constData(),
s2.size(),
s1, -1) < 0; }
1020 {
return QString::compare_helper(
s2.constData(),
s2.size(),
s1, -1) >= 0; }
1022 {
return QString::compare_helper(
s2.constData(),
s2.size(),
s1, -1) <= 0; }
1063 static inline QString fromStdWString(
const std::wstring &
s);
1064 inline std::wstring toStdWString()
const;
1066 static inline QString fromStdU16String(
const std::u16string &
s);
1067 inline std::u16string toStdU16String()
const;
1068 static inline QString fromStdU32String(
const std::u32string &
s);
1069 inline std::u32string toStdU32String()
const;
1071 #if defined(Q_OS_DARWIN) || defined(Q_QDOC)
1072 static QString fromCFString(CFStringRef
string);
1078 inline bool isNull()
const {
return d->isNull(); }
1081 bool isSimpleText()
const;
1090 #if defined(QT_NO_CAST_FROM_ASCII)
1100 static const char16_t _empty;
1110 static int localeAwareCompare_helper(
const QChar *data1,
qsizetype length1,
1134 template <
typename T>
static
1141 Int64
val = toIntegral_helper(
string,
ok, Int32(
base));
1169 {
return QString::toIntegral_helper<qint64>(*
this,
ok,
base); }
1171 {
return QString::toIntegral_helper<quint64>(*
this,
ok,
base); }
1173 {
return QString::toIntegral_helper<long>(*
this,
ok,
base); }
1175 {
return QString::toIntegral_helper<ulong>(*
this,
ok,
base); }
1177 {
return QString::toIntegral_helper<int>(*
this,
ok,
base); }
1179 {
return QString::toIntegral_helper<uint>(*
this,
ok,
base); }
1181 {
return QString::toIntegral_helper<short>(*
this,
ok,
base); }
1183 {
return QString::toIntegral_helper<ushort>(*
this,
ok,
base); }
1189 template <
bool UseChar8T>
1217 {
return d.size == 0; }
1222 #if QT5_NULL_STRINGS == 1
1223 return reinterpret_cast<const QChar *
>(
d.data() ?
d.data() : &_empty);
1225 return reinterpret_cast<const QChar *
>(
d.data());
1232 return reinterpret_cast<QChar *
>(
d.data());
1239 {
return !
d->isShared(); }
1258 {
return setNum(
double(
n),
f,prec); }
1273 {
return section(
QString(asep), astart, aend, aflags); }
1286 if (
sizeof(
wchar_t) ==
sizeof(
QChar)) {
1291 return QString::toUcs4_helper(
reinterpret_cast<const ushort *
>(
data()),
size(),
1300 return sizeof(wchar_t) ==
sizeof(
QChar) ?
fromUtf16(
reinterpret_cast<const char16_t *
>(
string),
size)
1309 if (
d->needsDetach() || asize >= capacity() -
d.freeSpaceAtBegin())
1311 if (
d->constAllocatedCapacity())
1312 d->setFlag(Data::CapacityReserved);
1319 if (
d->needsDetach() ||
size() < capacity())
1321 if (
d->constAllocatedCapacity())
1322 d->clearFlag(Data::CapacityReserved);
1326 {
return setUnicode(
reinterpret_cast<const QChar *
>(autf16), asize); }
1332 { detach();
return reinterpret_cast<QChar*
>(
d.data()); }
1334 {
return reinterpret_cast<const QChar*
>(
d.data()); }
1336 {
return reinterpret_cast<const QChar*
>(
d.data()); }
1338 {
return reinterpret_cast<const QChar*
>(
d.data()); }
1340 { detach();
return reinterpret_cast<QChar*
>(
d.data() +
d.size); }
1342 {
return reinterpret_cast<const QChar*
>(
d.data() +
d.size); }
1344 {
return reinterpret_cast<const QChar*
>(
d.data() +
d.size); }
1346 {
return reinterpret_cast<const QChar*
>(
d.data() +
d.size); }
1347 #if QT_STRINGVIEW_LEVEL < 2
1349 {
return indexOf(
s, 0, cs) != -1; }
1352 {
return indexOf(
s, 0, cs) != -1; }
1354 {
return indexOf(
c, 0, cs) != -1; }
1356 {
return indexOf(
s, 0, cs) != -1; }
1358 #if !defined(QT_NO_CAST_FROM_ASCII) && !defined(QT_RESTRICTED_CAST_FROM_ASCII)
1360 {
return QString::compare_helper(constData(),
size(),
s, -1) == 0; }
1362 {
return QString::compare_helper(constData(),
size(),
s, -1) != 0; }
1364 {
return QString::compare_helper(constData(),
size(),
s, -1) < 0; }
1366 {
return QString::compare_helper(constData(),
size(),
s, -1) > 0; }
1368 {
return QString::compare_helper(constData(),
size(),
s, -1) <= 0; }
1370 {
return QString::compare_helper(constData(),
size(),
s, -1) >= 0; }
1398 inline int QLatin1String::compare_helper(
const QLatin1String &
s1,
const char *
s2)
1404 {
return QString::compare_helper(constData(),
size(),
s.constData(),
s.size()) == 0; }
1406 {
return QString::compare_helper(constData(),
size(),
s.constData(),
s.size()) != 0; }
1408 {
return QString::compare_helper(constData(),
size(),
s.constData(),
s.size()) < 0; }
1410 {
return QString::compare_helper(constData(),
size(),
s.constData(),
s.size()) > 0; }
1412 {
return QString::compare_helper(constData(),
size(),
s.constData(),
s.size()) <= 0; }
1414 {
return QString::compare_helper(constData(),
size(),
s.constData(),
s.size()) >= 0; }
1417 {
return QString::compare_helper(
s.constData(),
s.size(), constData(),
size()) == 0; }
1419 {
return QString::compare_helper(
s.constData(),
s.size(), constData(),
size()) != 0; }
1421 {
return QString::compare_helper(
s.constData(),
s.size(), constData(),
size()) > 0; }
1423 {
return QString::compare_helper(
s.constData(),
s.size(), constData(),
size()) < 0; }
1425 {
return QString::compare_helper(
s.constData(),
s.size(), constData(),
size()) >= 0; }
1427 {
return QString::compare_helper(
s.constData(),
s.size(), constData(),
size()) <= 0; }
1430 #if !defined(QT_USE_FAST_OPERATOR_PLUS) && !defined(QT_USE_QSTRINGBUILDER)
1437 # if !defined(QT_NO_CAST_FROM_ASCII) && !defined(QT_RESTRICTED_CAST_FROM_ASCII)
1450 {
return toUtf8().toStdString(); }
1464 {
return fromWCharArray(
s.data(),
qsizetype(
s.size())); }
1470 {
return std::u16string(
reinterpret_cast<const char16_t*
>(
data()),
length()); }
1473 {
return fromUcs4(
s.data(),
qsizetype(
s.size())); }
1477 std::u32string u32str(
length(), char32_t(0));
1479 length(),
reinterpret_cast<uint*
>(&u32str[0]));
1484 #if !defined(QT_NO_DATASTREAM) || defined(QT_BOOTSTRAPPED)
1493 {
return -
s.compare(*
this, cs); }
1496 {
return localeAwareCompare_helper(constData(),
length(),
s.constData(),
s.length()); }
1498 {
return localeAwareCompare_helper(
s1.constData(),
s1.length(),
s2.constData(),
s2.length()); }
1531 template <
typename StringView,
typename...Args>
1545 template <
typename...Args>
1552 template <
typename...Args>
1559 template <
typename T>
1565 template <
typename Predicate>
1580 #if defined(QT_USE_FAST_OPERATOR_PLUS) || defined(QT_USE_QSTRINGBUILDER)
1581 #include <QtCore/qstringbuilder.h>
small capitals from c petite p scientific i
[1]
constexpr QChar back() const
constexpr QAnyStringView() noexcept
constexpr QChar front() const
The QByteArray class provides an array of bytes.
QT_ASCII_CAST_WARN bool operator<(const QString &s2) const
QT_ASCII_CAST_WARN bool operator>(const QString &s2) const
QT_ASCII_CAST_WARN bool operator!=(const QString &s2) const
QT_ASCII_CAST_WARN bool operator==(const QString &s2) const
QT_ASCII_CAST_WARN bool operator<=(const QString &s2) const
QT_ASCII_CAST_WARN bool operator>=(const QString &s2) const
The QChar class provides a 16-bit Unicode character.
The QDataStream class provides serialization of binary data to a QIODevice.
The QLatin1String class provides a thin wrapper around an US-ASCII/Latin-1 encoded string literal.
constexpr const char * latin1() const noexcept
constexpr bool startsWith(QChar c) const noexcept
constexpr QLatin1String sliced(qsizetype pos) const
bool startsWith(QLatin1String s, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
friend bool operator==(QChar lhs, QLatin1String rhs) noexcept
constexpr QLatin1String(QByteArrayView s) noexcept
constexpr const_iterator cbegin() const noexcept
QT_ASCII_CAST_WARN friend bool operator!=(const char *s1, QLatin1String s2)
friend bool operator!=(QLatin1String lhs, QStringView rhs) noexcept
qsizetype indexOf(QStringView s, qsizetype from=0, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
constexpr qsizetype size() const noexcept
friend bool operator==(QLatin1String s1, QLatin1String s2) noexcept
bool endsWith(QStringView s, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
const_reverse_iterator crbegin() const noexcept
friend bool operator>(QLatin1String s1, QLatin1String s2) noexcept
constexpr int compare(QChar c) const noexcept
constexpr auto tokenize(Needle &&needle, Flags...flags) const noexcept(noexcept(qTokenize(std::declval< const QLatin1String & >(), std::forward< Needle >(needle), flags...))) -> decltype(qTokenize(*this, std::forward< Needle >(needle), flags...))
constexpr QLatin1Char at(qsizetype i) const
constexpr QLatin1String right(qsizetype n) const
friend bool operator>=(QLatin1String lhs, QChar rhs) noexcept
qsizetype lastIndexOf(QChar c, qsizetype from, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
constexpr QLatin1String chopped(qsizetype n) const
constexpr const char * data() const noexcept
friend bool operator<(QLatin1String s1, QLatin1String s2) noexcept
friend bool operator!=(QStringView lhs, QLatin1String rhs) noexcept
constexpr QLatin1String(const char *f, const char *l)
qsizetype lastIndexOf(QLatin1String s, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
constexpr void chop(qsizetype n)
std::reverse_iterator< iterator > reverse_iterator
friend bool operator<=(QChar lhs, QLatin1String rhs) noexcept
int compare(QLatin1String other, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
constexpr bool isNull() const noexcept
int compare(QStringView other, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
friend bool operator<=(QStringView lhs, QLatin1String rhs) noexcept
constexpr QLatin1String(const char *s, qsizetype sz) noexcept
bool startsWith(QChar c, Qt::CaseSensitivity cs) const noexcept
constexpr void truncate(qsizetype n)
constexpr QLatin1Char front() const
friend bool operator>=(QLatin1String lhs, QStringView rhs) noexcept
constexpr QLatin1String last(qsizetype n) const
friend bool operator!=(QLatin1String s1, QLatin1String s2) noexcept
constexpr bool endsWith(QChar c) const noexcept
const_reverse_iterator crend() const noexcept
friend bool operator<=(QLatin1String s1, QLatin1String s2) noexcept
QLatin1String(const QByteArray &s) noexcept
QString arg(Args &&...args) const
constexpr const_iterator end() const noexcept
const_reverse_iterator rend() const noexcept
friend bool operator<=(QLatin1String lhs, QStringView rhs) noexcept
constexpr QLatin1String sliced(qsizetype pos, qsizetype n) const
QT_ASCII_CAST_WARN friend bool operator<=(const char *s1, QLatin1String s2)
constexpr QLatin1String first(qsizetype n) const
bool endsWith(QChar c, Qt::CaseSensitivity cs) const noexcept
qsizetype lastIndexOf(QChar c, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
qsizetype indexOf(QChar c, qsizetype from=0, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
qsizetype difference_type
qsizetype indexOf(QLatin1String s, qsizetype from=0, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
friend bool operator<=(QLatin1String lhs, QChar rhs) noexcept
friend bool operator!=(QChar lhs, QLatin1String rhs) noexcept
friend bool operator==(QLatin1String lhs, QStringView rhs) noexcept
QT_ASCII_CAST_WARN friend bool operator==(const char *s1, QLatin1String s2)
friend bool operator>=(QChar lhs, QLatin1String rhs) noexcept
const_reverse_iterator rbegin() const noexcept
qsizetype lastIndexOf(QStringView s, qsizetype from, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
constexpr QLatin1String() noexcept
friend bool operator==(QStringView lhs, QLatin1String rhs) noexcept
friend bool operator>=(QStringView lhs, QLatin1String rhs) noexcept
constexpr QLatin1String(const char *s) noexcept
friend bool operator==(QLatin1String lhs, QChar rhs) noexcept
friend bool operator>=(QLatin1String s1, QLatin1String s2) noexcept
constexpr const_iterator begin() const noexcept
bool contains(QLatin1String s, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
reference const_reference
bool contains(QStringView s, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
constexpr QLatin1String left(qsizetype n) const
reverse_iterator const_reverse_iterator
qsizetype lastIndexOf(QLatin1String s, qsizetype from, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
constexpr QLatin1Char back() const
friend bool operator!=(QLatin1String lhs, QChar rhs) noexcept
constexpr QLatin1String mid(qsizetype pos, qsizetype n=-1) const
bool startsWith(QStringView s, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
bool contains(QChar c, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
int compare(QChar c, Qt::CaseSensitivity cs) const noexcept
constexpr QLatin1Char operator[](qsizetype i) const
QT_ASCII_CAST_WARN friend bool operator>=(const char *s1, QLatin1String s2)
constexpr const_iterator cend() const noexcept
bool endsWith(QLatin1String s, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
qsizetype lastIndexOf(QStringView s, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
QLatin1String trimmed() const noexcept
constexpr bool isEmpty() const noexcept
The QRegularExpression class provides pattern matching using regular expressions.
The QRegularExpressionMatch class provides the results of a matching a QRegularExpression against a s...
The QString class provides a Unicode character string.
bool startsWith(QStringView s, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
friend bool operator<(const QString &s1, const QString &s2) noexcept
QT_ASCII_CAST_WARN friend bool operator<=(const char *s1, const QString &s2)
friend bool operator>(const QString &s1, const QString &s2) noexcept
friend bool operator==(const QString &s1, const char16_t *s2) noexcept
friend bool operator!=(std::nullptr_t, const QString &s2) noexcept
std::u32string toStdU32String() const
QByteArray toLatin1() const &
QString & prepend(QChar c)
friend bool operator!=(const QString &s1, const QString &s2) noexcept
const QChar operator[](qsizetype i) const
friend bool operator==(QChar lhs, const QString &rhs) noexcept
friend bool operator<=(const QString &s1, std::nullptr_t) noexcept
QString last(qsizetype n) const
qsizetype lastIndexOf(QChar c, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
friend bool operator!=(const QString &lhs, QChar rhs) noexcept
QString & prepend(QLatin1String s)
const_iterator constEnd() const
static QString fromLatin1(const char *str, qsizetype size)
QT_ASCII_CAST_WARN QString & append(const QByteArray &s)
const_reverse_iterator rbegin() const
std::wstring toStdWString() const
int toInt(bool *ok=nullptr, int base=10) const
static Q_WEAK_OVERLOAD QString fromLocal8Bit(const QByteArray &ba)
QT_ASCII_CAST_WARN QString(const char *ch)
void reserve(qsizetype size)
friend bool operator>=(QLatin1String s1, const QString &s2) noexcept
static QString fromStdU16String(const std::u16string &s)
static QString fromLatin1(QByteArrayView ba)
const QChar & const_reference
QString & prepend(const QChar *uc, qsizetype len)
friend bool operator!=(const QString &s1, const char16_t *s2) noexcept
QT_ASCII_CAST_WARN QString(const QByteArray &a)
static QString fromStdString(const std::string &s)
QString & prepend(QStringView v)
qsizetype toWCharArray(wchar_t *array) const
QString & insert(qsizetype i, QStringView v)
QString & insert(qsizetype i, const QString &s)
friend bool operator!=(const QString &s1, QLatin1String s2) noexcept
QString & prepend(const QString &s)
qsizetype lastIndexOf(QStringView s, qsizetype from, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
friend bool operator==(const QString &s1, const QString &s2) noexcept
QString(DataPointer &&dd)
static int compare(QStringView s1, const QString &s2, Qt::CaseSensitivity cs=Qt::CaseSensitive) noexcept
void push_front(const QString &s)
static int compare(QLatin1String s1, const QString &s2, Qt::CaseSensitivity cs=Qt::CaseSensitive) noexcept
qsizetype indexOf(QStringView s, qsizetype from=0, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
const QChar * constData() const
ushort toUShort(bool *ok=nullptr, int base=10) const
QT_ASCII_CAST_WARN QString & operator+=(const char *s)
friend bool operator>=(const QString &s1, const char16_t *s2) noexcept
const DataPointer & data_ptr() const
friend bool operator<=(const QString &lhs, QChar rhs) noexcept
QString(QString &&other) noexcept=default
friend bool operator<=(std::nullptr_t, const QString &s2) noexcept
bool isValidUtf16() const noexcept
friend bool operator>=(const QString &s1, const QString &s2) noexcept
const_iterator cbegin() const
friend bool operator>=(const QString &s1, QLatin1String s2) noexcept
QString & operator+=(QStringView v)
QString toCaseFolded() const &
QT_ASCII_CAST_WARN friend bool operator==(const char *s1, const QString &s2)
std::string toStdString() const
const QChar * const_pointer
QT_ASCII_CAST_WARN friend bool operator!=(const char *s1, const QString &s2)
uint toUInt(bool *ok=nullptr, int base=10) const
const_iterator cend() const
friend bool operator!=(const QString &s1, std::nullptr_t) noexcept
qsizetype lastIndexOf(QLatin1String s, Qt::CaseSensitivity cs=Qt::CaseSensitive) const
QString & removeIf(Predicate pred)
friend bool operator==(const char16_t *s1, const QString &s2) noexcept
friend bool operator>=(std::nullptr_t, const QString &s2) noexcept
QStringPrivate DataPointer
static QString fromUtf8(QByteArrayView utf8)
QT_ASCII_CAST_WARN QString & prepend(const QByteArray &s)
QString ::type arg(Args &&...args) const
QString section(QChar sep, qsizetype start, qsizetype end=-1, SectionFlags flags=SectionDefault) const
QString first(qsizetype n) const
friend bool operator!=(QChar lhs, const QString &rhs) noexcept
friend bool operator!=(const char16_t *s1, const QString &s2) noexcept
constexpr QString() noexcept
bool isSharedWith(const QString &other) const
QString & append(QStringView v)
qsizetype capacity() const
QString simplified() const &
friend bool operator==(std::nullptr_t, const QString &s2) noexcept
const_reverse_iterator crbegin() const
QT_ASCII_CAST_WARN QString & append(const char *s)
friend bool operator==(QLatin1String s1, const QString &s2) noexcept
static QString fromLocal8Bit(const char *str, qsizetype size)
friend bool operator!=(QLatin1String s1, const QString &s2) noexcept
static int compare(const QString &s1, QStringView s2, Qt::CaseSensitivity cs=Qt::CaseSensitive) noexcept
static int compare(const QString &s1, QLatin1String s2, Qt::CaseSensitivity cs=Qt::CaseSensitive) noexcept
long toLong(bool *ok=nullptr, int base=10) const
const QChar at(qsizetype i) const
friend bool operator>=(const char16_t *s1, const QString &s2) noexcept
QT_ASCII_CAST_WARN QString & insert(qsizetype i, const char *s)
friend bool operator>=(QChar lhs, const QString &rhs) noexcept
short toShort(bool *ok=nullptr, int base=10) const
int compare(const QString &s, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
static QString fromWCharArray(const wchar_t *string, qsizetype size=-1)
QString arg(qlonglong a, int fieldwidth=0, int base=10, QChar fillChar=QLatin1Char(' ')) const
QT_ASCII_CAST_WARN QString & prepend(const char *s)
QString & operator+=(const QString &s)
QString sliced(qsizetype pos, qsizetype n) const
const_reverse_iterator crend() const
QT_ASCII_CAST_WARN friend bool operator>=(const char *s1, const QString &s2)
QString toLower() const &
qsizetype lastIndexOf(const QString &s, Qt::CaseSensitivity cs=Qt::CaseSensitive) const
static QString fromStdU32String(const std::u32string &s)
QByteArray toLocal8Bit() const &
auto tokenize(Needle &&needle, Flags...flags) const &&noexcept(noexcept(qTokenize(std::declval< const QString >(), std::forward< Needle >(needle), flags...))) -> decltype(qTokenize(std::move(*this), std::forward< Needle >(needle), flags...))
void push_back(const QString &s)
bool contains(QChar c, Qt::CaseSensitivity cs=Qt::CaseSensitive) const
QString sliced(qsizetype pos) const
friend bool operator<=(QLatin1String s1, const QString &s2) noexcept
friend bool operator<=(QChar lhs, const QString &rhs) noexcept
QString & setUtf16(const ushort *utf16, qsizetype size)
auto tokenize(Needle &&needle, Flags...flags) &&noexcept(noexcept(qTokenize(std::declval< QString >(), std::forward< Needle >(needle), flags...))) -> decltype(qTokenize(std::move(*this), std::forward< Needle >(needle), flags...))
std::u16string toStdU16String() const
QString trimmed() const &
QString & setNum(short, int base=10)
QString chopped(qsizetype n) const
friend bool operator<=(const QString &s1, QLatin1String s2) noexcept
std::reverse_iterator< const_iterator > const_reverse_iterator
friend bool operator==(const QString &s1, QLatin1String s2) noexcept
static int compare(const QString &s1, const QString &s2, Qt::CaseSensitivity cs=Qt::CaseSensitive) noexcept
ulong toULong(bool *ok=nullptr, int base=10) const
static QString fromUtf8(const char *utf8, qsizetype size)
QT_ASCII_CAST_WARN QString & insert(qsizetype i, const QByteArray &s)
QT_ASCII_CAST_WARN QString & operator=(const char *ch)
QByteArray toUtf8() const &
static Q_WEAK_OVERLOAD QString fromLatin1(const QByteArray &ba)
friend bool operator<=(const char16_t *s1, const QString &s2) noexcept
QT_ASCII_CAST_WARN QString & operator+=(const QByteArray &s)
static int localeAwareCompare(const QString &s1, const QString &s2)
QStringList split(const QRegularExpression &sep, Qt::SplitBehavior behavior=Qt::KeepEmptyParts) const
static QString fromStdWString(const std::wstring &s)
friend bool operator>=(const QString &, std::nullptr_t) noexcept
friend bool operator==(const QString &s1, std::nullptr_t) noexcept
QByteArray toLocal8Bit() &&
auto tokenize(Needle &&needle, Flags...flags) const &noexcept(noexcept(qTokenize(std::declval< const QString & >(), std::forward< Needle >(needle), flags...))) -> decltype(qTokenize(*this, std::forward< Needle >(needle), flags...))
QString toUpper() const &
std::reverse_iterator< iterator > reverse_iterator
const_reverse_iterator rend() const
const_iterator constBegin() const
QString toCaseFolded() &&
friend bool operator>=(const QString &lhs, QChar rhs) noexcept
QT_ASCII_CAST_WARN QString & operator=(const QByteArray &a)
friend bool operator==(const QString &lhs, QChar rhs) noexcept
const_iterator ConstIterator
qsizetype lastIndexOf(QStringView s, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
QString & operator+=(QChar c)
reverse_iterator rbegin()
friend bool operator<=(const QString &s1, const QString &s2) noexcept
QString & operator+=(QLatin1String s)
const QChar * unicode() const
int compare(QChar ch, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
const QChar * const_iterator
friend bool operator<=(const QString &s1, const char16_t *s2) noexcept
bool endsWith(QStringView s, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
void resize(qsizetype size)
static Q_WEAK_OVERLOAD QString fromUtf8(const QByteArray &ba)
The QStringList class provides a list of strings.
The QStringView class provides a unified view on UTF-16 strings with a read-only subset of the QStrin...
bool contains(QChar c, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
bool startsWith(QStringView s, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
ushort toUShort(bool *ok=nullptr, int base=10) const
QString arg(Args &&...args) const
bool endsWith(QStringView s, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
int toInt(bool *ok=nullptr, int base=10) const
qlonglong toLongLong(bool *ok=nullptr, int base=10) const
ulong toULong(bool *ok=nullptr, int base=10) const
bool isValidUtf16() const noexcept
int compare(QStringView other, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
qulonglong toULongLong(bool *ok=nullptr, int base=10) const
short toShort(bool *ok=nullptr, int base=10) const
qsizetype lastIndexOf(QChar c, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
uint toUInt(bool *ok=nullptr, int base=10) const
qsizetype indexOf(QChar c, qsizetype from=0, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
long toLong(bool *ok=nullptr, int base=10) const
qsizetype toWCharArray(wchar_t *array) const
map insert("Paris", "France")
list append(new Employee("Blackpool", "Stephen"))
auto it unsigned count const
Generic::PredicateMatcher< T > Predicate(std::function< bool(T const &)> const &predicate, std::string const &description="")
std::string toLower(std::string const &s)
QHighDpiScaling::Point position(T, QHighDpiScaling::Point::Kind)
qsizetype fromUtf8(uchar b, OutputPtr &dst, InputPtr &src, InputPtr end)
int toUtf8(char16_t u, OutputPtr &dst, InputPtr &src, InputPtr end)
Q_CORE_EXPORT Q_DECL_PURE_FUNCTION bool endsWith(QByteArrayView haystack, QByteArrayView needle) noexcept
constexpr bool isLatin1(QLatin1String s) noexcept
Q_CORE_EXPORT Q_DECL_PURE_FUNCTION QByteArrayView trimmed(QByteArrayView s) noexcept
auto sequential_erase_if(Container &c, Predicate &pred)
Q_CORE_EXPORT Q_DECL_PURE_FUNCTION bool startsWith(QByteArrayView haystack, QByteArrayView needle) noexcept
Q_CORE_EXPORT Q_DECL_PURE_FUNCTION qsizetype lastIndexOf(QByteArrayView haystack, qsizetype from, QByteArrayView needle) noexcept
Q_CORE_EXPORT Q_DECL_PURE_FUNCTION bool equalStrings(QStringView lhs, QStringView rhs) noexcept
QStringViewArg qStringLikeToArg(const QString &s) noexcept
Q_CORE_EXPORT QString convertToQString(QAnyStringView s)
Q_CORE_EXPORT Q_DECL_PURE_FUNCTION qsizetype findString(QStringView haystack, qsizetype from, QStringView needle, Qt::CaseSensitivity cs=Qt::CaseSensitive) noexcept
constexpr QLatin1StringArg qStringLikeToArg(QLatin1String s) noexcept
auto sequential_erase(Container &c, const T &t)
Q_CORE_EXPORT QString argToQString(QStringView pattern, size_t n, const ArgBase **args)
Q_CORE_EXPORT QString argToQString(QLatin1String pattern, size_t n, const ArgBase **args)
Q_CORE_EXPORT Q_DECL_PURE_FUNCTION ParsedNumber< float > toFloat(QByteArrayView a) noexcept
Q_CORE_EXPORT Q_DECL_PURE_FUNCTION int compareStrings(QStringView lhs, QStringView rhs, Qt::CaseSensitivity cs=Qt::CaseSensitive) noexcept
Q_CORE_EXPORT Q_DECL_PURE_FUNCTION ParsedNumber< double > toDouble(QByteArrayView a) noexcept
QString && asString(QString &&s)
Q_ALWAYS_INLINE QString argToQStringDispatch(StringView pattern, const Args &...args)
Q_CORE_EXPORT Q_DECL_PURE_FUNCTION bool isRightToLeft(QStringView string) noexcept
PCRE2_SIZE PRIV() strlen(PCRE2_SPTR str)
set set set set set set set macro pixldst1 abits if abits op else op endif endm macro pixldst2 abits if abits op else op endif endm macro pixldst4 abits if abits op else op endif endm macro pixldst0 abits op endm macro pixldst3 mem_operand op endm macro pixldst30 mem_operand op endm macro pixldst abits if abits elseif abits elseif abits elseif abits elseif abits pixldst0 abits else pixldst0 abits pixldst0 abits pixldst0 abits pixldst0 abits endif elseif abits else pixldst0 abits pixldst0 abits endif elseif abits else error unsupported bpp *numpix else pixst endif endm macro vuzp8 reg2 vuzp d d ®2 endm macro vzip8 reg2 vzip d d ®2 endm macro pixdeinterleave basereg basereg basereg basereg basereg endif endm macro pixinterleave basereg basereg basereg basereg basereg endif endm macro PF boost_increment endif if endif PF tst PF addne PF subne PF cmp ORIG_W if endif if endif if endif PF subge ORIG_W PF subges if endif if endif if endif endif endm macro cache_preload_simple endif if dst_r_bpp pld[DST_R, #(PREFETCH_DISTANCE_SIMPLE *dst_r_bpp/8)] endif if mask_bpp pld endif[MASK, #(PREFETCH_DISTANCE_SIMPLE *mask_bpp/8)] endif endif endm macro ensure_destination_ptr_alignment process_pixblock_tail_head if beq irp skip1 beq endif SRC MASK if dst_r_bpp DST_R else add endif PF add sub src_basereg pixdeinterleave mask_basereg pixdeinterleave dst_r_basereg process_pixblock_head pixblock_size cache_preload_simple process_pixblock_tail pixinterleave dst_w_basereg irp beq endif process_pixblock_tail_head tst beq irp if pixblock_size chunk_size tst beq pixld SRC pixld MASK if DST_R else pixld DST_R endif if
QString & operator+=(QString &that, const ProString &other)
size_t qstrlen(const char *str)
#define Q_DECL_NS_RETURNS_AUTORELEASED
#define QT_WARNING_DISABLE_INTEL(number)
#define Q_DECL_CF_RETURNS_RETAINED
Q_FORWARD_DECLARE_OBJC_CLASS(NSObject)
Q_FORWARD_DECLARE_CF_TYPE(CTFontDescriptor)
EGLOutputLayerEXT EGLint EGLAttrib value
#define Q_DECLARE_FLAGS(Flags, Enum)
#define Q_DECLARE_OPERATORS_FOR_FLAGS(Flags)
QT_BEGIN_INCLUDE_NAMESPACE typedef unsigned char uchar
unsigned long long quint64
#define QT_DEPRECATED_VERSION_X_6_0(text)
#define QT_MOVE_ASSIGNMENT_OPERATOR_IMPL_VIA_PURE_SWAP(Class)
GLenum GLuint GLenum GLsizei length
GLsizei const GLfloat * v
[13]
GLboolean GLboolean GLboolean GLboolean a
[7]
GLenum GLuint GLintptr GLsizeiptr size
[1]
GLuint GLfloat GLfloat GLfloat GLfloat GLfloat GLfloat GLfloat GLfloat s1
GLenum GLenum GLsizei count
GLint GLsizei GLsizei GLenum GLenum GLsizei void * data
GLint GLsizei GLsizei GLenum format
GLsizei GLenum const void * indices
GLint GLenum GLboolean normalized
GLenum GLint GLint * precision
GLsizei const GLchar *const * string
[0]
Q_DECLARE_TYPEINFO(QLatin1String, Q_RELOCATABLE_TYPE)
qsizetype erase_if(QString &s, Predicate pred)
QT_WARNING_PUSH QT_WARNING_DISABLE_MSVC(4127) QT_WARNING_DISABLE_INTEL(111) inline qsizetype QString
Q_CORE_EXPORT QDataStream & operator>>(QDataStream &, QString &)
const QString operator+(const QString &s1, const QString &s2)
Q_CORE_EXPORT QDataStream & operator<<(QDataStream &, const QString &)
qsizetype erase(QString &s, const T &t)
QArrayDataPointer< char16_t > QStringPrivate
constexpr auto qTokenize(Haystack &&h, Needle &&n, Flags...flags) noexcept(QtPrivate::Tok::is_nothrow_constructible_from< Haystack, Needle >::value) -> decltype(QtPrivate::Tok::TokenizerResult< Haystack, Needle >{std::forward< Haystack >(h), std::forward< Needle >(n), flags...})
QStringView qToStringViewIgnoringNull(const QStringLike &s) noexcept
#define Q_DECLARE_SHARED(TYPE)
settings remove("monkey")
QTextStream out(stdout)
[7]
The QLatin1Char class provides an 8-bit ASCII/Latin-1 character.
constexpr QLatin1StringArg(QLatin1String v) noexcept
QLatin1StringArg()=default
constexpr QStringViewArg(QStringView v) noexcept
XmlOutput::xml_output tag(const QString &name)