5#ifndef QQMLJSLITERALBINDINGCHECK_P_H
6#define QQMLJSLITERALBINDINGCHECK_P_H
18#include <QtCore/qglobal.h>
19#include <QtQmlCompiler/qqmlsa.h>
25class QQmlJSImportVisitor;
26class QQmlJSTypeResolver;
34 virtual QQmlJSStructuredTypeError
check(
const QString &typeName,
const QString &value)
const = 0;
37 const QQmlSA::Element &bindingScope)
const;
47 void onBinding(
const QQmlSA::Element &element,
const QString &propertyName,
48 const QQmlSA::Binding &binding,
const QQmlSA::Element &bindingScope,
49 const QQmlSA::Element &value)
override;
52 QQmlJSTypeResolver *m_resolver;
55 QQmlJSStructuredTypeError
check(
const QString &typeName,
const QString &value)
const override;
void warnOnCheckedBinding(const QQmlSA::Binding &binding, const QQmlSA::Element &propertyType)
QQmlSA::Property getProperty(const QString &propertyName, const QQmlSA::Binding &binding, const QQmlSA::Element &bindingScope) const
virtual QQmlJSStructuredTypeError check(const QString &typeName, const QString &value) const =0
QQmlJSLiteralBindingCheck(QQmlSA::PassManager *manager)
QQmlJSStructuredTypeError check(const QString &typeName, const QString &value) const override
void onBinding(const QQmlSA::Element &element, const QString &propertyName, const QQmlSA::Binding &binding, const QQmlSA::Element &bindingScope, const QQmlSA::Element &value) override
Executes whenever a property gets bound to a value.
Combined button and popup list for selecting options.
static bool canConvertForLiteralBinding(QQmlJSTypeResolver *resolver, const QQmlSA::Element &fromElement, const QQmlSA::Element &toElement)
static QString literalPrettyTypeName(QQmlSA::BindingType type)