Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2026-05-04 08:48:34

0001 // Copyright (C) 2022 The Qt Company Ltd.
0002 // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
0003 // Qt-Security score:significant reason:header-decls-only
0004 
0005 #include <QtCore/qtconfigmacros.h>
0006 #include <QtCore/qtversionchecks.h>
0007 
0008 #ifndef QSTRINGFWD_H
0009 #define QSTRINGFWD_H
0010 
0011 QT_BEGIN_NAMESPACE
0012 
0013 #if QT_VERSION >= QT_VERSION_CHECK(7, 0, 0)
0014 # define QT_BEGIN_HAS_CHAR8_T_NAMESPACE inline namespace q_has_char8_t {
0015 # define QT_BEGIN_NO_CHAR8_T_NAMESPACE namespace q_no_char8_t {
0016 #else
0017 # define QT_BEGIN_HAS_CHAR8_T_NAMESPACE namespace q_has_char8_t {
0018 # define QT_BEGIN_NO_CHAR8_T_NAMESPACE inline namespace q_no_char8_t {
0019 #endif
0020 #define QT_END_HAS_CHAR8_T_NAMESPACE }
0021 #define QT_END_NO_CHAR8_T_NAMESPACE }
0022 
0023 // declare namespaces:
0024 QT_BEGIN_HAS_CHAR8_T_NAMESPACE
0025 QT_END_HAS_CHAR8_T_NAMESPACE
0026 QT_BEGIN_NO_CHAR8_T_NAMESPACE
0027 QT_END_NO_CHAR8_T_NAMESPACE
0028 
0029 class QByteArray;
0030 class QByteArrayView;
0031 #if QT_VERSION >= QT_VERSION_CHECK(7, 0, 0) || defined(QT_BOOTSTRAPPED) || defined(Q_QDOC)
0032 # define Q_L1S_VIEW_IS_PRIMARY
0033 class QLatin1StringView;
0034 using QLatin1String = QLatin1StringView;
0035 #else
0036 class QLatin1String;
0037 using QLatin1StringView = QLatin1String;
0038 #endif
0039 class QString;
0040 class QStringRef; // defined in qt5compat
0041 class QStringView;
0042 template <bool> class QBasicUtf8StringView;
0043 class QAnyStringView;
0044 class QChar;
0045 class QRegularExpression;
0046 class QRegularExpressionMatch;
0047 
0048 #ifdef Q_QDOC
0049 class QUtf8StringView;
0050 #else
0051 // ### Qt 7: remove the non-char8_t version of QUtf8StringView
0052 QT_BEGIN_NO_CHAR8_T_NAMESPACE
0053 using QUtf8StringView = QBasicUtf8StringView<false>;
0054 QT_END_NO_CHAR8_T_NAMESPACE
0055 
0056 QT_BEGIN_HAS_CHAR8_T_NAMESPACE
0057 using QUtf8StringView = QBasicUtf8StringView<true>;
0058 QT_END_HAS_CHAR8_T_NAMESPACE
0059 #endif // Q_QDOC
0060 
0061 QT_END_NAMESPACE
0062 
0063 #endif // QSTRINGFWD_H