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
OutputContext Class Reference

Bundles output configuration without static variables. More...

#include <outputcontext.h>

Collaboration diagram for OutputContext:

Public Member Functions

QString outputPrefix (const QString &nodeType) const
 Returns the output prefix for the given nodeType.
QString outputSuffix (const QString &nodeType) const
 Returns the output suffix for the given nodeType.

Static Public Member Functions

static OutputContext fromConfig (const Config &config, const QString &format)
 Creates an OutputContext from the given config for the specified output format.

Public Attributes

OutputDirectory outputDir
QString project
QString subdir
QString fileExtension
QHash< QString, QStringoutputPrefixes
QHash< QString, QStringoutputSuffixes
bool useSubdirs {true}
bool noLinkErrors {false}
bool autolinkErrors {false}

Detailed Description

Bundles output configuration without static variables.

OutputContext captures all the configuration state that generators need for output, replacing Generator's 19 static variables with explicit, injectable state.

This enables: \list

  • Testability - configurations can be created for tests.
  • Reusability - HrefResolver, IndexWriter can use the same context.
  • Statelessness - no global mutable state between runs. \endlist

OutputContext field Generator static
outputDir s_outDir
project s_project
subdir s_outSubdir
outputPrefixes s_outputPrefixes
outputSuffixes s_outputSuffixes
useSubdirs s_useOutputSubdirs
See also
DocumentWriter, FileDocumentWriter

Definition at line 16 of file outputcontext.h.

Member Function Documentation

◆ fromConfig()

OutputContext OutputContext::fromConfig ( const Config & config,
const QString & format )
staticnodiscard

Creates an OutputContext from the given config for the specified output format.

This method extracts all relevant configuration values that generators need, centralizing the logic that was previously scattered across Generator's static initialization.

Definition at line 53 of file outputcontext.cpp.

References Location::Location().

Here is the call graph for this function:

◆ outputPrefix()

QString OutputContext::outputPrefix ( const QString & nodeType) const
nodiscard

Returns the output prefix for the given nodeType.

Common values: "QML" -> "qml-", "CPP" -> "cpp-".

Definition at line 108 of file outputcontext.cpp.

◆ outputSuffix()

QString OutputContext::outputSuffix ( const QString & nodeType) const
nodiscard

Returns the output suffix for the given nodeType.

Definition at line 116 of file outputcontext.cpp.

Member Data Documentation

◆ autolinkErrors

bool OutputContext::autolinkErrors {false}

Definition at line 26 of file outputcontext.h.

◆ fileExtension

QString OutputContext::fileExtension

Definition at line 21 of file outputcontext.h.

◆ noLinkErrors

bool OutputContext::noLinkErrors {false}

Definition at line 25 of file outputcontext.h.

◆ outputDir

OutputDirectory OutputContext::outputDir

Definition at line 18 of file outputcontext.h.

◆ outputPrefixes

QHash<QString, QString> OutputContext::outputPrefixes

Definition at line 22 of file outputcontext.h.

◆ outputSuffixes

QHash<QString, QString> OutputContext::outputSuffixes

Definition at line 23 of file outputcontext.h.

◆ project

QString OutputContext::project

Definition at line 19 of file outputcontext.h.

◆ subdir

QString OutputContext::subdir

Definition at line 20 of file outputcontext.h.

◆ useSubdirs

bool OutputContext::useSubdirs {true}

Definition at line 24 of file outputcontext.h.


The documentation for this class was generated from the following files: