QmlJS: Rework FakeMetaObjects to no longer contain pointers.

Having a duplicate prototype chain - once in FakeMetaObjects and once
in QmlObjectValues was unnecessary. Now FMOs don't contain references
which may allow other simplifications.
This commit is contained in:
Christian Kamm
2011-02-10 14:53:57 +01:00
parent 13f9135827
commit 187ae1e94a
9 changed files with 116 additions and 140 deletions

View File

@@ -135,12 +135,13 @@ public:
QString type;
ComponentVersion version;
QString packageNameVersion;
bool isValid() const;
};
private:
QString m_className;
QList<Export> m_exports;
ConstPtr m_super;
QString m_superName;
QList<FakeMetaEnum> m_enums;
QHash<QString, int> m_enumNameToIndex;
@@ -158,11 +159,10 @@ public:
void addExport(const QString &name, const QString &package, ComponentVersion version);
QList<Export> exports() const;
Export exportInPackage(const QString &package) const;
void setSuperclassName(const QString &superclass);
QString superclassName() const;
void setSuperclass(ConstPtr superClass);
ConstPtr superClass() const;
void addEnum(const FakeMetaEnum &fakeEnum);
int enumeratorCount() const;