24 Q_DISABLE_COPY_MOVE(QQmlJSFunctionInitializer)
26 QQmlJSFunctionInitializer(
27 const QQmlJSTypeResolver *typeResolver,
28 const QV4::CompiledData::Location &objectLocation,
29 const QV4::CompiledData::Location &scopeLocation,
31 : m_typeResolver(typeResolver)
33 , m_scopeType(typeResolver->scopeForLocation(scopeLocation))
34 , m_objectType(typeResolver->scopeForLocation(objectLocation))
37 QQmlJSCompilePass::Function run(
38 const QV4::Compiler::Context *context,
const QString &propertyName,
39 QQmlJS::AST::Node *astNode,
const QmlIR::Binding &irBinding);
41 const QV4::Compiler::Context *context,
const QString &functionName,
42 QQmlJS::AST::Node *astNode);
45 void populateSignature(
46 const QV4::Compiler::Context *context, QQmlJS::AST::FunctionExpression *ast,
47 QQmlJSCompilePass::Function *function);
49 const QQmlJSTypeResolver *m_typeResolver =
nullptr;
50 QQmlJSLogger *m_logger =
nullptr;
51 const QQmlJSScope::ConstPtr m_scopeType;
52 const QQmlJSScope::ConstPtr m_objectType;