QSourceLocation Class

The QSourceLocation class identifies a location in a resource by URI, line, and column. More...

Header: #include <QSourceLocation>
qmake: QT += xmlpatterns
Since: Qt 4.4

This class was introduced in Qt 4.4.

Note: All functions in this class are reentrant.

Public Functions

QSourceLocation(const QUrl &u, int l = -1, int c = -1)
QSourceLocation(const QSourceLocation &other)
QSourceLocation()
QSourceLocation & operator=(const QSourceLocation &other)
~QSourceLocation()
qint64 column() const
bool isNull() const
qint64 line() const
void setColumn(qint64 newColumn)
void setLine(qint64 newLine)
void setUri(const QUrl &newUri)
QUrl uri() const
bool operator!=(const QSourceLocation &other) const
bool operator==(const QSourceLocation &other) const
uint qHash(const QSourceLocation &location)
QDebug operator<<(QDebug debug, const QSourceLocation &sourceLocation)

Detailed Description

QSourceLocation is a simple value based class that has three properties, uri(), line(), and column(), that, taken together, identify a certain point in a resource, e.g., a file or an in-memory document.

line() and column() refer to character counts (not byte counts), and they both start from 1, as opposed to 0.

Member Function Documentation

QSourceLocation::QSourceLocation(const QUrl &u, int l = -1, int c = -1)

Constructs a QSourceLocation with URI u, line l and column c.

QSourceLocation::QSourceLocation(const QSourceLocation &other)

Constructs a QSourceLocation that is a copy of other.

QSourceLocation::QSourceLocation()

Construct a QSourceLocation that doesn't identify anything at all.

For a default constructed QSourceLocation(), isNull() returns true.

QSourceLocation &QSourceLocation::operator=(const QSourceLocation &other)

Assigns this QSourceLocation instance to other.

QSourceLocation::~QSourceLocation()

Destructor.

qint64 QSourceLocation::column() const

Returns the current column number. The column number refers to the count of characters, not bytes. The first column is column 1, not 0. The default value is -1, indicating the column number is unknown.

See also setColumn().

bool QSourceLocation::isNull() const

Returns true if this QSourceLocation doesn't identify anything.

For a default constructed QSourceLocation, this function returns true. The same applies for any other QSourceLocation whose uri() is invalid.

qint64 QSourceLocation::line() const

Returns the current line number. The first line number is 1, not 0. The default value is -1, indicating the line number is unknown.

See also setLine().

void QSourceLocation::setColumn(qint64 newColumn)

Sets the column number to newColumn. 0 is an invalid column number. The first column number is 1.

See also column().

void QSourceLocation::setLine(qint64 newLine)

Sets the line number to newLine. 0 is an invalid line number. The first line number is 1.

See also line().

void QSourceLocation::setUri(const QUrl &newUri)

Sets the URI to newUri.

See also uri().

QUrl QSourceLocation::uri() const

Returns the resource that this QSourceLocation refers to. For example, the resource could be a file in the local file system, if the URI scheme is file.

See also setUri().

bool QSourceLocation::operator!=(const QSourceLocation &other) const

Returns true if this QSourceLocation is not equal to other; false otherwise.

bool QSourceLocation::operator==(const QSourceLocation &other) const

Returns true if this QSourceLocation is equal to other; false otherwise.

Two QSourceLocation instances are equal if their uri(), line() and column() are equal.

QSourceLocation instances for which isNull() returns true are considered equal.

Related Non-Members

uint qHash(const QSourceLocation &location)

Computes a hash key for the QSourceLocation location.

This function was introduced in Qt 4.4.

QDebug operator<<(QDebug debug, const QSourceLocation &sourceLocation)

Prints sourceLocation to the debug stream debug.

This function was introduced in Qt 4.4.

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.14/qsourcelocation.html