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
q20iterator.h
Go to the documentation of this file.
1// Copyright (C) 2021 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3// Qt-Security score:significant reason:default
4#ifndef Q20ITERATOR_H
5#define Q20ITERATOR_H
6
7#include <QtCore/qglobal.h>
8
9#include <iterator>
10
11//
12// W A R N I N G
13// -------------
14//
15// This file is not part of the Qt API. Types and functions defined in this
16// file can reliably be replaced by their std counterparts, once available.
17// You may use these definitions in your own code, but be aware that we
18// will remove them once Qt depends on the C++ version that supports
19// them in namespace std. There will be NO deprecation warning, the
20// definitions will JUST go away.
21//
22// If you can't agree to these terms, don't use these definitions!
23//
24// We mean it.
25//
26
28
29// like std::ssize
30namespace q20 {
31#ifdef __cpp_lib_ssize
32 using std::ssize;
33#else
34 template<class C> constexpr auto ssize(const C &c)
36 { return static_cast<std::common_type_t<std::ptrdiff_t, std::make_signed_t<decltype(c.size())>>>(c.size()); }
37
38 template<class T, std::ptrdiff_t N> constexpr std::ptrdiff_t ssize(const T (&)[N]) noexcept
39 { return N; }
40#endif
41} // namespace q20
42
43// like std::iter_reference_t
44namespace q20 {
45#ifdef __cpp_lib_ranges
46 using std::iter_reference_t;
47#else
48 template <typename Dereferencable> // unconstrained (constraint requires concepts)
49 using iter_reference_t = decltype(*std::declval<Dereferencable&>());
50#endif // __cpp_lib_ranges
51} // namespace q20
52
53QT_END_NAMESPACE
54
55#endif /* Q20ITERATOR_H */
The QCalendar class describes calendar systems.
Definition qcalendar.h:54
const QLocaleData *const m_data
Definition qlocale_p.h:715
QLocale::MeasurementSystem measurementSystem() const
Definition qlocale.cpp:3556
QByteArray bcp47Name(char separator='-') const
Definition qlocale.cpp:498
char32_t peekNext(char32_t invalidAs=QChar::ReplacementCharacter) const
char32_t next(char32_t invalidAs=QChar::ReplacementCharacter)
QStringIterator(const QChar *begin, qsizetype idx, const QChar *end)
QString::const_iterator position() const
char32_t previous(char32_t invalidAs=QChar::ReplacementCharacter)
QStringIterator(QStringView string, qsizetype idx=0)
bool hasNext() const
char32_t peekPreviousUnchecked() const
char32_t previousOrRawCodeUnit()
QStringIterator(const QChar *begin, const QChar *end)
char32_t peekNextUnchecked() const
qsizetype index() const
bool hasPrevious() const
void setPosition(QString::const_iterator position)
char32_t peekPrevious(char32_t invalidAs=QChar::ReplacementCharacter) const
char32_t previousUnchecked()
char32_t nextOrRawCodeUnit()
Combined button and popup list for selecting options.
Definition qcompare.h:111
CaseSensitivity
@ CaseInsensitive
@ CaseSensitive
constexpr std::ptrdiff_t ssize(const T(&)[N]) noexcept
Definition q20iterator.h:38
decltype(*std::declval< Dereferencable & >()) iter_reference_t
Definition q20iterator.h:49
constexpr auto ssize(const C &c) -> std::common_type_t< std::ptrdiff_t, std::make_signed_t< decltype(c.size())> >
Definition q20iterator.h:34
Q_GLOBAL_STATIC(DefaultRoleNames, qDefaultRoleNames, { { Qt::DisplayRole, "display" }, { Qt::DecorationRole, "decoration" }, { Qt::EditRole, "edit" }, { Qt::ToolTipRole, "toolTip" }, { Qt::StatusTipRole, "statusTip" }, { Qt::WhatsThisRole, "whatsThis" }, }) const QHash< int
static unsigned calculateFlags(int fieldWidth, char32_t fillChar, const QLocale &locale)
Definition qlocale.cpp:2240
static QString calculateFiller(qsizetype padding, char32_t fillChar, qsizetype fieldWidth, const QLocaleData *localeData)
Definition qlocale.cpp:2254
QDebug operator<<(QDebug dbg, const QLocale &l)
Definition qlocale.cpp:5748
static QLocalePrivate * findLocalePrivate(QLocale::Language language, QLocale::Script script, QLocale::Territory territory)
Definition qlocale.cpp:1005
static std::optional< QString > systemLocaleString(const QLocaleData *that, QSystemLocale::QueryType type)
Definition qlocale.cpp:1052
static const QSystemLocale * systemLocale()
Definition qlocale.cpp:860
static bool checkParsed(QByteArrayView num, qsizetype used)
Definition qlocale.cpp:5153
static QString rawWeekDayName(const QLocaleData *data, const int day, QLocale::FormatType type)
Definition qlocale.cpp:3358
QDataStream & operator>>(QDataStream &ds, QLocale &l)
Definition qlocale.cpp:983
#define CheckCandidate(id)
static Q_DECL_COLD_FUNCTION void badSeparatorWarning(const char *method, char sep)
Definition qlocale.cpp:1541
static QString rawStandaloneWeekDayName(const QLocaleData *data, const int day, QLocale::FormatType type)
Definition qlocale.cpp:3382
static constexpr QLocale::NumberOptions defaultNumberOptions(QLocale::Language forLanguage)
Definition qlocale.cpp:799
static QStringView findTag(QStringView name) noexcept
Definition qlocale.cpp:646
static bool validTag(QStringView tag)
Definition qlocale.cpp:655
static qsizetype scriptIndex(QStringView code, Qt::CaseSensitivity cs) noexcept
Definition qlocale.cpp:187
static const QCalendarLocale & getMonthDataFor(const QLocalePrivate *loc, const QCalendarLocale *table)
Definition qlocale.cpp:3305
static T toIntegral_helper(const QLocalePrivate *d, QStringView str, bool *ok)
Definition qlocale.cpp:1589
static bool timeFormatContainsAP(QStringView format)
Definition qlocale.cpp:2461
size_t qHash(const QLocale &key, size_t seed) noexcept
Definition qlocale.cpp:1322
bool comparesEqual(const QLocale &loc, QLocale::Language lang)
Definition qlocale.cpp:1026
static qsizetype findLocaleIndexById(QLocaleId localeId) noexcept
Definition qlocale.cpp:508
static constexpr qsizetype locale_data_size
Definition qlocale.cpp:527
static void updateSystemPrivate()
Definition qlocale.cpp:872
static QString rawMonthName(const QCalendarLocale &localeData, const char16_t *monthsData, int month, QLocale::FormatType type)
Definition qlocale.cpp:3332
static qsizetype stringWidth(QStringView text)
Definition qlocale.cpp:2229
static QLocalePrivate * c_private() noexcept
Definition qlocale.cpp:793
static const QLocaleData * defaultData()
Definition qlocale.cpp:947
static QString rawStandaloneMonthName(const QCalendarLocale &localeData, const char16_t *monthsData, int month, QLocale::FormatType type)
Definition qlocale.cpp:3344
static QString localeString(const QLocaleData *that, QSystemLocale::QueryType type, QLocaleData::DataRange range)
Definition qlocale.cpp:1070
static const QLocaleData * systemData(qsizetype *sysIndex=nullptr)
Definition qlocale.cpp:907
static QString offsetFromAbbreviation(QString &&text)
Definition qlocale.cpp:3767
static qsizetype defaultIndex()
Definition qlocale.cpp:954
static constexpr char16_t single_character_data[]
static constexpr char16_t days_data[]
static constexpr QLocaleData locale_data[]
static constexpr QLocaleId likely_subtags[]
static constexpr unsigned char territory_code_list[]
static constexpr unsigned char script_code_list[]
bool qt_splitLocaleName(QStringView name, QStringView *lang=nullptr, QStringView *script=nullptr, QStringView *cntry=nullptr) noexcept
Definition qlocale.cpp:666
qsizetype qt_repeatCount(QStringView s) noexcept
Definition qlocale.cpp:779
QString qt_readEscapedFormatString(QStringView format, qsizetype *idx)
Definition qlocale.cpp:729
#define QStringLiteral(str)
Definition qstring.h:1825
char32_t ucsFirst(const char16_t *table) const
Definition qlocale_p.h:588
Descriptor for a digit sequence within a text.
Definition qlocale_p.h:453
const GroupSizes grouping
Definition qlocale_p.h:371
QString positiveSign() const
Definition qlocale.cpp:1124
QString groupSeparator() const
Definition qlocale.cpp:1083
QSimpleParsedNumber< qint64 > stringToLongLong(QStringView str, int base, QLocale::NumberOptions options) const
Definition qlocale.cpp:5132
Q_AUTOTEST_EXPORT char32_t zeroUcs() const
Definition qlocale.cpp:1103
QString zeroDigit() const
Definition qlocale.cpp:1098
bool numberToCLocale(QStringView s, QLocale::NumberOptions number_options, NumberMode mode, CharBuff *result) const
Returns a DigitSequence describing some portion of text starting at from.
Definition qlocale.cpp:4858
QString decimalPoint() const
Definition qlocale.cpp:1078
QString doubleToString(double d, int precision=-1, DoubleForm form=DFSignificantDigits, int width=-1, unsigned flags=NoFlags) const
Definition qlocale.cpp:4074
QLocaleId id() const
Definition qlocale_p.h:551
QString listSeparator() const
Definition qlocale.cpp:1093
QString percentSign() const
Definition qlocale.cpp:1088
@ AddTrailingZeroes
Definition qlocale_p.h:267
double stringToDouble(QStringView str, bool *ok, QLocale::NumberOptions options) const
Definition qlocale.cpp:5116
QString longLongToString(qint64 l, int precision=-1, int base=10, int width=-1, unsigned flags=NoFlags) const
Definition qlocale.cpp:4317
@ DoubleScientificMode
Definition qlocale_p.h:281
@ DFSignificantDigits
Definition qlocale_p.h:261
QString exponentSeparator() const
Definition qlocale.cpp:1129
QString negativeSign() const
Definition qlocale.cpp:1119
QSimpleParsedNumber< quint64 > stringToUnsLongLong(QStringView str, int base, QLocale::NumberOptions options) const
Definition qlocale.cpp:5143
QString unsLongLongToString(quint64 l, int precision=-1, int base=10, int width=-1, unsigned flags=NoFlags) const
Definition qlocale.cpp:4332
QLocaleId withLikelySubtagsAdded() const noexcept
Definition qlocale.cpp:330
QLocaleId withLikelySubtagsRemoved() const noexcept
Definition qlocale.cpp:419
ushort script_id
Definition qlocale_p.h:242
bool operator==(QLocaleId other) const noexcept
Definition qlocale_p.h:211
ushort territory_id
Definition qlocale_p.h:242
ushort language_id
Definition qlocale_p.h:242