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.cpp File Reference

(0cee9ee3cf8a3310570708b2b421d94083969f72)

#include "qurl.h"
#include "qurl_p.h"
#include "qplatformdefs.h"
#include "qstring.h"
#include "qstringlist.h"
#include "qdebug.h"
#include "qhash.h"
#include "qdatastream.h"
#include "private/qipaddress_p.h"
#include "qurlquery.h"
#include "private/qdir_p.h"
#include <private/qtools_p.h>
Include dependency graph for qurl.cpp:

Go to the source code of this file.

Classes

class  QUrlPrivate
struct  QUrlPrivate::Error

Functions

static bool isHex (char c)
static QString ftpScheme ()
static QString fileScheme ()
static QString webDavScheme ()
static QString webDavSslTag ()
static void recodeFromUser (QString &output, const QString &input, const ushort *actions, QUrl::ParsingMode mode)
static void recodeFromUser (QString &output, QStringView input, const ushort *actions, QUrl::ParsingMode mode)
static void appendToUser (QString &appendTo, QStringView value, QUrl::FormattingOptions options, const ushort *actions)
static const QCharparseIpFuture (QString &host, const QChar *begin, const QChar *end, QUrl::ParsingMode mode)
static const QCharparseIp6 (QString &host, const QChar *begin, const QChar *end, QUrl::ParsingMode mode)
static void fixupNonAuthorityPath (QString *path)
Qt::weak_ordering compareThreeWay (const QUrl &lhs, const QUrl &rhs)
bool comparesEqual (const QUrl &lhs, const QUrl &rhs)
static QString fromNativeSeparators (const QString &pathName)
QDebug operator<< (QDebug d, const QUrl &url)
static QString errorMessage (QUrlPrivate::ErrorCode errorCode, const QString &errorSource, qsizetype errorPosition)
static void appendComponentIfPresent (QString &msg, bool present, const char *componentName, const QString &component)
size_t qHash (const QUrl &url, size_t seed=0)
 \qhashold{QHash}
static QUrl adjustFtpPath (QUrl url)
static bool isIp6 (const QString &text)

Variables

static const ushort userNameInIsolation []
static const ushort *const passwordInIsolation = userNameInIsolation + 1
static const ushort *const pathInIsolation = userNameInIsolation + 5
static const ushort *const queryInIsolation = userNameInIsolation + 6
static const ushort *const fragmentInIsolation = userNameInIsolation + 7
static const ushort userNameInUserInfo []
static const ushort *const passwordInUserInfo = userNameInUserInfo + 1
static const ushort userNameInAuthority []
static const ushort *const passwordInAuthority = userNameInAuthority + 1
static const ushort userNameInUrl []
static const ushort *const passwordInUrl = userNameInUrl + 1
static const ushort *const pathInUrl = userNameInUrl + 5
static const ushort *const queryInUrl = userNameInUrl + 6
static const ushort *const fragmentInUrl = userNameInUrl + 6

Function Documentation

◆ adjustFtpPath()

QUrl adjustFtpPath ( QUrl url)
static

Definition at line 3691 of file qurl.cpp.

◆ appendComponentIfPresent()

void appendComponentIfPresent ( QString & msg,
bool present,
const char * componentName,
const QString & component )
inlinestatic

Definition at line 3564 of file qurl.cpp.

◆ appendToUser()

void appendToUser ( QString & appendTo,
QStringView value,
QUrl::FormattingOptions options,
const ushort * actions )
inlinestatic

Definition at line 865 of file qurl.cpp.

◆ comparesEqual()

bool comparesEqual ( const QUrl & lhs,
const QUrl & rhs )

Definition at line 3116 of file qurl.cpp.

◆ compareThreeWay()

Qt::weak_ordering compareThreeWay ( const QUrl & lhs,
const QUrl & rhs )

Definition at line 3052 of file qurl.cpp.

◆ errorMessage()

QString errorMessage ( QUrlPrivate::ErrorCode errorCode,
const QString & errorSource,
qsizetype errorPosition )
static

◆ fileScheme()

QString fileScheme ( )
inlinestatic

Definition at line 426 of file qurl.cpp.

◆ fixupNonAuthorityPath()

void fixupNonAuthorityPath ( QString * path)
static

Definition at line 1585 of file qurl.cpp.

◆ fromNativeSeparators()

QString fromNativeSeparators ( const QString & pathName)
static

Definition at line 3288 of file qurl.cpp.

◆ ftpScheme()

QString ftpScheme ( )
inlinestatic

Definition at line 421 of file qurl.cpp.

◆ isHex()

bool isHex ( char c)
inlinestatic

Definition at line 415 of file qurl.cpp.

◆ isIp6()

bool isIp6 ( const QString & text)
static

Definition at line 3701 of file qurl.cpp.

◆ operator<<()

QDebug operator<< ( QDebug d,
const QUrl & url )

Definition at line 3489 of file qurl.cpp.

◆ parseIp6()

const QChar * parseIp6 ( QString & host,
const QChar * begin,
const QChar * end,
QUrl::ParsingMode mode )
static

Definition at line 1276 of file qurl.cpp.

◆ parseIpFuture()

const QChar * parseIpFuture ( QString & host,
const QChar * begin,
const QChar * end,
QUrl::ParsingMode mode )
static

Definition at line 1231 of file qurl.cpp.

◆ qHash()

size_t qHash ( const QUrl & url,
size_t seed = 0 )
noexcept

\qhashold{QHash}

Since
5.0

Definition at line 3664 of file qurl.cpp.

◆ recodeFromUser() [1/2]

void recodeFromUser ( QString & output,
const QString & input,
const ushort * actions,
QUrl::ParsingMode mode )
static

Definition at line 839 of file qurl.cpp.

◆ recodeFromUser() [2/2]

void recodeFromUser ( QString & output,
QStringView input,
const ushort * actions,
QUrl::ParsingMode mode )
static

Definition at line 852 of file qurl.cpp.

◆ webDavScheme()

QString webDavScheme ( )
inlinestatic

Definition at line 431 of file qurl.cpp.

◆ webDavSslTag()

QString webDavSslTag ( )
inlinestatic

Definition at line 436 of file qurl.cpp.

Variable Documentation

◆ fragmentInIsolation

const ushort *const fragmentInIsolation = userNameInIsolation + 7
static

Definition at line 777 of file qurl.cpp.

◆ fragmentInUrl

const ushort *const fragmentInUrl = userNameInUrl + 6
static

Definition at line 836 of file qurl.cpp.

◆ passwordInAuthority

const ushort *const passwordInAuthority = userNameInAuthority + 1
static

Definition at line 819 of file qurl.cpp.

Referenced by QUrlPrivate::appendUserInfo().

◆ passwordInIsolation

const ushort *const passwordInIsolation = userNameInIsolation + 1
static

Definition at line 774 of file qurl.cpp.

◆ passwordInUrl

const ushort *const passwordInUrl = userNameInUrl + 1
static

Definition at line 833 of file qurl.cpp.

Referenced by QUrlPrivate::appendUserInfo().

◆ passwordInUserInfo

const ushort *const passwordInUserInfo = userNameInUserInfo + 1
static

Definition at line 798 of file qurl.cpp.

Referenced by QUrlPrivate::appendUserInfo().

◆ pathInIsolation

const ushort *const pathInIsolation = userNameInIsolation + 5
static

Definition at line 775 of file qurl.cpp.

◆ pathInUrl

const ushort *const pathInUrl = userNameInUrl + 5
static

Definition at line 834 of file qurl.cpp.

◆ queryInIsolation

const ushort *const queryInIsolation = userNameInIsolation + 6
static

Definition at line 776 of file qurl.cpp.

◆ queryInUrl

const ushort *const queryInUrl = userNameInUrl + 6
static

Definition at line 835 of file qurl.cpp.

◆ userNameInAuthority

const ushort userNameInAuthority
static
Initial value:
= {
encode(':'),
encode('@'),
encode(']'),
encode('['),
decode('/'),
decode('?'),
decode('#'),
decode('"'),
decode('<'),
decode('>'),
decode('^'),
decode('\\'),
decode('|'),
decode('{'),
decode('}'),
0
}
#define decode(x)
#define encode(x)

Definition at line 800 of file qurl.cpp.

Referenced by QUrlPrivate::appendUserInfo().

◆ userNameInIsolation

const ushort userNameInIsolation
static
Initial value:
= {
decode(':'),
decode('@'),
decode(']'),
decode('['),
decode('/'),
decode('?'),
decode('#'),
decode('"'),
decode('<'),
decode('>'),
decode('^'),
decode('\\'),
decode('|'),
decode('{'),
decode('}'),
0
}

Definition at line 755 of file qurl.cpp.

◆ userNameInUrl

const ushort userNameInUrl
static
Initial value:
= {
encode(':'),
encode('@'),
encode(']'),
encode('['),
encode('/'),
encode('?'),
encode('#'),
0
}

Definition at line 821 of file qurl.cpp.

Referenced by QUrlPrivate::appendUserInfo().

◆ userNameInUserInfo

const ushort userNameInUserInfo
static
Initial value:
= {
encode(':'),
decode('@'),
decode(']'),
decode('['),
decode('/'),
decode('?'),
decode('#'),
decode('"'),
decode('<'),
decode('>'),
decode('^'),
decode('\\'),
decode('|'),
decode('{'),
decode('}'),
0
}

Definition at line 779 of file qurl.cpp.

Referenced by QUrlPrivate::appendUserInfo().