81
JSValuePtr Instance::getValueOfField(ExecState* exec, const Field* aField) const
83
return aField->valueFromInstance(exec, this);
86
void Instance::setValueOfField(ExecState* exec, const Field* aField, JSValuePtr aValue) const
88
aField->setValueToInstance(exec, this, aValue);
91
RuntimeObjectImp* Instance::createRuntimeObject(ExecState* exec, PassRefPtr<Instance> instance)
94
if (instance->getBindingLanguage() == QtLanguage)
95
return QtInstance::getRuntimeObject(exec, static_cast<QtInstance*>(instance.get()));
99
return new (exec) RuntimeObjectImp(exec, instance);
102
Instance* Instance::getInstance(JSObject* object, BindingLanguage language)
106
if (!object->inherits(&RuntimeObjectImp::s_info))
108
Instance* instance = static_cast<RuntimeObjectImp*>(object)->getInternalInstance();
111
if (instance->getBindingLanguage() != language)
83
RuntimeObjectImp* Instance::createRuntimeObject(ExecState* exec)
86
ASSERT(_rootObject->isValid());
88
return m_runtimeObject;
89
JSLock lock(SilenceAssertionsOnly);
90
m_runtimeObject = newRuntimeObject(exec);
91
_rootObject->addRuntimeObject(m_runtimeObject);
92
return m_runtimeObject;
95
RuntimeObjectImp* Instance::newRuntimeObject(ExecState* exec)
97
JSLock lock(SilenceAssertionsOnly);
98
return new (exec) RuntimeObjectImp(exec, this);
101
void Instance::willDestroyRuntimeObject()
104
ASSERT(_rootObject->isValid());
105
ASSERT(m_runtimeObject);
106
_rootObject->removeRuntimeObject(m_runtimeObject);
110
void Instance::willInvalidateRuntimeObject()
112
ASSERT(m_runtimeObject);
116
116
RootObject* Instance::rootObject() const