Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
Loading...
Searching...
No Matches
Moc Class Reference

#include <moc.h>

+ Inheritance diagram for Moc:
+ Collaboration diagram for Moc:

Public Types

enum  PropertyMode { Named , Anonymous }
 
enum class  EncounteredQmlMacro { Yes , No }
 

Public Member Functions

 Moc ()
 
void parse ()
 
void generate (FILE *out, FILE *jsonOutput)
 
bool parseClassHead (ClassDef *def)
 
bool inClass (const ClassDef *def) const
 
bool inNamespace (const NamespaceDef *def) const
 
const QByteArraytoFullyQualified (const QByteArray &name) const noexcept
 
void prependNamespaces (BaseDef &def, const QList< NamespaceDef > &namespaceList) const
 
Type parseType ()
 
bool parseEnum (EnumDef *def)
 
bool parseFunction (FunctionDef *def, bool inMacro=false)
 
bool parseMaybeFunction (const ClassDef *cdef, FunctionDef *def)
 
void parseSlots (ClassDef *def, FunctionDef::Access access)
 
void parseSignals (ClassDef *def)
 
void parseProperty (ClassDef *def, PropertyMode mode)
 
void parsePluginData (ClassDef *def)
 
void createPropertyDef (PropertyDef &def, int propertyIndex, PropertyMode mode)
 
void parsePropertyAttributes (PropertyDef &propDef)
 
void parseEnumOrFlag (BaseDef *def, bool isFlag)
 
void parseFlag (BaseDef *def)
 
EncounteredQmlMacro parseClassInfo (BaseDef *def)
 
void parseClassInfo (ClassDef *def)
 
void parseInterfaces (ClassDef *def)
 
void parseDeclareInterface ()
 
void parseDeclareMetatype ()
 
void parseMocInclude ()
 
void parseSlotInPrivate (ClassDef *def, FunctionDef::Access access)
 
QByteArray parsePropertyAccessor ()
 
void parsePrivateProperty (ClassDef *def, PropertyMode mode)
 
void parseFunctionArguments (FunctionDef *def)
 
QByteArray lexemUntil (Token)
 
bool until (Token)
 
bool testFunctionAttribute (FunctionDef *def)
 
bool testFunctionAttribute (Token tok, FunctionDef *def)
 
bool testFunctionRevision (FunctionDef *def)
 
QTypeRevision parseRevision ()
 
bool skipCxxAttributes ()
 
void checkSuperClasses (ClassDef *def)
 
void checkProperties (ClassDef *cdef)
 
bool testForFunctionModifiers (FunctionDef *def)
 
void checkListSizes (const ClassDef &def)
 
- Public Member Functions inherited from Parser
 Parser ()
 
bool hasNext () const
 
Token next ()
 
Token peek ()
 
bool test (Token)
 
void next (Token)
 
void next (Token, const char *msg)
 
void prev ()
 
Token lookup (int k=1)
 
const Symbolsymbol_lookup (int k=1)
 
Token token ()
 
QByteArray lexem ()
 
QByteArray unquotedLexem ()
 
const Symbolsymbol ()
 
const SymbolsymbolAt (qsizetype idx)
 
Q_NORETURN void error (const Symbol &symbol)
 
Q_NORETURN void error (const char *msg=nullptr)
 
void warning (const char *=nullptr)
 
void warning (const Symbol &sym, QByteArrayView msg)
 
void note (const char *=nullptr)
 
void defaultErrorMsg (const Symbol &sym)
 
void printMsg (QByteArrayView formatStringSuffix, QByteArrayView msg, const Symbol &sym)
 
 Parser (const QString &provider)
 
void addIncludeDirs (const QStringList &list)
 
QString resolveInclude (const QString &filename)
 
void addIncludesRecursive (const QString &filename, QStringList &includes)
 
QStringList findEnumValues (const QString &name, const QStringList &includes)
 
void parseParamReplace (const QString &data, qsizetype offset, const QString &name)
 
void parseInstrument (const QString &data, qsizetype offset)
 
void parsePoint (const QString &data, qsizetype offset)
 
void parsePrefix (const QString &data, qsizetype offset)
 
void parseMetadata (const QString &data, qsizetype offset, const QStringList &includes)
 
int lineNumber (qsizetype offset) const
 
void parse (QIODevice &input, const QString &name)
 
void write (QIODevice &input) const
 
bool isEmpty () const
 

Public Attributes

QByteArray filename
 
bool noInclude
 
bool mustIncludeQPluginH
 
bool requireCompleteTypes
 
QByteArray includePath
 
QList< QByteArrayincludeFiles
 
QList< ClassDefclassList
 
QMap< QByteArray, QByteArrayinterface2IdMap
 
QList< QByteArraymetaTypes
 
QHash< QByteArray, QByteArrayknownQObjectClasses
 
QHash< QByteArray, QByteArrayknownGadgets
 
QMap< QString, QJsonArraymetaArgs
 
QList< QStringparsedPluginMetadataFiles
 
- Public Attributes inherited from Parser
Symbols symbols
 
qsizetype index
 
bool displayWarnings
 
bool displayNotes
 
QList< IncludePathincludes
 
std::stack< QByteArray, QByteArrayListcurrentFilenames
 
QList< Functionm_functions
 
QList< Pointm_points
 
QList< Replacem_replaces
 
QList< QStringm_prefixes
 
QList< QStringm_metadata
 
QList< LineNumberm_offsets
 
QList< QStringm_includeDirs
 
QString m_provider
 

Detailed Description

Definition at line 207 of file moc.h.

Member Enumeration Documentation

◆ EncounteredQmlMacro

enum class Moc::EncounteredQmlMacro
strong
Enumerator
Yes 
No 

Definition at line 265 of file moc.h.

◆ PropertyMode

Enumerator
Named 
Anonymous 

Definition at line 210 of file moc.h.

Constructor & Destructor Documentation

◆ Moc()

Moc::Moc ( )
inline

Definition at line 212 of file moc.h.

Member Function Documentation

◆ checkListSizes()

void Moc::checkListSizes ( const ClassDef & def)

Definition at line 626 of file moc.cpp.

References BaseDef::classInfoList, ClassDef::constructorList, BaseDef::enumList, error, ClassDef::methodList, ClassDef::nonClassSignalList, ClassDef::propertyList, ClassDef::publicList, Q_UNLIKELY, ClassDef::signalList, QList< T >::size(), ClassDef::slotList, and ClassDef::superclassList.

Referenced by parse().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ checkProperties()

void Moc::checkProperties ( ClassDef * cdef)

Definition at line 1926 of file moc.cpp.

References QList< T >::at(), QByteArray::chop(), BaseDef::classname, QByteArray::constData(), QByteArray::endsWith(), QListSpecialMethodsBase< T >::indexOf(), j, QByteArray::left(), QByteArray::mid(), ClassDef::nonClassSignalList, PropertyDef::PointerSpec, ClassDef::propertyList, ClassDef::publicList, PropertyDef::ReferenceSpec, QList< T >::removeIf(), ClassDef::signalList, QList< T >::size(), Parser::symbolAt(), PropertyDef::ValueSpec, and Parser::warning().

Referenced by parse().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ checkSuperClasses()

void Moc::checkSuperClasses ( ClassDef * def)

Definition at line 1868 of file moc.cpp.

References QList< T >::at(), QList< T >::cbegin(), QList< T >::cend(), BaseDef::classname, SuperClass::classname, QByteArray::constData(), QMap< Key, T >::contains(), QHash< Key, T >::contains(), interface2IdMap, ClassDef::interfaceList, QList< T >::isEmpty(), it, knownQObjectClasses, Q_ASSERT, ClassDef::superclassList, QList< T >::value(), and Parser::warning().

Referenced by parse().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ createPropertyDef()

void Moc::createPropertyDef ( PropertyDef & def,
int propertyIndex,
Moc::PropertyMode mode )

Definition at line 1320 of file moc.cpp.

References error, Parser::index, Parser::lexem(), Type::name, Named, Parser::next(), normalizeType(), parsePropertyAttributes(), and parseType().

Referenced by parsePrivateProperty(), and parseProperty().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ generate()

◆ inClass()

bool Moc::inClass ( const ClassDef * def) const
inline

Definition at line 236 of file moc.h.

References BaseDef::begin, and BaseDef::end.

Referenced by parse(), parseSignals(), and parseSlots().

+ Here is the caller graph for this function:

◆ inNamespace()

bool Moc::inNamespace ( const NamespaceDef * def) const
inline

Definition at line 240 of file moc.h.

References BaseDef::begin, and BaseDef::end.

Referenced by parse(), and prependNamespaces().

+ Here is the caller graph for this function:

◆ lexemUntil()

QByteArray Moc::lexemUntil ( Token target)

Definition at line 1768 of file moc.cpp.

References QByteArray::at(), QList< T >::at(), Parser::index, is_ident_char(), Symbol::lexem(), Parser::next(), Parser::prev(), Parser::symbols, and until().

Referenced by parse(), parseDeclareMetatype(), parseFunctionArguments(), parseMocInclude(), parsePropertyAttributes(), parseRevision(), and parseType().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ parse()

void Moc::parse ( )

Definition at line 662 of file moc.cpp.

References FunctionDef::access, Anonymous, QList< T >::begin(), BaseDef::begin, checkListSizes(), checkProperties(), checkSuperClasses(), BaseDef::classInfoList, classList, BaseDef::classname, ClassDef::constructorList, Parser::currentFilenames, NamespaceDef::doGenerate, QList< T >::end(), BaseDef::end, BaseDef::enumDeclarations, BaseDef::enumList, error, BaseDef::flagAliases, handleDefaultArguments(), Parser::hasNext(), ClassDef::hasQGadget, ClassDef::hasQNamespace, NamespaceDef::hasQNamespace, ClassDef::hasQObject, inClass(), Parser::index, inNamespace(), QHash< Key, T >::insert(), QSet< T >::insert(), QMap< Key, T >::isEmpty(), QList< T >::isEmpty(), it, knownGadgets, knownQObjectClasses, Parser::lexem(), lexemUntil(), Parser::lookup(), metaArgs, ClassDef::methodList, Named, Parser::next(), parseClassHead(), parseClassInfo(), parseDeclareInterface(), parseDeclareMetatype(), parseEnum(), parseEnumOrFlag(), parseFlag(), parseInterfaces(), parseMaybeFunction(), parseMocInclude(), parsePluginData(), parsePrivateProperty(), parseProperty(), parseSignals(), parseSlotInPrivate(), parseSlots(), ClassDef::pluginData, prependNamespaces(), FunctionDef::Private, ClassDef::propertyList, FunctionDef::Protected, FunctionDef::Public, ClassDef::publicList, Q_ASSERT, Q_FALLTHROUGH, Q_META_TOKEN_BEGIN, Q_META_TOKEN_END, BaseDef::qualified, ClassDef::revisionedMethods, SCOPE, ClassDef::signalList, QSet< T >::size(), ClassDef::slotList, ClassDef::superclassList, Parser::symbol(), Parser::test(), Parser::unquotedLexem(), and until().

+ Here is the call graph for this function:

◆ parseClassHead()

bool Moc::parseClassHead ( ClassDef * def)

Definition at line 38 of file moc.cpp.

References BaseDef::begin, BaseDef::classname, SuperClass::classname, QList< T >::constFirst(), QHash< Key, T >::contains(), BaseDef::end, i, Parser::index, QHash< Key, T >::insert(), QList< T >::isEmpty(), knownGadgets, Parser::lexem(), Parser::lookup(), parseType(), FunctionDef::Private, FunctionDef::Protected, FunctionDef::Public, QList< T >::push_back(), BaseDef::qualified, SCOPE, skipCxxAttributes(), ClassDef::superclassList, Parser::test(), toFullyQualified(), Parser::token(), and until().

Referenced by parse().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ parseClassInfo() [1/2]

Moc::EncounteredQmlMacro Moc::parseClassInfo ( BaseDef * def)

Definition at line 1639 of file moc.cpp.

References BaseDef::classInfoList, Parser::next(), No, QByteArray::number(), parseRevision(), Parser::symbol(), Parser::test(), Symbol::unquotedLexem(), and Yes.

Referenced by parse(), and parseClassInfo().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ parseClassInfo() [2/2]

void Moc::parseClassInfo ( ClassDef * def)

Definition at line 1666 of file moc.cpp.

References parseClassInfo(), ClassDef::requireCompleteMethodTypes, and Yes.

+ Here is the call graph for this function:

◆ parseDeclareInterface()

void Moc::parseDeclareInterface ( )

Definition at line 1705 of file moc.cpp.

References QMap< Key, T >::insert(), interface, interface2IdMap, Parser::lexem(), Parser::next(), SCOPE, and Parser::test().

Referenced by parse().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ parseDeclareMetatype()

void Moc::parseDeclareMetatype ( )

Definition at line 1728 of file moc.cpp.

References QList< T >::append(), lexemUntil(), metaTypes, Parser::next(), and typeName.

Referenced by parse().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ parseEnum()

bool Moc::parseEnum ( EnumDef * def)

Definition at line 239 of file moc.cpp.

References Parser::currentFilenames, IncludeBegin, IncludeEnd, EnumDef::isEnumClass, Parser::lexem(), Parser::lookup(), EnumDef::name, Parser::next(), NoInclude, normalizeType(), parseType(), skipCxxAttributes(), Parser::symbol(), Parser::test(), EnumDef::type, Symbol::unquotedLexem(), until(), and EnumDef::values.

Referenced by parse().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ parseEnumOrFlag()

void Moc::parseEnumOrFlag ( BaseDef * def,
bool isFlag )

Definition at line 1600 of file moc.cpp.

References BaseDef::enumDeclarations, Parser::lexem(), Parser::next(), SCOPE, and Parser::test().

Referenced by parse().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ parseFlag()

void Moc::parseFlag ( BaseDef * def)

Definition at line 1615 of file moc.cpp.

References BaseDef::flagAliases, QMap< Key, T >::insert(), Parser::lexem(), Parser::next(), SCOPE, and Parser::test().

Referenced by parse().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ parseFunction()

bool Moc::parseFunction ( FunctionDef * def,
bool inMacro = false )

Definition at line 419 of file moc.cpp.

References QByteArray::constData(), error, Type::firstToken, FunctionDef::inlineCode, FunctionDef::isAbstract, FunctionDef::isConst, QByteArray::isEmpty(), FunctionDef::isStatic, FunctionDef::isVirtual, Parser::lookup(), Type::name, FunctionDef::name, Parser::next(), FunctionDef::normalizedType, normalizeType(), parseFunctionArguments(), parseType(), Parser::prev(), Type::rawName, Type::referenceType, skipCxxAttributes(), FunctionDef::tag, Parser::test(), testForFunctionModifiers(), testFunctionAttribute(), testFunctionRevision(), FunctionDef::type, until(), and Parser::warning().

Referenced by parseSignals(), parseSlotInPrivate(), and parseSlots().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ parseFunctionArguments()

void Moc::parseFunctionArguments ( FunctionDef * def)

Definition at line 294 of file moc.cpp.

References arg, FunctionDef::arguments, QList< T >::constLast(), error, Parser::hasNext(), QList< T >::isEmpty(), FunctionDef::isPrivateSignal, FunctionDef::isRawSlot, Parser::lexem(), lexemUntil(), ArgumentDef::normalizedType, normalizeType(), parseType(), Q_UNLIKELY, Q_UNUSED, QByteArray(), QList< T >::removeLast(), QList< T >::size(), Parser::test(), and until().

Referenced by parseFunction(), and parseMaybeFunction().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ parseInterfaces()

void Moc::parseInterfaces ( ClassDef * def)

Definition at line 1672 of file moc.cpp.

References error, i, interface2IdMap, ClassDef::interfaceList, QByteArray::isEmpty(), Parser::lexem(), Parser::next(), SCOPE, Parser::test(), and QMap< Key, T >::value().

Referenced by parse().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ parseMaybeFunction()

bool Moc::parseMaybeFunction ( const ClassDef * cdef,
FunctionDef * def )

Definition at line 529 of file moc.cpp.

References BaseDef::classname, QByteArray::constData(), Type::firstToken, FunctionDef::isConst, FunctionDef::isConstructor, FunctionDef::isDestructor, QByteArray::isEmpty(), FunctionDef::isInvokable, Type::isScoped, FunctionDef::isSignal, FunctionDef::isSlot, FunctionDef::isStatic, FunctionDef::isVirtual, Parser::lookup(), Type::name, FunctionDef::name, FunctionDef::normalizedType, normalizeType(), parseFunctionArguments(), parseType(), Type::rawName, Type::referenceType, skipCxxAttributes(), FunctionDef::tag, Parser::test(), testForFunctionModifiers(), testFunctionAttribute(), testFunctionRevision(), FunctionDef::type, and Parser::warning().

Referenced by parse().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ parseMocInclude()

void Moc::parseMocInclude ( )

Definition at line 1737 of file moc.cpp.

References QList< T >::append(), QByteArray::chop(), includeFiles, lexemUntil(), Parser::next(), and QByteArray::remove().

Referenced by parse().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ parsePluginData()

void Moc::parsePluginData ( ClassDef * def)

Definition at line 1505 of file moc.cpp.

References QList< T >::append(), QByteArray::constData(), Parser::currentFilenames, QFileInfo::dir(), error, QIODevice::errorString(), file, QJsonDocument::fromJson(), QString::fromLocal8Bit(), Parser::includes, QByteArray::isEmpty(), Parser::lexem(), mustIncludeQPluginH, Parser::next(), QFile::open(), parsedPluginMetadataFiles, ClassDef::pluginData, QByteArray(), QIODevice::readAll(), QIODeviceBase::ReadOnly, Parser::test(), QString::toUtf8(), Parser::unquotedLexem(), and Parser::warning().

Referenced by parse().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ parsePrivateProperty()

void Moc::parsePrivateProperty ( ClassDef * def,
Moc::PropertyMode mode )

Definition at line 1587 of file moc.cpp.

References createPropertyDef(), PropertyDef::inPrivateClass, Parser::next(), parsePropertyAccessor(), ClassDef::propertyList, and QList< T >::size().

Referenced by parse().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ parseProperty()

void Moc::parseProperty ( ClassDef * def,
Moc::PropertyMode mode )

Definition at line 1495 of file moc.cpp.

References createPropertyDef(), Parser::next(), ClassDef::propertyList, and QList< T >::size().

Referenced by parse().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ parsePropertyAccessor()

QByteArray Moc::parsePropertyAccessor ( )

Definition at line 1569 of file moc.cpp.

References Parser::lexem(), Parser::next(), and Parser::peek().

Referenced by parsePrivateProperty().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ parsePropertyAttributes()

void Moc::parsePropertyAttributes ( PropertyDef & propDef)

Definition at line 1358 of file moc.cpp.

References QByteArray::constData(), QByteArray::endsWith(), error, QTypeRevision::fromMinorVersion(), QTypeRevision::isValidSegment(), Parser::lexem(), lexemUntil(), Parser::next(), ok, parseRevision(), Parser::prev(), Parser::symbol(), Parser::test(), QTypeRevision::toEncodedVersion(), and Parser::warning().

Referenced by createPropertyDef().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ parseRevision()

QTypeRevision Moc::parseRevision ( )

Definition at line 376 of file moc.cpp.

References error, QTypeRevision::fromMinorVersion(), QTypeRevision::fromVersion(), QTypeRevision::isValidSegment(), lexemUntil(), Parser::next(), and ok.

Referenced by parseClassInfo(), parsePropertyAttributes(), parseSignals(), parseSlots(), and testFunctionRevision().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ parseSignals()

void Moc::parseSignals ( ClassDef * def)

Definition at line 1276 of file moc.cpp.

References FunctionDef::access, error, handleDefaultArguments(), Parser::hasNext(), inClass(), Parser::next(), parseFunction(), parseRevision(), Parser::prev(), FunctionDef::Public, ClassDef::revisionedMethods, ClassDef::signalList, Parser::test(), until(), and Parser::warning().

Referenced by parse().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ parseSlotInPrivate()

void Moc::parseSlotInPrivate ( ClassDef * def,
FunctionDef::Access access )

Definition at line 1747 of file moc.cpp.

References handleDefaultArguments(), Parser::lexem(), Parser::next(), parseFunction(), ClassDef::revisionedMethods, ClassDef::slotList, and Parser::test().

Referenced by parse().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ parseSlots()

void Moc::parseSlots ( ClassDef * def,
FunctionDef::Access access )

Definition at line 1234 of file moc.cpp.

References FunctionDef::access, error, handleDefaultArguments(), Parser::hasNext(), inClass(), Parser::next(), parseFunction(), parseRevision(), Parser::prev(), ClassDef::revisionedMethods, ClassDef::slotList, Parser::test(), and until().

Referenced by parse().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ parseType()

Type Moc::parseType ( )

Definition at line 124 of file moc.cpp.

References Type::firstToken, Parser::lexem(), lexemUntil(), Parser::lookup(), Parser::next(), Parser::prev(), Q_FALLTHROUGH, SCOPE, skipCxxAttributes(), and Parser::test().

Referenced by createPropertyDef(), parseClassHead(), parseEnum(), parseFunction(), parseFunctionArguments(), and parseMaybeFunction().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ prependNamespaces()

void Moc::prependNamespaces ( BaseDef & def,
const QList< NamespaceDef > & namespaceList ) const

Definition at line 616 of file moc.cpp.

References inNamespace(), it, QByteArray::prepend(), and BaseDef::qualified.

Referenced by parse().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ skipCxxAttributes()

bool Moc::skipCxxAttributes ( )

Definition at line 367 of file moc.cpp.

References Parser::index, Parser::test(), and until().

Referenced by parseClassHead(), parseEnum(), parseFunction(), parseMaybeFunction(), and parseType().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ testForFunctionModifiers()

bool Moc::testForFunctionModifiers ( FunctionDef * def)

Definition at line 521 of file moc.cpp.

References FunctionDef::isStatic, FunctionDef::isVirtual, and Parser::test().

Referenced by parseFunction(), and parseMaybeFunction().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ testFunctionAttribute() [1/2]

bool Moc::testFunctionAttribute ( FunctionDef * def)

Definition at line 335 of file moc.cpp.

References QList< T >::at(), Parser::index, QList< T >::size(), Parser::symbols, testFunctionAttribute(), and Symbol::token.

Referenced by parseFunction(), parseMaybeFunction(), and testFunctionAttribute().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ testFunctionAttribute() [2/2]

bool Moc::testFunctionAttribute ( Token tok,
FunctionDef * def )

◆ testFunctionRevision()

bool Moc::testFunctionRevision ( FunctionDef * def)

Definition at line 407 of file moc.cpp.

References parseRevision(), FunctionDef::revision, Parser::test(), and QTypeRevision::toEncodedVersion().

Referenced by parseFunction(), and parseMaybeFunction().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ toFullyQualified()

const QByteArray & Moc::toFullyQualified ( const QByteArray & name) const
noexcept

Definition at line 29 of file moc.cpp.

References QSet< T >::end(), QSet< T >::find(), and it.

Referenced by parseClassHead().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ until()

bool Moc::until ( Token target)

Definition at line 1788 of file moc.cpp.

References QList< T >::at(), Parser::index, QList< T >::size(), Parser::symbols, and Symbol::token.

Referenced by lexemUntil(), parse(), parseClassHead(), parseEnum(), parseFunction(), parseFunctionArguments(), parseSignals(), parseSlots(), and skipCxxAttributes().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Member Data Documentation

◆ classList

QList<ClassDef> Moc::classList

Definition at line 223 of file moc.h.

Referenced by generate(), and parse().

◆ filename

QByteArray Moc::filename

Definition at line 216 of file moc.h.

Referenced by generate().

◆ includeFiles

QList<QByteArray> Moc::includeFiles

Definition at line 222 of file moc.h.

Referenced by generate(), and parseMocInclude().

◆ includePath

QByteArray Moc::includePath

Definition at line 221 of file moc.h.

Referenced by generate().

◆ interface2IdMap

QMap<QByteArray, QByteArray> Moc::interface2IdMap

Definition at line 224 of file moc.h.

Referenced by checkSuperClasses(), parseDeclareInterface(), and parseInterfaces().

◆ knownGadgets

QHash<QByteArray, QByteArray> Moc::knownGadgets

Definition at line 228 of file moc.h.

Referenced by generate(), parse(), and parseClassHead().

◆ knownQObjectClasses

QHash<QByteArray, QByteArray> Moc::knownQObjectClasses

Definition at line 227 of file moc.h.

Referenced by checkSuperClasses(), generate(), and parse().

◆ metaArgs

QMap<QString, QJsonArray> Moc::metaArgs

Definition at line 229 of file moc.h.

Referenced by parse().

◆ metaTypes

QList<QByteArray> Moc::metaTypes

Definition at line 225 of file moc.h.

Referenced by generate(), and parseDeclareMetatype().

◆ mustIncludeQPluginH

bool Moc::mustIncludeQPluginH

Definition at line 219 of file moc.h.

Referenced by generate(), and parsePluginData().

◆ noInclude

bool Moc::noInclude

Definition at line 218 of file moc.h.

Referenced by generate().

◆ parsedPluginMetadataFiles

QList<QString> Moc::parsedPluginMetadataFiles

Definition at line 230 of file moc.h.

Referenced by parsePluginData().

◆ requireCompleteTypes

bool Moc::requireCompleteTypes

Definition at line 220 of file moc.h.

Referenced by generate().


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