Remove some dead code
Also get rid of the unnecessary QQmlCustomCompilerBackend interface. Change-Id: I6cfdd88ef49d3d314d07aa069da481d304e7a285 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
This commit is contained in:
parent
0f29340a10
commit
ba7edffda3
|
@ -1719,17 +1719,6 @@ const QQmlImports &QQmlPropertyValidator::imports() const
|
|||
return *compiler->imports();
|
||||
}
|
||||
|
||||
QString QQmlPropertyValidator::bindingAsString(int objectIndex, const QV4::CompiledData::Binding *binding) const
|
||||
{
|
||||
const QmlIR::Object *object = compiler->qmlObjects()->value(objectIndex);
|
||||
if (!object)
|
||||
return QString();
|
||||
int reverseIndex = object->runtimeFunctionIndices->indexOf(binding->value.compiledScriptIndex);
|
||||
if (reverseIndex == -1)
|
||||
return QString();
|
||||
return compiler->bindingAsString(object, reverseIndex);
|
||||
}
|
||||
|
||||
typedef QVarLengthArray<const QV4::CompiledData::Binding *, 8> GroupPropertyVector;
|
||||
|
||||
struct BindingFinder
|
||||
|
@ -1998,10 +1987,10 @@ bool QQmlPropertyValidator::validateObject(int objectIndex, const QV4::CompiledD
|
|||
|
||||
if (customParser && !customBindings.isEmpty()) {
|
||||
customParser->clearErrors();
|
||||
customParser->compiler = this;
|
||||
customParser->validator = this;
|
||||
customParser->imports = compiler->imports();
|
||||
customParser->verifyBindings(qmlUnit, customBindings);
|
||||
customParser->compiler = 0;
|
||||
customParser->validator = 0;
|
||||
customParser->imports = (QQmlImports*)0;
|
||||
customParserBindingsPerObject->insert(objectIndex, customParserBindings);
|
||||
const QList<QQmlError> parserErrors = customParser->errors();
|
||||
|
|
|
@ -264,7 +264,7 @@ protected:
|
|||
QHash<int, QHash<int, int> > *objectIndexToIdPerComponent;
|
||||
};
|
||||
|
||||
class QQmlPropertyValidator : public QQmlCompilePass, public QQmlCustomParserCompilerBackend
|
||||
class QQmlPropertyValidator : public QQmlCompilePass
|
||||
{
|
||||
Q_DECLARE_TR_FUNCTIONS(QQmlPropertyValidator)
|
||||
public:
|
||||
|
@ -272,9 +272,7 @@ public:
|
|||
|
||||
bool validate();
|
||||
|
||||
// Re-implemented for QQmlCustomParser
|
||||
virtual const QQmlImports &imports() const;
|
||||
virtual QString bindingAsString(int objectIndex, const QV4::CompiledData::Binding *binding) const;
|
||||
const QQmlImports &imports() const;
|
||||
|
||||
private:
|
||||
bool validateObject(int objectIndex, const QV4::CompiledData::Binding *instantiatingBinding, bool populatingValueTypeGroupProperty = false) const;
|
||||
|
|
|
@ -34,6 +34,7 @@
|
|||
#include "qqmlcustomparser_p.h"
|
||||
|
||||
#include "qqmlcompiler_p.h"
|
||||
#include <private/qqmltypecompiler_p.h>
|
||||
|
||||
#include <QtCore/qdebug.h>
|
||||
|
||||
|
@ -158,35 +159,9 @@ int QQmlCustomParser::evaluateEnum(const QByteArray& script, bool *ok) const
|
|||
to type-check object nodes.
|
||||
*/
|
||||
const QMetaObject *QQmlCustomParser::resolveType(const QString& name) const
|
||||
{
|
||||
return compiler->resolveType(name);
|
||||
}
|
||||
|
||||
int QQmlCustomParserCompilerBackend::evaluateEnum(const QString &scope, const QByteArray &enumValue, bool *ok) const
|
||||
{
|
||||
Q_ASSERT_X(ok, "QQmlCompiler::evaluateEnum", "ok must not be a null pointer");
|
||||
*ok = false;
|
||||
|
||||
if (scope != QLatin1String("Qt")) {
|
||||
QQmlType *type = 0;
|
||||
imports().resolveType(scope, &type, 0, 0, 0);
|
||||
return type ? type->enumValue(QHashedCStringRef(enumValue.constData(), enumValue.length()), ok) : -1;
|
||||
}
|
||||
|
||||
const QMetaObject *mo = StaticQtMetaObject::get();
|
||||
int i = mo->enumeratorCount();
|
||||
while (i--) {
|
||||
int v = mo->enumerator(i).keyToValue(enumValue.constData(), ok);
|
||||
if (*ok)
|
||||
return v;
|
||||
}
|
||||
return -1;
|
||||
}
|
||||
|
||||
const QMetaObject *QQmlCustomParserCompilerBackend::resolveType(const QString &name) const
|
||||
{
|
||||
QQmlType *qmltype = 0;
|
||||
if (!imports().resolveType(name, &qmltype, 0, 0, 0))
|
||||
if (!validator->imports().resolveType(name, &qmltype, 0, 0, 0))
|
||||
return 0;
|
||||
if (!qmltype)
|
||||
return 0;
|
||||
|
|
|
@ -55,15 +55,7 @@
|
|||
QT_BEGIN_NAMESPACE
|
||||
|
||||
class QQmlCompiledData;
|
||||
|
||||
struct QQmlCustomParserCompilerBackend
|
||||
{
|
||||
virtual ~QQmlCustomParserCompilerBackend() {}
|
||||
virtual const QQmlImports &imports() const = 0;
|
||||
|
||||
int evaluateEnum(const QString &scope, const QByteArray& enumValue, bool *ok) const;
|
||||
const QMetaObject *resolveType(const QString& name) const;
|
||||
};
|
||||
class QQmlPropertyValidator;
|
||||
|
||||
class Q_QML_PRIVATE_EXPORT QQmlCustomParser
|
||||
{
|
||||
|
@ -75,8 +67,8 @@ public:
|
|||
};
|
||||
Q_DECLARE_FLAGS(Flags, Flag)
|
||||
|
||||
QQmlCustomParser() : compiler(0), m_flags(NoFlag) {}
|
||||
QQmlCustomParser(Flags f) : compiler(0), m_flags(f) {}
|
||||
QQmlCustomParser() : validator(0), m_flags(NoFlag) {}
|
||||
QQmlCustomParser(Flags f) : validator(0), m_flags(f) {}
|
||||
virtual ~QQmlCustomParser() {}
|
||||
|
||||
void clearErrors();
|
||||
|
@ -100,7 +92,7 @@ protected:
|
|||
|
||||
private:
|
||||
QList<QQmlError> exceptions;
|
||||
const QQmlCustomParserCompilerBackend *compiler;
|
||||
const QQmlPropertyValidator *validator;
|
||||
Flags m_flags;
|
||||
QBiPointer<const QQmlImports, QQmlTypeNameCache> imports;
|
||||
friend class QQmlPropertyValidator;
|
||||
|
|
Loading…
Reference in New Issue