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
qurl_p.h
Go to the documentation of this file.
1// Copyright (C) 2016 The Qt Company Ltd.
2// Copyright (C) 2016 Intel Corporation.
3// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
4// Qt-Security score:significant reason:default
5
6#ifndef QURL_P_H
7#define QURL_P_H
8
9//
10// W A R N I N G
11// -------------
12//
13// This file is not part of the Qt API. It exists for the convenience of
14// qurl*.cpp This header file may change from version to version without
15// notice, or even be removed.
16//
17// We mean it.
18//
19
20#include <QtCore/private/qglobal_p.h>
21#include "qurl.h"
22
24
25// in qurlrecode.cpp
26extern Q_AUTOTEST_EXPORT qsizetype qt_urlRecode(QString &appendTo, QStringView url,
27 QUrl::ComponentFormattingOptions encoding,
28 const ushort *tableModifications = nullptr);
29qsizetype qt_encodeFromUser(QString &appendTo, const QString &input,
30 const ushort *tableModifications);
31
32// in qurlidna.cpp
35QString Q_CORE_EXPORT qt_ACE_do(const QString &domain, AceOperation op, AceLeadingDot dot,
36 QUrl::AceProcessingOptions options = {});
37extern Q_AUTOTEST_EXPORT void qt_punycodeEncoder(QStringView in, QString *output);
38extern Q_AUTOTEST_EXPORT QString qt_punycodeDecoder(const QString &pc);
39
40QT_END_NAMESPACE
41
42#endif // QURL_P_H
bool isEmpty() const
Definition qurl.cpp:508
uint presentSections() const noexcept
Definition qurl.cpp:540
QAtomicInt ref
Definition qurl.cpp:589
void appendPassword(QString &appendTo, QUrl::FormattingOptions options) const
Definition qurl.cpp:948
bool hasScheme() const
Definition qurl.cpp:557
void appendHost(QString &appendTo, QUrl::FormattingOptions options) const
Definition qurl.cpp:1206
bool validateComponent(Section section, const QString &input, qsizetype begin, qsizetype end)
QString host
Definition qurl.cpp:595
uchar sectionIsPresent
Definition qurl.cpp:606
std::unique_ptr< Error > cloneError() const
Definition qurl.cpp:638
void setAuthority(const QString &auth, qsizetype from, qsizetype end, QUrl::ParsingMode mode)
Definition qurl.cpp:1058
bool hasPort() const
Definition qurl.cpp:563
QString toLocalFile(QUrl::FormattingOptions options) const
Definition qurl.cpp:1525
ErrorCode validityError(QString *source=nullptr, qsizetype *position=nullptr) const
Definition qurl.cpp:1599
bool hasQuery() const
Definition qurl.cpp:565
void setFragment(String &&value, QUrl::ParsingMode mode)
Definition qurl.cpp:1164
bool hasUserInfo() const
Definition qurl.cpp:559
QUrlPrivate(const QUrlPrivate &copy)
Definition qurl.cpp:620
QString mergePaths(const QString &relativePath) const
Definition qurl.cpp:1560
bool isLocalFile() const
Definition qurl.cpp:568
std::unique_ptr< Error > error
Definition qurl.cpp:600
@ AuthorityPresentAndPathIsRelative
Definition qurl.cpp:490
@ PortEmptyError
Definition qurl.cpp:480
@ RelativeUrlPathContainsColonBeforeSlash
Definition qurl.cpp:492
@ AuthorityAbsentAndPathIsDoubleSlash
Definition qurl.cpp:491
@ InvalidIPv6AddressError
Definition qurl.cpp:474
@ InvalidIPv4AddressError
Definition qurl.cpp:473
@ InvalidCharacterInIPv6Error
Definition qurl.cpp:475
@ InvalidPasswordError
Definition qurl.cpp:470
@ InvalidRegNameError
Definition qurl.cpp:472
@ InvalidFragmentError
Definition qurl.cpp:486
@ HostMissingEndBracket
Definition qurl.cpp:477
@ InvalidPortError
Definition qurl.cpp:479
@ InvalidQueryError
Definition qurl.cpp:484
@ InvalidPathError
Definition qurl.cpp:482
@ InvalidSchemeError
Definition qurl.cpp:466
@ InvalidUserNameError
Definition qurl.cpp:468
@ InvalidIPvFutureError
Definition qurl.cpp:476
QString path
Definition qurl.cpp:596
bool hasPath() const
Definition qurl.cpp:564
QUrlPrivate()
Definition qurl.cpp:613
void clearError()
Definition qurl.cpp:643
bool setScheme(const QString &value, qsizetype len, bool doSetError)
Definition qurl.cpp:993
void appendAuthority(QString &appendTo, QUrl::FormattingOptions options, Section appendingTo) const
Definition qurl.cpp:880
uchar flags
Definition qurl.cpp:607
@ IsLocalFile
Definition qurl.cpp:460
QString scheme
Definition qurl.cpp:592
void appendUserName(QString &appendTo, QUrl::FormattingOptions options) const
Definition qurl.cpp:939
void clear()
Definition qurl.cpp:580
void appendUserInfo(QString &appendTo, QUrl::FormattingOptions options, Section appendingTo) const
Definition qurl.cpp:894
bool hasFragment() const
Definition qurl.cpp:566
void appendPath(QString &appendTo, QUrl::FormattingOptions options, Section appendingTo) const
Definition qurl.cpp:955
bool validateComponent(Section section, const QString &input)
Definition qurl.cpp:516
bool normalizePathSegments(QString *path) const
Definition qurl.cpp:571
void setError(ErrorCode errorCode, const QString &source, qsizetype supplement=-1)
Definition qurl.cpp:648
bool hasUserName() const
Definition qurl.cpp:560
QString fragment
Definition qurl.cpp:598
void setUserInfo(String &&value, QUrl::ParsingMode mode)
Definition qurl.cpp:1130
QString query
Definition qurl.cpp:597
void setPath(String &&value, QUrl::ParsingMode mode)
Definition qurl.cpp:1158
void setQuery(String &&value, QUrl::ParsingMode mode)
Definition qurl.cpp:1170
QString userName
Definition qurl.cpp:593
bool hasAuthority() const
Definition qurl.cpp:558
bool hasHost() const
Definition qurl.cpp:562
void appendQuery(QString &appendTo, QUrl::FormattingOptions options, Section appendingTo) const
Definition qurl.cpp:985
void setPassword(String &&value, QUrl::ParsingMode mode)
Definition qurl.cpp:1152
void setUserName(String &&value, QUrl::ParsingMode mode)
Definition qurl.cpp:1146
QString password
Definition qurl.cpp:594
void appendFragment(QString &appendTo, QUrl::FormattingOptions options, Section appendingTo) const
Definition qurl.cpp:978
bool setHost(const QString &value, qsizetype from, qsizetype end, QUrl::ParsingMode mode)
Definition qurl.cpp:1323
bool hasPassword() const
Definition qurl.cpp:561
void parse(const QString &url, QUrl::ParsingMode parsingMode)
Definition qurl.cpp:1418
QDataStream & operator>>(QDataStream &in, QUrl &url)
Reads a url into url from the stream in and returns a reference to the stream.
Definition qurl.cpp:3479
#define QStringLiteral(str)
Definition qstring.h:1826
static const ushort userNameInAuthority[]
Definition qurl.cpp:800
size_t qHash(const QUrl &url, size_t seed) noexcept
\qhashold{QHash}
Definition qurl.cpp:3664
QDebug operator<<(QDebug d, const QUrl &url)
Definition qurl.cpp:3489
static QString fileScheme()
Definition qurl.cpp:426
static const QChar * parseIpFuture(QString &host, const QChar *begin, const QChar *end, QUrl::ParsingMode mode)
Definition qurl.cpp:1231
static const ushort *const passwordInAuthority
Definition qurl.cpp:819
static void appendComponentIfPresent(QString &msg, bool present, const char *componentName, const QString &component)
Definition qurl.cpp:3564
static const ushort userNameInUrl[]
Definition qurl.cpp:821
static QString webDavSslTag()
Definition qurl.cpp:436
static QString errorMessage(QUrlPrivate::ErrorCode errorCode, const QString &errorSource, qsizetype errorPosition)
Definition qurl.cpp:3497
static const ushort *const fragmentInIsolation
Definition qurl.cpp:777
static void appendToUser(QString &appendTo, QStringView value, QUrl::FormattingOptions options, const ushort *actions)
Definition qurl.cpp:865
static bool isHex(char c)
Definition qurl.cpp:415
static void fixupNonAuthorityPath(QString *path)
Definition qurl.cpp:1585
static const QChar * parseIp6(QString &host, const QChar *begin, const QChar *end, QUrl::ParsingMode mode)
Definition qurl.cpp:1276
static const ushort *const pathInUrl
Definition qurl.cpp:834
static const ushort *const pathInIsolation
Definition qurl.cpp:775
static const ushort *const passwordInUserInfo
Definition qurl.cpp:798
static void recodeFromUser(QString &output, QStringView input, const ushort *actions, QUrl::ParsingMode mode)
Definition qurl.cpp:852
Qt::weak_ordering compareThreeWay(const QUrl &lhs, const QUrl &rhs)
Definition qurl.cpp:3052
static const ushort userNameInUserInfo[]
Definition qurl.cpp:779
static const ushort userNameInIsolation[]
Definition qurl.cpp:755
static const ushort *const queryInIsolation
Definition qurl.cpp:776
static QUrl adjustFtpPath(QUrl url)
Definition qurl.cpp:3691
static const ushort *const fragmentInUrl
Definition qurl.cpp:836
static QString ftpScheme()
Definition qurl.cpp:421
static bool isIp6(const QString &text)
Definition qurl.cpp:3701
static void recodeFromUser(QString &output, const QString &input, const ushort *actions, QUrl::ParsingMode mode)
Definition qurl.cpp:839
static const ushort *const passwordInUrl
Definition qurl.cpp:833
static const ushort *const queryInUrl
Definition qurl.cpp:835
static const ushort *const passwordInIsolation
Definition qurl.cpp:774
bool comparesEqual(const QUrl &lhs, const QUrl &rhs)
Definition qurl.cpp:3116
static QString webDavScheme()
Definition qurl.cpp:431
static QString fromNativeSeparators(const QString &pathName)
Definition qurl.cpp:3288
AceLeadingDot
Definition qurl_p.h:33
@ AllowLeadingDot
Definition qurl_p.h:33
@ ForbidLeadingDot
Definition qurl_p.h:33
qsizetype qt_encodeFromUser(QString &appendTo, const QString &input, const ushort *tableModifications)
AceOperation
Definition qurl_p.h:34
@ ToAceOnly
Definition qurl_p.h:34
@ NormalizeAce
Definition qurl_p.h:34
Q_AUTOTEST_EXPORT void qt_punycodeEncoder(QStringView in, QString *output)
Definition qurlidna.cpp:68
qsizetype position
Definition qurl.cpp:499
ErrorCode code
Definition qurl.cpp:500