35 AcceptsAttachedProperties = 0x00000001,
36 AcceptsSignalHandlers = 0x00000002
38 Q_DECLARE_FLAGS(Flags, Flag)
40 QQmlCustomParser() : engine(
nullptr), validator(
nullptr), m_flags(NoFlag) {}
41 QQmlCustomParser(Flags f) : engine(
nullptr), validator(
nullptr), m_flags(f) {}
42 virtual ~QQmlCustomParser() {}
45 Flags flags()
const {
return m_flags; }
47 virtual void verifyBindings(
48 const QQmlRefPointer<QV4::CompiledData::CompilationUnit> &,
49 const QList<
const QV4::CompiledData::Binding *> &) = 0;
50 virtual void applyBindings(
51 QObject *,
const QQmlRefPointer<QV4::ExecutableCompilationUnit> &,
52 const QList<
const QV4::CompiledData::Binding *> &) = 0;
54 QList<QQmlError> errors()
const {
return exceptions; }
57 void error(
const QV4::CompiledData::Binding *binding,
const QString& description)
58 { error(binding->location, description); }
59 void error(
const QV4::CompiledData::Object *object,
const QString& description)
60 { error(object->location, description); }
61 void error(
const QV4::CompiledData::Location &location,
const QString& description);
63 int evaluateEnum(
const QString &,
bool *ok)
const;
65 const QMetaObject *resolveType(
const QString&)
const;
66 QQmlTypeLoader *typeLoader()
const;
69 QList<QQmlError> exceptions;
70 QQmlEnginePrivate *engine;
71 const QQmlPropertyValidator *validator;
73 QBiPointer<
const QQmlImports, QQmlTypeNameCache> imports;
74 friend class QQmlPropertyValidator;
75 friend class QQmlObjectCreator;