aboutsummaryrefslogtreecommitdiffstats
path: root/sources/shiboken6/ApiExtractor/abstractmetalang.h
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@qt.io>2020-11-14 17:12:54 +0100
committerFriedemann Kleint <Friedemann.Kleint@qt.io>2020-11-14 18:55:34 +0000
commitdff115603e6f093f9189977e29511b53a16ec0c6 (patch)
treeee476b9ffe1dc9382d8bab2dc7977fdfe2d3590b /sources/shiboken6/ApiExtractor/abstractmetalang.h
parent44e40c9aba1bd6f7568cb52827a8a990d0eed78d (diff)
shiboken6: Move the base class search out of the generator
The code was relying on class search by string and searched the default super class as specified in the typesystem on each invocation. Make the default super class a member of AbstractMetaClass that is set by the meta builder and move the functions to AbstractMetaClass. Change-Id: I15e4f193067d09f00e7dc17aef07c14c0e969884 Reviewed-by: Christian Tismer <tismer@stackless.com>
Diffstat (limited to 'sources/shiboken6/ApiExtractor/abstractmetalang.h')
-rw-r--r--sources/shiboken6/ApiExtractor/abstractmetalang.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/sources/shiboken6/ApiExtractor/abstractmetalang.h b/sources/shiboken6/ApiExtractor/abstractmetalang.h
index dd35e9ee2..da4465917 100644
--- a/sources/shiboken6/ApiExtractor/abstractmetalang.h
+++ b/sources/shiboken6/ApiExtractor/abstractmetalang.h
@@ -193,8 +193,15 @@ public:
QString baseClassName() const;
+ AbstractMetaClass *defaultSuperclass() const; // Attribute "default-superclass"
+ void setDefaultSuperclass(AbstractMetaClass *s);
+
AbstractMetaClass *baseClass() const;
const AbstractMetaClassList &baseClasses() const;
+ // base classes including defaultSuperclass
+ AbstractMetaClassList typeSystemBaseClasses() const;
+ // Recursive list of all base classes including defaultSuperclass
+ AbstractMetaClassList allTypeSystemAncestors() const;
void addBaseClass(AbstractMetaClass *base_class);
void setBaseClass(AbstractMetaClass *base_class);