diff options
Diffstat (limited to 'ApiExtractor/abstractmetabuilder.cpp')
-rw-r--r-- | ApiExtractor/abstractmetabuilder.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/ApiExtractor/abstractmetabuilder.cpp b/ApiExtractor/abstractmetabuilder.cpp index a5c31bf38..564f6c3ec 100644 --- a/ApiExtractor/abstractmetabuilder.cpp +++ b/ApiExtractor/abstractmetabuilder.cpp @@ -1850,6 +1850,14 @@ void AbstractMetaBuilder::fixArgumentNames(AbstractMetaFunction* func) } } +static QString functionSignature(FunctionModelItem functionItem) +{ + QStringList args; + foreach (ArgumentModelItem arg, functionItem->arguments()) + args << arg->type().toString(); + return QString("%1(%2)").arg(functionItem->name(), args.join(",")); +} + AbstractMetaFunction* AbstractMetaBuilder::traverseFunction(FunctionModelItem functionItem) { QString functionName = functionItem->name(); @@ -1861,6 +1869,10 @@ AbstractMetaFunction* AbstractMetaBuilder::traverseFunction(FunctionModelItem fu m_rejectedFunctions.insert(className + "::" + functionName, GenerationDisabled); return 0; } + else if (TypeDatabase::instance()->isFunctionRejected(className, functionSignature(functionItem))) { + m_rejectedFunctions.insert(className + "::" + functionName, GenerationDisabled); + return 0; + } Q_ASSERT(functionItem->functionType() == CodeModel::Normal || functionItem->functionType() == CodeModel::Signal |