aboutsummaryrefslogtreecommitdiffstats
path: root/sources/shiboken6/generator/shiboken
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@qt.io>2023-09-15 12:18:41 +0200
committerFriedemann Kleint <Friedemann.Kleint@qt.io>2023-09-19 09:35:11 +0200
commit200275225befe77d020f5caf6d8eb1a576a79755 (patch)
tree88f8d0d535b0492c7d37be680297fba97e1dc9dd /sources/shiboken6/generator/shiboken
parentf2cc10c24014a41c9b92ae1f1aed04445fcf608e (diff)
shiboken6: Make more generator methods static
After db3ef22bc3725cabdc46f3359509326df5f270cf (making generator options statically accessible), more generator methods can be made static. Apply several rounds of clang-tidy scanning for [readability-convert-member-functions-to-static]. Pick-to: 6.6 Change-Id: I67f4c5652f37d3aa1dfa56c18ce5dff3c503a341 Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
Diffstat (limited to 'sources/shiboken6/generator/shiboken')
-rw-r--r--sources/shiboken6/generator/shiboken/cppgenerator.cpp76
-rw-r--r--sources/shiboken6/generator/shiboken/cppgenerator.h154
-rw-r--r--sources/shiboken6/generator/shiboken/headergenerator.cpp6
-rw-r--r--sources/shiboken6/generator/shiboken/headergenerator.h11
-rw-r--r--sources/shiboken6/generator/shiboken/shibokengenerator.cpp12
-rw-r--r--sources/shiboken6/generator/shiboken/shibokengenerator.h8
6 files changed, 142 insertions, 125 deletions
diff --git a/sources/shiboken6/generator/shiboken/cppgenerator.cpp b/sources/shiboken6/generator/shiboken/cppgenerator.cpp
index 204c68ae9..093264479 100644
--- a/sources/shiboken6/generator/shiboken/cppgenerator.cpp
+++ b/sources/shiboken6/generator/shiboken/cppgenerator.cpp
@@ -989,7 +989,7 @@ void CppGenerator::writeConstructorNative(TextStream &s, const GeneratorContext
}
void CppGenerator::writeDestructorNative(TextStream &s,
- const GeneratorContext &classContext) const
+ const GeneratorContext &classContext)
{
s << classContext.wrapperName() << "::~"
<< classContext.wrapperName() << "()\n{\n" << indent;
@@ -1170,7 +1170,7 @@ static const char PYTHON_ARGS_ARRAY[] = "pyArgArray";
void CppGenerator::writeVirtualMethodNativeVectorCallArgs(TextStream &s,
const AbstractMetaFunctionCPtr &func,
const AbstractMetaArgumentList &arguments,
- const QList<int> &invalidateArgs) const
+ const QList<int> &invalidateArgs)
{
Q_ASSERT(!arguments.isEmpty());
s << "PyObject *" << PYTHON_ARGS_ARRAY <<'[' << arguments.size() << "] = {\n" << indent;
@@ -1199,7 +1199,7 @@ void CppGenerator::writeVirtualMethodNativeVectorCallArgs(TextStream &s,
void CppGenerator::writeVirtualMethodNativeArgs(TextStream &s,
const AbstractMetaFunctionCPtr &func,
const AbstractMetaArgumentList &arguments,
- const QList<int> &invalidateArgs) const
+ const QList<int> &invalidateArgs)
{
s << "Shiboken::AutoDecRef " << PYTHON_ARGS << '(';
if (arguments.isEmpty()) {
@@ -2052,7 +2052,7 @@ void CppGenerator::writeSmartPointerConverterFunctions(TextStream &s,
}
}
-bool CppGenerator::needsArgumentErrorHandling(const OverloadData &overloadData) const
+bool CppGenerator::needsArgumentErrorHandling(const OverloadData &overloadData)
{
if (overloadData.maxArgs() > 0)
return true;
@@ -2064,9 +2064,10 @@ bool CppGenerator::needsArgumentErrorHandling(const OverloadData &overloadData)
&& isQObject(rfunc->ownerClass());
}
-void CppGenerator::writeMethodWrapperPreamble(TextStream &s,const OverloadData &overloadData,
+void CppGenerator::writeMethodWrapperPreamble(TextStream &s,
+ const OverloadData &overloadData,
const GeneratorContext &context,
- ErrorReturn errorReturn) const
+ ErrorReturn errorReturn)
{
const auto rfunc = overloadData.referenceFunction();
const auto ownerClass = rfunc->targetLangOwner();
@@ -2504,7 +2505,7 @@ void CppGenerator::writeSmartPointerCppSelfDefinition(TextStream &s,
void CppGenerator::writeCppSelfDefinition(TextStream &s,
const GeneratorContext &context,
ErrorReturn errorReturn,
- CppSelfDefinitionFlags flags) const
+ CppSelfDefinitionFlags flags)
{
Q_ASSERT(!(flags.testFlag(CppSelfAsReference) && flags.testFlag(HasStaticOverload)));
if (context.forSmartPointer()) {
@@ -2556,7 +2557,7 @@ void CppGenerator::writeCppSelfDefinition(TextStream &s,
const AbstractMetaFunctionCPtr &func,
const GeneratorContext &context,
ErrorReturn errorReturn,
- CppSelfDefinitionFlags flags) const
+ CppSelfDefinitionFlags flags)
{
if (!func->ownerClass() || func->isConstructor())
return;
@@ -3614,9 +3615,11 @@ static bool forceQObjectNamedArguments(const AbstractMetaFunctionCPtr &func)
|| name == u"QSplitterHandle" || name == u"QSizeGrip";
}
-void CppGenerator::writeNamedArgumentResolution(TextStream &s, const AbstractMetaFunctionCPtr &func,
- bool usePyArgs, const OverloadData &overloadData,
- ErrorReturn errorReturn) const
+void CppGenerator::writeNamedArgumentResolution(TextStream &s,
+ const AbstractMetaFunctionCPtr &func,
+ bool usePyArgs,
+ const OverloadData &overloadData,
+ ErrorReturn errorReturn)
{
const AbstractMetaArgumentList &args = OverloadData::getArgumentsWithDefaultValues(func);
const bool hasDefaultArguments = !args.isEmpty();
@@ -4315,7 +4318,8 @@ void CppGenerator::writeEnumConverterInitialization(TextStream &s, const Abstrac
s << outdent << "}\n";
}
-QString CppGenerator::writeContainerConverterInitialization(TextStream &s, const AbstractMetaType &type) const
+QString CppGenerator::writeContainerConverterInitialization(TextStream &s,
+ const AbstractMetaType &type)
{
QByteArray cppSignature = QMetaObject::normalizedSignature(type.cppSignature().toUtf8());
s << "// Register converter for type '" << cppSignature << "'.\n";
@@ -4423,7 +4427,7 @@ bool CppGenerator::supportsMappingProtocol(const AbstractMetaClassCPtr &metaClas
return false;
}
-bool CppGenerator::supportsNumberProtocol(const AbstractMetaClassCPtr &metaClass) const
+bool CppGenerator::supportsNumberProtocol(const AbstractMetaClassCPtr &metaClass)
{
return metaClass->hasArithmeticOperatorOverload()
|| metaClass->hasIncDecrementOperatorOverload()
@@ -4443,7 +4447,7 @@ bool CppGenerator::supportsSequenceProtocol(const AbstractMetaClassCPtr &metaCla
return baseType && baseType->isContainer();
}
-bool CppGenerator::shouldGenerateGetSetList(const AbstractMetaClassCPtr &metaClass) const
+bool CppGenerator::shouldGenerateGetSetList(const AbstractMetaClassCPtr &metaClass)
{
for (const AbstractMetaField &f : metaClass->fields()) {
if (!f.isStatic())
@@ -4842,7 +4846,7 @@ void CppGenerator::writeTpClearFunction(TextStream &s, const AbstractMetaClassCP
<< outdent << "}\n";
}
-void CppGenerator::writeCopyFunction(TextStream &s, const GeneratorContext &context) const
+void CppGenerator::writeCopyFunction(TextStream &s, const GeneratorContext &context)
{
const auto metaClass = context.metaClass();
const QString className = chopType(cpythonTypeName(metaClass));
@@ -4869,7 +4873,7 @@ static inline void writeGetterFunctionStart(TextStream &s, const QString &funcNa
}
QString CppGenerator::cppFieldAccess(const AbstractMetaField &metaField,
- const GeneratorContext &context) const
+ const GeneratorContext &context)
{
QString result;
QTextStream str(&result);
@@ -4883,7 +4887,7 @@ QString CppGenerator::cppFieldAccess(const AbstractMetaField &metaField,
void CppGenerator::writeGetterFunction(TextStream &s,
const AbstractMetaField &metaField,
- const GeneratorContext &context) const
+ const GeneratorContext &context)
{
writeGetterFunctionStart(s, cpythonGetterFunctionName(metaField));
@@ -4957,8 +4961,9 @@ void CppGenerator::writeGetterFunction(TextStream &s,
}
// Write a getter for QPropertySpec
-void CppGenerator::writeGetterFunction(TextStream &s, const QPropertySpec &property,
- const GeneratorContext &context) const
+void CppGenerator::writeGetterFunction(TextStream &s,
+ const QPropertySpec &property,
+ const GeneratorContext &context)
{
writeGetterFunctionStart(s, cpythonGetterFunctionName(property, context.metaClass()));
writeCppSelfDefinition(s, context);
@@ -4972,10 +4977,11 @@ void CppGenerator::writeGetterFunction(TextStream &s, const QPropertySpec &prope
}
// Write setter function preamble (type checks on "pyIn")
-void CppGenerator::writeSetterFunctionPreamble(TextStream &s, const QString &name,
+void CppGenerator::writeSetterFunctionPreamble(TextStream &s,
+ const QString &name,
const QString &funcName,
const AbstractMetaType &type,
- const GeneratorContext &context) const
+ const GeneratorContext &context)
{
s << "static int " << funcName << "(PyObject *self, PyObject *pyIn, void *)\n"
<< "{\n" << indent;
@@ -4999,7 +5005,7 @@ void CppGenerator::writeSetterFunctionPreamble(TextStream &s, const QString &nam
void CppGenerator::writeSetterFunction(TextStream &s,
const AbstractMetaField &metaField,
- const GeneratorContext &context) const
+ const GeneratorContext &context)
{
const AbstractMetaType &fieldType = metaField.type();
writeSetterFunctionPreamble(s, metaField.name(), cpythonSetterFunctionName(metaField),
@@ -5031,10 +5037,12 @@ void CppGenerator::writeSetterFunction(TextStream &s,
}
// Write a setter for QPropertySpec
-void CppGenerator::writeSetterFunction(TextStream &s, const QPropertySpec &property,
- const GeneratorContext &context) const
+void CppGenerator::writeSetterFunction(TextStream &s,
+ const QPropertySpec &property,
+ const GeneratorContext &context)
{
- writeSetterFunctionPreamble(s, property.name(),
+ writeSetterFunctionPreamble(s,
+ property.name(),
cpythonSetterFunctionName(property, context.metaClass()),
property.type(), context);
@@ -5048,7 +5056,7 @@ void CppGenerator::writeSetterFunction(TextStream &s, const QPropertySpec &prope
void CppGenerator::writeRichCompareFunctionHeader(TextStream &s,
const QString &baseName,
- const GeneratorContext &context) const
+ const GeneratorContext &context)
{
s << "static PyObject * ";
s << baseName << "_richcompare(PyObject *self, PyObject *" << PYTHON_ARG
@@ -5405,7 +5413,7 @@ void CppGenerator::writeSignatureInfo(TextStream &s, const OverloadData &overloa
}
}
-void CppGenerator::writeEnumsInitialization(TextStream &s, AbstractMetaEnumList &enums) const
+void CppGenerator::writeEnumsInitialization(TextStream &s, AbstractMetaEnumList &enums)
{
if (enums.isEmpty())
return;
@@ -5437,7 +5445,7 @@ static qsizetype maxLineLength(const QStringList &list)
return result;
}
-bool CppGenerator::writeEnumInitialization(TextStream &s, const AbstractMetaEnum &cppEnum) const
+bool CppGenerator::writeEnumInitialization(TextStream &s, const AbstractMetaEnum &cppEnum)
{
const auto enclosingClass = cppEnum.targetLangEnclosingClass();
const bool hasUpperEnclosingClass = enclosingClass
@@ -5645,7 +5653,7 @@ void CppGenerator::writeSignatureStrings(TextStream &s,
// Return the class name for which to invoke the destructor
QString CppGenerator::destructorClassName(const AbstractMetaClassCPtr &metaClass,
- const GeneratorContext &classContext) const
+ const GeneratorContext &classContext)
{
if (metaClass->isNamespace() || metaClass->hasPrivateDestructor())
return {};
@@ -6002,7 +6010,7 @@ void CppGenerator::writeTypeDiscoveryFunction(TextStream &s,
}
void CppGenerator::writeSetattroDefinition(TextStream &s,
- const AbstractMetaClassCPtr &metaClass) const
+ const AbstractMetaClassCPtr &metaClass)
{
s << "static int " << ShibokenGenerator::cpythonSetattroFunctionName(metaClass)
<< "(PyObject *self, PyObject *name, PyObject *value)\n{\n" << indent;
@@ -6073,7 +6081,7 @@ static QString smartPointerGetter(const GeneratorContext &context)
}
void CppGenerator::writeSmartPointerSetattroFunction(TextStream &s,
- const GeneratorContext &context) const
+ const GeneratorContext &context)
{
Q_ASSERT(context.forSmartPointer());
writeSetattroDefinition(s, context.metaClass());
@@ -6230,7 +6238,7 @@ void CppGenerator::writeNbBoolExpression(TextStream &s, const BoolCastFunction &
void CppGenerator::writeNbBoolFunction(const GeneratorContext &context,
const BoolCastFunction &f,
- TextStream &s) const
+ TextStream &s)
{
s << "static int " << cpythonBaseName(context.metaClass()) << "___nb_bool(PyObject *self)\n"
<< "{\n" << indent;
@@ -6839,7 +6847,7 @@ void CppGenerator::writeReturnValueHeuristics(TextStream &s, const AbstractMetaF
}
}
-void CppGenerator::writeHashFunction(TextStream &s, const GeneratorContext &context) const
+void CppGenerator::writeHashFunction(TextStream &s, const GeneratorContext &context)
{
const auto metaClass = context.metaClass();
const char hashType[] = "Py_hash_t";
@@ -6934,7 +6942,7 @@ void CppGenerator::writeIndexError(TextStream &s, const QString &errorMsg,
QString CppGenerator::writeReprFunction(TextStream &s,
const GeneratorContext &context,
- uint indirections) const
+ uint indirections)
{
const auto metaClass = context.metaClass();
QString funcName = cpythonBaseName(metaClass) + reprFunction();
diff --git a/sources/shiboken6/generator/shiboken/cppgenerator.h b/sources/shiboken6/generator/shiboken/cppgenerator.h
index 72d9d707d..110326f5c 100644
--- a/sources/shiboken6/generator/shiboken/cppgenerator.h
+++ b/sources/shiboken6/generator/shiboken/cppgenerator.h
@@ -58,21 +58,22 @@ private:
static void writeCacheResetNative(TextStream &s, const GeneratorContext &classContext);
void writeConstructorNative(TextStream &s, const GeneratorContext &classContext,
const AbstractMetaFunctionCPtr &func) const;
- void writeDestructorNative(TextStream &s, const GeneratorContext &classContext) const;
+ static void writeDestructorNative(TextStream &s, const GeneratorContext &classContext);
QString getVirtualFunctionReturnTypeName(const AbstractMetaFunctionCPtr &func) const;
static QPair<QString, QChar>
virtualMethodNativeArg(const AbstractMetaFunctionCPtr &func,
const AbstractMetaArgument &arg);
- void writeVirtualMethodNativeVectorCallArgs(TextStream &s,
- const AbstractMetaFunctionCPtr &func,
- const AbstractMetaArgumentList &arguments,
- const QList<int> &invalidateArgs) const;
- void writeVirtualMethodNativeArgs(TextStream &s,
- const AbstractMetaFunctionCPtr &func,
- const AbstractMetaArgumentList &arguments,
- const QList<int> &invalidateArgs) const;
- void writeVirtualMethodNative(TextStream &s, const AbstractMetaFunctionCPtr &func,
+ static void writeVirtualMethodNativeVectorCallArgs(TextStream &s,
+ const AbstractMetaFunctionCPtr &func,
+ const AbstractMetaArgumentList &arguments,
+ const QList<int> &invalidateArgs);
+ static void writeVirtualMethodNativeArgs(TextStream &s,
+ const AbstractMetaFunctionCPtr &func,
+ const AbstractMetaArgumentList &arguments,
+ const QList<int> &invalidateArgs);
+ void writeVirtualMethodNative(TextStream &s,
+ const AbstractMetaFunctionCPtr &func,
int cacheIndex) const;
void writeVirtualMethodCppCall(TextStream &s, const AbstractMetaFunctionCPtr &func,
const QString &funcName, const QList<CodeSnip> &snips,
@@ -117,11 +118,13 @@ private:
void writeSmartPointerConverterFunctions(TextStream &s,
const AbstractMetaType &smartPointerType) const;
- bool needsArgumentErrorHandling(const OverloadData &overloadData) const;
- void writeMethodWrapperPreamble(TextStream &s, const OverloadData &overloadData,
- const GeneratorContext &context,
- ErrorReturn errorReturn = ErrorReturn::Default) const;
- void writeConstructorWrapper(TextStream &s, const OverloadData &overloadData,
+ static bool needsArgumentErrorHandling(const OverloadData &overloadData);
+ static void writeMethodWrapperPreamble(TextStream &s,
+ const OverloadData &overloadData,
+ const GeneratorContext &context,
+ ErrorReturn errorReturn = ErrorReturn::Default);
+ void writeConstructorWrapper(TextStream &s,
+ const OverloadData &overloadData,
const GeneratorContext &classContext) const;
void writeMethodWrapper(TextStream &s, const OverloadData &overloadData,
const GeneratorContext &classContext) const;
@@ -141,17 +144,18 @@ private:
const GeneratorContext &,
ErrorReturn errorReturn = ErrorReturn::Default,
CppSelfDefinitionFlags flags = {});
- void writeCppSelfDefinition(TextStream &s,
- const AbstractMetaFunctionCPtr &func,
- const GeneratorContext &context,
- ErrorReturn errorReturn = ErrorReturn::Default,
- CppSelfDefinitionFlags flags = {}) const;
- void writeCppSelfDefinition(TextStream &s,
- const GeneratorContext &context,
- ErrorReturn errorReturn = ErrorReturn::Default,
- CppSelfDefinitionFlags flags = {}) const;
-
- static void writeErrorSection(TextStream &s, const OverloadData &overloadData,
+ static void writeCppSelfDefinition(TextStream &s,
+ const AbstractMetaFunctionCPtr &func,
+ const GeneratorContext &context,
+ ErrorReturn errorReturn = ErrorReturn::Default,
+ CppSelfDefinitionFlags flags = {});
+ static void writeCppSelfDefinition(TextStream &s,
+ const GeneratorContext &context,
+ ErrorReturn errorReturn = ErrorReturn::Default,
+ CppSelfDefinitionFlags flags = {});
+
+ static void writeErrorSection(TextStream &s,
+ const OverloadData &overloadData,
ErrorReturn errorReturn);
static QString returnErrorWrongArguments(const OverloadData &overloadData,
@@ -176,11 +180,12 @@ private:
static void writeTypeDiscoveryFunction(TextStream &s,
const AbstractMetaClassCPtr &metaClass);
- void writeSetattroDefinition(TextStream &s, const AbstractMetaClassCPtr &metaClass) const;
+ static void writeSetattroDefinition(TextStream &s, const AbstractMetaClassCPtr &metaClass);
static void writeSetattroDefaultReturn(TextStream &s);
- void writeSmartPointerSetattroFunction(TextStream &s,
- const GeneratorContext &context) const;
- void writeSetattroFunction(TextStream &s, AttroCheck attroCheck,
+ static void writeSmartPointerSetattroFunction(TextStream &s,
+ const GeneratorContext &context);
+ void writeSetattroFunction(TextStream &s,
+ AttroCheck attroCheck,
const GeneratorContext &context) const;
static void writeGetattroDefinition(TextStream &s, const AbstractMetaClassCPtr &metaClass);
static void writeSmartPointerGetattroFunction(TextStream &s,
@@ -190,11 +195,10 @@ private:
const GeneratorContext &context) const;
QString qObjectGetAttroFunction() const;
- void writeNbBoolFunction(const GeneratorContext &context,
- const BoolCastFunction &f,
- TextStream &s) const;
- static void writeNbBoolExpression(TextStream &s, const BoolCastFunction &f,
- bool invert = false);
+ static void writeNbBoolFunction(const GeneratorContext &context,
+ const BoolCastFunction &f,
+ TextStream &s);
+ static void writeNbBoolExpression(TextStream &s, const BoolCastFunction &f, bool invert = false);
/**
* Writes Python to C++ conversions for arguments on Python wrappers.
@@ -344,9 +348,11 @@ private:
const QString &pythonToCppFunc,
const QString &isConvertibleFunc);
- void writeNamedArgumentResolution(TextStream &s, const AbstractMetaFunctionCPtr &func,
- bool usePyArgs, const OverloadData &overloadData,
- ErrorReturn errorReturn) const;
+ static void writeNamedArgumentResolution(TextStream &s,
+ const AbstractMetaFunctionCPtr &func,
+ bool usePyArgs,
+ const OverloadData &overloadData,
+ ErrorReturn errorReturn);
/// Returns a string containing the name of an argument for the given function and argument index.
static QString argumentNameFromIndex(const ApiExtractorResult &api,
@@ -374,8 +380,8 @@ private:
const AbstractMetaClassCPtr &metaClass,
const GeneratorContext &classContext,
const QString &signatures) const;
- QString destructorClassName(const AbstractMetaClassCPtr &metaClass,
- const GeneratorContext &classContext) const;
+ static QString destructorClassName(const AbstractMetaClassCPtr &metaClass,
+ const GeneratorContext &classContext);
static void writeStaticFieldInitialization(TextStream &s,
const AbstractMetaClassCPtr &metaClass);
void writeClassDefinition(TextStream &s,
@@ -405,36 +411,36 @@ private:
static void writeTpTraverseFunction(TextStream &s, const AbstractMetaClassCPtr &metaClass);
static void writeTpClearFunction(TextStream &s, const AbstractMetaClassCPtr &metaClass);
- void writeCopyFunction(TextStream &s, const GeneratorContext &context) const;
-
- QString cppFieldAccess(const AbstractMetaField &metaField,
- const GeneratorContext &context) const;
- void writeGetterFunction(TextStream &s,
- const AbstractMetaField &metaField,
- const GeneratorContext &context) const;
- void writeGetterFunction(TextStream &s,
- const QPropertySpec &property,
- const GeneratorContext &context) const;
- void writeSetterFunctionPreamble(TextStream &s,
- const QString &name,
- const QString &funcName,
- const AbstractMetaType &type,
- const GeneratorContext &context) const;
- void writeSetterFunction(TextStream &s,
- const AbstractMetaField &metaField,
- const GeneratorContext &context) const;
- void writeSetterFunction(TextStream &s,
- const QPropertySpec &property,
- const GeneratorContext &context) const;
-
- void writeRichCompareFunctionHeader(TextStream &s,
- const QString &baseName,
- const GeneratorContext &context) const;
+ static void writeCopyFunction(TextStream &s, const GeneratorContext &context);
+
+ static QString cppFieldAccess(const AbstractMetaField &metaField,
+ const GeneratorContext &context);
+ static void writeGetterFunction(TextStream &s,
+ const AbstractMetaField &metaField,
+ const GeneratorContext &context);
+ static void writeGetterFunction(TextStream &s,
+ const QPropertySpec &property,
+ const GeneratorContext &context);
+ static void writeSetterFunctionPreamble(TextStream &s,
+ const QString &name,
+ const QString &funcName,
+ const AbstractMetaType &type,
+ const GeneratorContext &context);
+ static void writeSetterFunction(TextStream &s,
+ const AbstractMetaField &metaField,
+ const GeneratorContext &context);
+ static void writeSetterFunction(TextStream &s,
+ const QPropertySpec &property,
+ const GeneratorContext &context);
+
+ static void writeRichCompareFunctionHeader(TextStream &s,
+ const QString &baseName,
+ const GeneratorContext &context);
void writeRichCompareFunction(TextStream &s, const GeneratorContext &context) const;
void writeSmartPointerRichCompareFunction(TextStream &s, const GeneratorContext &context) const;
- void writeEnumsInitialization(TextStream &s, AbstractMetaEnumList &enums) const;
- bool writeEnumInitialization(TextStream &s, const AbstractMetaEnum &metaEnum) const;
+ static void writeEnumsInitialization(TextStream &s, AbstractMetaEnumList &enums);
+ static bool writeEnumInitialization(TextStream &s, const AbstractMetaEnum &metaEnum);
static void writeSignalInitialization(TextStream &s, const AbstractMetaClassCPtr &metaClass);
@@ -449,7 +455,8 @@ private:
static void writePrimitiveConverterInitialization(TextStream &s,
const CustomConversionPtr &customConversion);
static void writeEnumConverterInitialization(TextStream &s, const AbstractMetaEnum &metaEnum);
- QString writeContainerConverterInitialization(TextStream &s, const AbstractMetaType &type) const;
+ static QString writeContainerConverterInitialization(TextStream &s,
+ const AbstractMetaType &type);
void writeSmartPointerConverterInitialization(TextStream &s, const AbstractMetaType &ype) const;
static void writeExtendedConverterInitialization(TextStream &s,
const TypeEntryCPtr &externalType,
@@ -477,7 +484,7 @@ private:
static QStringList getAncestorMultipleInheritance(const AbstractMetaClassCPtr &metaClass);
/// Returns true if the given class supports the python number protocol
- bool supportsNumberProtocol(const AbstractMetaClassCPtr &metaClass) const;
+ static bool supportsNumberProtocol(const AbstractMetaClassCPtr &metaClass);
/// Returns true if the given class supports the python sequence protocol
static bool supportsSequenceProtocol(const AbstractMetaClassCPtr &metaClass) ;
@@ -486,9 +493,9 @@ private:
static bool supportsMappingProtocol(const AbstractMetaClassCPtr &metaClass) ;
/// Returns true if generator should produce getters and setters for the given class.
- bool shouldGenerateGetSetList(const AbstractMetaClassCPtr &metaClass) const;
+ static bool shouldGenerateGetSetList(const AbstractMetaClassCPtr &metaClass);
- void writeHashFunction(TextStream &s, const GeneratorContext &context) const;
+ static void writeHashFunction(TextStream &s, const GeneratorContext &context);
/// Write default implementations for sequence protocol
void writeDefaultSequenceMethods(TextStream &s, const GeneratorContext &context) const;
@@ -496,8 +503,9 @@ private:
static void writeIndexError(TextStream &s, const QString &errorMsg,
ErrorReturn errorReturn);
- QString writeReprFunction(TextStream &s, const GeneratorContext &context,
- uint indirections) const;
+ static QString writeReprFunction(TextStream &s,
+ const GeneratorContext &context,
+ uint indirections);
static bool hasBoolCast(const AbstractMetaClassCPtr &metaClass)
{ return boolCast(metaClass).has_value(); }
diff --git a/sources/shiboken6/generator/shiboken/headergenerator.cpp b/sources/shiboken6/generator/shiboken/headergenerator.cpp
index 4d02bda3d..762ff4b19 100644
--- a/sources/shiboken6/generator/shiboken/headergenerator.cpp
+++ b/sources/shiboken6/generator/shiboken/headergenerator.cpp
@@ -76,7 +76,7 @@ QString HeaderGenerator::fileNameForContext(const GeneratorContext &context) con
}
void HeaderGenerator::writeCopyCtor(TextStream &s,
- const AbstractMetaClassCPtr &metaClass) const
+ const AbstractMetaClassCPtr &metaClass)
{
s << wrapperName(metaClass) << "(const " << metaClass->qualifiedCppName()
<< "& self) : " << metaClass->qualifiedCppName() << "(self)\n{\n}\n\n";
@@ -848,13 +848,13 @@ void HeaderGenerator::writeTypeFunctions(TextStream &s, const QString &typeFunct
s << "QT_WARNING_POP\n";
}
-void HeaderGenerator::writeProtectedEnumSurrogate(TextStream &s, const AbstractMetaEnum &cppEnum) const
+void HeaderGenerator::writeProtectedEnumSurrogate(TextStream &s, const AbstractMetaEnum &cppEnum)
{
if (avoidProtectedHack() && cppEnum.isProtected())
s << "enum " << protectedEnumSurrogateName(cppEnum) << " {};\n";
}
-void HeaderGenerator::writeSbkTypeFunction(TextStream &s, const AbstractMetaEnum &cppEnum) const
+void HeaderGenerator::writeSbkTypeFunction(TextStream &s, const AbstractMetaEnum &cppEnum)
{
const QString enumName = avoidProtectedHack() && cppEnum.isProtected()
? protectedEnumSurrogateName(cppEnum)
diff --git a/sources/shiboken6/generator/shiboken/headergenerator.h b/sources/shiboken6/generator/shiboken/headergenerator.h
index 6bb474cfd..5b5f5a4a1 100644
--- a/sources/shiboken6/generator/shiboken/headergenerator.h
+++ b/sources/shiboken6/generator/shiboken/headergenerator.h
@@ -30,25 +30,26 @@ protected:
private:
using InheritedOverloadSet = QSet<AbstractMetaFunctionCPtr>;
- void writeCopyCtor(TextStream &s, const AbstractMetaClassCPtr &metaClass) const;
- void writeFunction(TextStream &s, const AbstractMetaFunctionCPtr &func,
+ static void writeCopyCtor(TextStream &s, const AbstractMetaClassCPtr &metaClass);
+ void writeFunction(TextStream &s,
+ const AbstractMetaFunctionCPtr &func,
InheritedOverloadSet *inheritedOverloads,
FunctionGeneration generation) const;
- void writeSbkTypeFunction(TextStream &s, const AbstractMetaEnum &cppEnum) const;
+ static void writeSbkTypeFunction(TextStream &s, const AbstractMetaEnum &cppEnum);
static void writeSbkTypeFunction(TextStream &s, const AbstractMetaClassCPtr &cppClass);
static void writeSbkTypeFunction(TextStream &s, const AbstractMetaType &metaType);
void writeTypeIndexValueLine(TextStream &s, const ApiExtractorResult &api,
const TypeEntryCPtr &typeEntry);
void writeTypeIndexValueLines(TextStream &s, const ApiExtractorResult &api,
const AbstractMetaClassCPtr &metaClass);
- void writeProtectedEnumSurrogate(TextStream &s, const AbstractMetaEnum &cppEnum) const;
+ static void writeProtectedEnumSurrogate(TextStream &s, const AbstractMetaEnum &cppEnum);
void writeMemberFunctionWrapper(TextStream &s,
const AbstractMetaFunctionCPtr &func,
const QString &postfix = {}) const;
void writePrivateHeader(const QString &moduleHeaderDir,
const QString &publicIncludeShield,
const ModuleHeaderParameters &parameters);
- void writeTypeFunctions(TextStream &s, const QString &typeFunctions);
+ static void writeTypeFunctions(TextStream &s, const QString &typeFunctions);
void writeWrapperClassDeclaration(TextStream &s,
const QString &wrapperName,
const GeneratorContext &classContext) const;
diff --git a/sources/shiboken6/generator/shiboken/shibokengenerator.cpp b/sources/shiboken6/generator/shiboken/shibokengenerator.cpp
index f9f52a257..cf6b1f79a 100644
--- a/sources/shiboken6/generator/shiboken/shibokengenerator.cpp
+++ b/sources/shiboken6/generator/shiboken/shibokengenerator.cpp
@@ -206,7 +206,7 @@ QString ShibokenGenerator::translateTypeForWrapperMethod(const AbstractMetaType
return translateType(cType, context, options);
}
-bool ShibokenGenerator::shouldGenerateCppWrapper(const AbstractMetaClassCPtr &metaClass) const
+bool ShibokenGenerator::shouldGenerateCppWrapper(const AbstractMetaClassCPtr &metaClass)
{
const auto wrapper = metaClass->cppWrapper();
return wrapper.testFlag(AbstractMetaClass::CppVirtualMethodWrapper)
@@ -214,8 +214,8 @@ bool ShibokenGenerator::shouldGenerateCppWrapper(const AbstractMetaClassCPtr &me
&& wrapper.testFlag(AbstractMetaClass::CppProtectedHackWrapper));
}
-ShibokenGenerator::FunctionGeneration
- ShibokenGenerator::functionGeneration(const AbstractMetaFunctionCPtr &func) const
+ShibokenGenerator::FunctionGeneration ShibokenGenerator::functionGeneration(
+ const AbstractMetaFunctionCPtr &func)
{
FunctionGeneration result;
@@ -299,7 +299,7 @@ AbstractMetaFunctionCList ShibokenGenerator::implicitConversions(const TypeEntry
return result;
}
-QString ShibokenGenerator::wrapperName(const AbstractMetaClassCPtr &metaClass) const
+QString ShibokenGenerator::wrapperName(const AbstractMetaClassCPtr &metaClass)
{
Q_ASSERT(shouldGenerateCppWrapper(metaClass));
QString result = metaClass->name();
@@ -1807,8 +1807,8 @@ bool ShibokenGenerator::useOverrideCaching(const AbstractMetaClassCPtr &metaClas
return metaClass->isPolymorphic();
}
-ShibokenGenerator::AttroCheck
- ShibokenGenerator::checkAttroFunctionNeeds(const AbstractMetaClassCPtr &metaClass) const
+ShibokenGenerator::AttroCheck ShibokenGenerator::checkAttroFunctionNeeds(
+ const AbstractMetaClassCPtr &metaClass)
{
AttroCheck result;
if (metaClass->typeEntry()->isSmartPointer()) {
diff --git a/sources/shiboken6/generator/shiboken/shibokengenerator.h b/sources/shiboken6/generator/shiboken/shibokengenerator.h
index b8d8263ac..962b00eaf 100644
--- a/sources/shiboken6/generator/shiboken/shibokengenerator.h
+++ b/sources/shiboken6/generator/shiboken/shibokengenerator.h
@@ -172,7 +172,7 @@ protected:
getMultipleInheritingClass(const AbstractMetaClassCPtr &metaClass);
static bool useOverrideCaching(const AbstractMetaClassCPtr &metaClass);
- AttroCheck checkAttroFunctionNeeds(const AbstractMetaClassCPtr &metaClass) const;
+ static AttroCheck checkAttroFunctionNeeds(const AbstractMetaClassCPtr &metaClass);
/// Returns a list of methods of the given class where each one is part of
/// a different overload with both static and non-static method.
@@ -199,15 +199,15 @@ protected:
/// Verifies if the class should have a C++ wrapper generated for it,
/// instead of only a Python wrapper.
- bool shouldGenerateCppWrapper(const AbstractMetaClassCPtr &metaClass) const;
+ static bool shouldGenerateCppWrapper(const AbstractMetaClassCPtr &metaClass);
/// Returns which functions need to be generated into the wrapper class
- FunctionGeneration functionGeneration(const AbstractMetaFunctionCPtr &func) const;
+ static FunctionGeneration functionGeneration(const AbstractMetaFunctionCPtr &func);
// Return a list of implicit conversions if generation is enabled.
AbstractMetaFunctionCList implicitConversions(const TypeEntryCPtr &t) const;
- QString wrapperName(const AbstractMetaClassCPtr &metaClass) const;
+ static QString wrapperName(const AbstractMetaClassCPtr &metaClass);
static QString fullPythonClassName(const AbstractMetaClassCPtr &metaClass);