Heap::QmlBindingWrapper::QmlBindingWrapper(QV4::ExecutionContext *scope, Function *f, QV4::QmlContextWrapper *qml)
: Heap::FunctionObject(scope, scope->d()->engine->id_eval(), /*createProto = */ false)
- , qml(qml->d())
{
Q_ASSERT(scope->inUse());
Heap::QmlBindingWrapper::QmlBindingWrapper(QV4::ExecutionContext *scope, QV4::QmlContextWrapper *qml)
: Heap::FunctionObject(scope, scope->d()->engine->id_eval(), /*createProto = */ false)
- , qml(qml->d())
{
Q_ASSERT(scope->inUse());
return result->asReturnedValue();
}
-void QmlBindingWrapper::markObjects(Heap::Base *m, ExecutionEngine *e)
-{
- QmlBindingWrapper::Data *wrapper = static_cast<QmlBindingWrapper::Data *>(m);
- if (wrapper->qml)
- wrapper->qml->mark(e);
- FunctionObject::markObjects(m, e);
-}
-
static ReturnedValue signalParameterGetter(QV4::CallContext *ctx, uint parameterIndex)
{
QV4::Scope scope(ctx);
QmlBindingWrapper(QV4::ExecutionContext *scope, Function *f, QV4::QmlContextWrapper *qml);
// Constructor for QML functions and signal handlers, resulting binding wrapper is not callable!
QmlBindingWrapper(QV4::ExecutionContext *scope, QV4::QmlContextWrapper *qml);
- Pointer<Object> qml;
};
}
V4_OBJECT2(QmlBindingWrapper, FunctionObject)
static ReturnedValue call(const Managed *that, CallData *callData);
- static void markObjects(Heap::Base *m, ExecutionEngine *e);
Heap::QmlContext *context() const { return static_cast<Heap::QmlContext *>(d()->scope.ptr); }