diff options
author | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2020-11-14 17:12:54 +0100 |
---|---|---|
committer | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2020-11-14 18:55:34 +0000 |
commit | dff115603e6f093f9189977e29511b53a16ec0c6 (patch) | |
tree | ee476b9ffe1dc9382d8bab2dc7977fdfe2d3590b /sources/shiboken6/ApiExtractor/abstractmetalang.h | |
parent | 44e40c9aba1bd6f7568cb52827a8a990d0eed78d (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.h | 7 |
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); |