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
Utilities Namespace Reference

This namespace holds QDoc-internal utility methods. More...

Functions

void startDebugging (const QString &message)
void stopDebugging (const QString &message)
bool debugging ()
const INodenodeForString (const QString &string)
 Converts a string representation of a pointer address to an INode pointer.
QString stringForNode (const INode *node)
 Converts an INode pointer address to its string representation.
QString uniqueIdentifier (const Location &loc, const QString &prefix)
 Returns a unique identifier based on location loc, with a given prefix.
QString separator (qsizetype wordPosition, qsizetype numberOfWords)
QString comma (qsizetype wordPosition, qsizetype numberOfWords)
QString asAsciiPrintable (const QString &str)
 Returns an ascii-printable representation of str.
QString protect (const QString &string)
QStringList getInternalIncludePaths (const QString &compiler)
bool isGeneratedFile (const QString &path)
static void setDebugEnabled (bool value)
static bool runProcess (const QString &program, const QStringList &arguments, QByteArray *stdOutIn, QByteArray *stdErrIn)
static QByteArray frameworkSuffix ()

Variables

static constexpr QLatin1StringView samp = "&"_L1
static constexpr QLatin1StringView slt = "<"_L1
static constexpr QLatin1StringView sgt = ">"_L1
static constexpr QLatin1StringView squot = """_L1

Detailed Description

This namespace holds QDoc-internal utility methods.

Function Documentation

◆ asAsciiPrintable()

QString Utilities::asAsciiPrintable ( const QString & str)

Returns an ascii-printable representation of str.

Replace non-ascii-printable characters in str from a subset of such characters. The subset includes alphanumeric (alnum) characters ([a-zA-Z0-9]), space, punctuation characters, and common symbols. Non-alnum characters in this subset are replaced by a single hyphen. Leading, trailing, and consecutive hyphens are removed, such that the resulting string does not start or end with a hyphen. All characters are converted to lowercase.

If any character in str is non-latin, or latin and not found in the aforementioned subset (e.g. 'ß', 'å', or 'ö'), a hash of str is appended to the final string.

Returns a string that is normalized for use where ascii-printable strings are required, such as file names or fragment identifiers in URLs.

The implementation is equivalent to:

name.replace(QRegularExpression("[^A-Za-z0-9]+"), " ");
name = name.simplified();
name.replace(QLatin1Char(' '), QLatin1Char('-'));
name = name.toLower();
\inmodule QtCore \reentrant
EGLImageKHR EGLint * name
\inmodule QtCore \reentrant
Definition qchar.h:18

However, it has been measured to be approximately four times faster.

Definition at line 157 of file utilities.cpp.

◆ comma()

QString Utilities::comma ( qsizetype wordPosition,
qsizetype numberOfWords )

Convenience method that's used to get the correct punctuation character for the words at wordPosition in a list of numberOfWords length.

For a list of length one, returns an empty QString. For a list of length two, returns the string " and ". For any length beyond two, returns the string ", " until the last element, which returns ", and ".

See also
comma()

Definition at line 117 of file utilities.cpp.

◆ debugging()

bool Utilities::debugging ( )

Definition at line 42 of file utilities.cpp.

Referenced by processQdocconfFile().

Here is the caller graph for this function:

◆ frameworkSuffix()

QByteArray Utilities::frameworkSuffix ( )
static

Definition at line 270 of file utilities.cpp.

◆ getInternalIncludePaths()

QStringList Utilities::getInternalIncludePaths ( const QString & compiler)

Determine the compiler's internal include paths from the output of

\badcode [clang++|g++] -E -x c++ - -v </dev/null

Output looks like:

\badcode #include <...> search starts here: /usr/local/include /System/Library/Frameworks (framework directory) End of search list.

Definition at line 291 of file utilities.cpp.

◆ isGeneratedFile()

bool Utilities::isGeneratedFile ( const QString & path)

Definition at line 324 of file utilities.cpp.

◆ nodeForString()

const INode * Utilities::nodeForString ( const QString & string)

Converts a string representation of a pointer address to an INode pointer.

This function takes a string, assumed to contain the numerical representation of an INode pointer's address (as generated by stringForNode()), and casts it back to an INode pointer.

See also
stringForNode()

Definition at line 56 of file utilities.cpp.

◆ protect()

QString Utilities::protect ( const QString & string)

Definition at line 199 of file utilities.cpp.

◆ runProcess()

bool Utilities::runProcess ( const QString & program,
const QStringList & arguments,
QByteArray * stdOutIn,
QByteArray * stdErrIn )
static

Definition at line 229 of file utilities.cpp.

◆ separator()

QString Utilities::separator ( qsizetype wordPosition,
qsizetype numberOfWords )

Convenience method that's used to get the correct punctuation character for the words at wordPosition in a list of numberOfWords length. For the last position in the list, returns "." (full stop). For any other word, this method calls comma().

See also
comma()

Definition at line 97 of file utilities.cpp.

◆ setDebugEnabled()

void Utilities::setDebugEnabled ( bool value)
inlinestatic

Definition at line 24 of file utilities.cpp.

Referenced by startDebugging(), and stopDebugging().

Here is the caller graph for this function:

◆ startDebugging()

void Utilities::startDebugging ( const QString & message)

Definition at line 30 of file utilities.cpp.

References setDebugEnabled().

Here is the call graph for this function:

◆ stopDebugging()

void Utilities::stopDebugging ( const QString & message)

Definition at line 36 of file utilities.cpp.

References setDebugEnabled().

Here is the call graph for this function:

◆ stringForNode()

QString Utilities::stringForNode ( const INode * node)

Converts an INode pointer address to its string representation.

This function takes a node pointer and returns a string that contains the numerical value of its memory address. This is used for serialization or passing node references where a direct pointer cannot be used.

Note
The returned string is only valid within the same process. It does {not} persist across runs.

Definition at line 70 of file utilities.cpp.

◆ uniqueIdentifier()

QString Utilities::uniqueIdentifier ( const Location & loc,
const QString & prefix )

Returns a unique identifier based on location loc, with a given prefix.

Definition at line 79 of file utilities.cpp.

Variable Documentation

◆ samp

QLatin1StringView Utilities::samp = "&amp;"_L1
staticconstexpr

Definition at line 36 of file utilities.h.

◆ sgt

QLatin1StringView Utilities::sgt = "&gt;"_L1
staticconstexpr

Definition at line 38 of file utilities.h.

◆ slt

QLatin1StringView Utilities::slt = "&lt;"_L1
staticconstexpr

Definition at line 37 of file utilities.h.

◆ squot

QLatin1StringView Utilities::squot = "&quot;"_L1
staticconstexpr

Definition at line 39 of file utilities.h.