summaryrefslogtreecommitdiffstats
path: root/WebCore/bridge
diff options
context:
space:
mode:
authorFeng Qian <fqian@google.com>2009-06-17 12:12:20 -0700
committerFeng Qian <fqian@google.com>2009-06-17 12:12:20 -0700
commit5f1ab04193ad0130ca8204aadaceae083aca9881 (patch)
tree5a92cd389e2cfe7fb67197ce14b38469462379f8 /WebCore/bridge
parent194315e5a908cc8ed67d597010544803eef1ac59 (diff)
downloadexternal_webkit-5f1ab04193ad0130ca8204aadaceae083aca9881.zip
external_webkit-5f1ab04193ad0130ca8204aadaceae083aca9881.tar.gz
external_webkit-5f1ab04193ad0130ca8204aadaceae083aca9881.tar.bz2
Get WebKit r44544.
Diffstat (limited to 'WebCore/bridge')
-rw-r--r--WebCore/bridge/NP_jsobject.cpp26
-rw-r--r--WebCore/bridge/c/c_instance.cpp28
-rw-r--r--WebCore/bridge/c/c_instance.h16
-rw-r--r--WebCore/bridge/c/c_runtime.cpp8
-rw-r--r--WebCore/bridge/c/c_runtime.h4
-rw-r--r--WebCore/bridge/c/c_utility.cpp4
-rw-r--r--WebCore/bridge/c/c_utility.h4
-rw-r--r--WebCore/bridge/jni/jni_instance.cpp20
-rw-r--r--WebCore/bridge/jni/jni_instance.h12
-rw-r--r--WebCore/bridge/jni/jni_jsobject.h7
-rw-r--r--WebCore/bridge/jni/jni_jsobject.mm18
-rw-r--r--WebCore/bridge/jni/jni_objc.mm2
-rw-r--r--WebCore/bridge/jni/jni_runtime.cpp16
-rw-r--r--WebCore/bridge/jni/jni_runtime.h10
-rw-r--r--WebCore/bridge/jni/jni_utility.cpp20
-rw-r--r--WebCore/bridge/jni/jni_utility.h8
-rw-r--r--WebCore/bridge/npapi.h16
-rw-r--r--WebCore/bridge/objc/WebScriptObject.h2
-rw-r--r--WebCore/bridge/objc/objc_class.h2
-rw-r--r--WebCore/bridge/objc/objc_class.mm2
-rw-r--r--WebCore/bridge/objc/objc_instance.h18
-rw-r--r--WebCore/bridge/objc/objc_instance.mm36
-rw-r--r--WebCore/bridge/objc/objc_runtime.h20
-rw-r--r--WebCore/bridge/objc/objc_runtime.mm22
-rw-r--r--WebCore/bridge/objc/objc_utility.h6
-rw-r--r--WebCore/bridge/objc/objc_utility.mm8
-rw-r--r--WebCore/bridge/qt/qt_class.cpp2
-rw-r--r--WebCore/bridge/qt/qt_class.h2
-rw-r--r--WebCore/bridge/qt/qt_instance.cpp26
-rw-r--r--WebCore/bridge/qt/qt_instance.h16
-rw-r--r--WebCore/bridge/qt/qt_runtime.cpp71
-rw-r--r--WebCore/bridge/qt/qt_runtime.h29
-rw-r--r--WebCore/bridge/runtime.h24
-rw-r--r--WebCore/bridge/runtime_array.cpp8
-rw-r--r--WebCore/bridge/runtime_array.h14
-rw-r--r--WebCore/bridge/runtime_method.cpp8
-rw-r--r--WebCore/bridge/runtime_method.h8
-rw-r--r--WebCore/bridge/runtime_object.cpp24
-rw-r--r--WebCore/bridge/runtime_object.h16
-rw-r--r--WebCore/bridge/testbindings.pro3
40 files changed, 305 insertions, 281 deletions
diff --git a/WebCore/bridge/NP_jsobject.cpp b/WebCore/bridge/NP_jsobject.cpp
index 9a9cfc3..b1000d0 100644
--- a/WebCore/bridge/NP_jsobject.cpp
+++ b/WebCore/bridge/NP_jsobject.cpp
@@ -52,7 +52,7 @@ using namespace JSC;
using namespace JSC::Bindings;
using namespace WebCore;
-static void getListFromVariantArgs(ExecState* exec, const NPVariant* args, unsigned argCount, RootObject* rootObject, ArgList& aList)
+static void getListFromVariantArgs(ExecState* exec, const NPVariant* args, unsigned argCount, RootObject* rootObject, MarkedArgumentBuffer& aList)
{
for (unsigned i = 0; i < argCount; ++i)
aList.append(convertNPVariantToValue(exec, &args[i], rootObject));
@@ -116,17 +116,17 @@ bool _NPN_InvokeDefault(NPP, NPObject* o, const NPVariant* args, uint32_t argCou
JSLock lock(false);
// Call the function object.
- JSValuePtr function = obj->imp;
+ JSValue function = obj->imp;
CallData callData;
CallType callType = function.getCallData(callData);
if (callType == CallTypeNone)
return false;
- ArgList argList;
+ MarkedArgumentBuffer argList;
getListFromVariantArgs(exec, args, argCount, rootObject, argList);
ProtectedPtr<JSGlobalObject> globalObject = rootObject->globalObject();
globalObject->globalData()->timeoutChecker.start();
- JSValuePtr resultV = call(exec, function, callType, callData, function, argList);
+ JSValue resultV = call(exec, function, callType, callData, function, argList);
globalObject->globalData()->timeoutChecker.stop();
// Convert and return the result of the function call.
@@ -165,18 +165,18 @@ bool _NPN_Invoke(NPP npp, NPObject* o, NPIdentifier methodName, const NPVariant*
return false;
ExecState* exec = rootObject->globalObject()->globalExec();
JSLock lock(false);
- JSValuePtr function = obj->imp->get(exec, identifierFromNPIdentifier(i->string()));
+ JSValue function = obj->imp->get(exec, identifierFromNPIdentifier(i->string()));
CallData callData;
CallType callType = function.getCallData(callData);
if (callType == CallTypeNone)
return false;
// Call the function object.
- ArgList argList;
+ MarkedArgumentBuffer argList;
getListFromVariantArgs(exec, args, argCount, rootObject, argList);
ProtectedPtr<JSGlobalObject> globalObject = rootObject->globalObject();
globalObject->globalData()->timeoutChecker.start();
- JSValuePtr resultV = call(exec, function, callType, callData, obj->imp, argList);
+ JSValue resultV = call(exec, function, callType, callData, obj->imp, argList);
globalObject->globalData()->timeoutChecker.stop();
// Convert and return the result of the function call.
@@ -210,7 +210,7 @@ bool _NPN_Evaluate(NPP, NPObject* o, NPString* s, NPVariant* variant)
globalObject->globalData()->timeoutChecker.stop();
ComplType type = completion.complType();
- JSValuePtr result;
+ JSValue result;
if (type == Normal) {
result = completion.value();
if (!result)
@@ -240,7 +240,7 @@ bool _NPN_GetProperty(NPP, NPObject* o, NPIdentifier propertyName, NPVariant* va
IdentifierRep* i = static_cast<IdentifierRep*>(propertyName);
JSLock lock(false);
- JSValuePtr result;
+ JSValue result;
if (i->isString())
result = obj->imp->get(exec, identifierFromNPIdentifier(i->string()));
else
@@ -368,7 +368,7 @@ bool _NPN_HasMethod(NPP, NPObject* o, NPIdentifier methodName)
ExecState* exec = rootObject->globalObject()->globalExec();
JSLock lock(false);
- JSValuePtr func = obj->imp->get(exec, identifierFromNPIdentifier(i->string()));
+ JSValue func = obj->imp->get(exec, identifierFromNPIdentifier(i->string()));
exec->clearException();
return !func.isUndefined();
}
@@ -442,17 +442,17 @@ bool _NPN_Construct(NPP, NPObject* o, const NPVariant* args, uint32_t argCount,
JSLock lock(false);
// Call the constructor object.
- JSValuePtr constructor = obj->imp;
+ JSValue constructor = obj->imp;
ConstructData constructData;
ConstructType constructType = constructor.getConstructData(constructData);
if (constructType == ConstructTypeNone)
return false;
- ArgList argList;
+ MarkedArgumentBuffer argList;
getListFromVariantArgs(exec, args, argCount, rootObject, argList);
ProtectedPtr<JSGlobalObject> globalObject = rootObject->globalObject();
globalObject->globalData()->timeoutChecker.start();
- JSValuePtr resultV = construct(exec, constructor, constructType, constructData, argList);
+ JSValue resultV = construct(exec, constructor, constructType, constructData, argList);
globalObject->globalData()->timeoutChecker.stop();
// Convert and return the result.
diff --git a/WebCore/bridge/c/c_instance.cpp b/WebCore/bridge/c/c_instance.cpp
index 24b881f..97a89eb 100644
--- a/WebCore/bridge/c/c_instance.cpp
+++ b/WebCore/bridge/c/c_instance.cpp
@@ -101,7 +101,7 @@ bool CInstance::supportsInvokeDefaultMethod() const
return _object->_class->invokeDefault;
}
-JSValuePtr CInstance::invokeMethod(ExecState* exec, const MethodList& methodList, const ArgList& args)
+JSValue CInstance::invokeMethod(ExecState* exec, const MethodList& methodList, const ArgList& args)
{
// Overloading methods are not allowed by NPObjects. Should only be one
// name match for a particular method.
@@ -118,7 +118,7 @@ JSValuePtr CInstance::invokeMethod(ExecState* exec, const MethodList& methodList
unsigned i;
for (i = 0; i < count; i++)
- convertValueToNPVariant(exec, args.at(exec, i), &cArgs[i]);
+ convertValueToNPVariant(exec, args.at(i), &cArgs[i]);
// Invoke the 'C' method.
#ifdef ANDROID_NPN_SETEXCEPTION
@@ -137,7 +137,7 @@ JSValuePtr CInstance::invokeMethod(ExecState* exec, const MethodList& methodList
for (i = 0; i < count; i++)
_NPN_ReleaseVariantValue(&cArgs[i]);
- JSValuePtr resultValue = convertNPVariantToValue(exec, &resultVariant, _rootObject.get());
+ JSValue resultValue = convertNPVariantToValue(exec, &resultVariant, _rootObject.get());
_NPN_ReleaseVariantValue(&resultVariant);
#ifdef ANDROID_NPN_SETEXCEPTION
MoveGlobalExceptionToExecState(exec);
@@ -146,7 +146,7 @@ JSValuePtr CInstance::invokeMethod(ExecState* exec, const MethodList& methodList
}
-JSValuePtr CInstance::invokeDefaultMethod(ExecState* exec, const ArgList& args)
+JSValue CInstance::invokeDefaultMethod(ExecState* exec, const ArgList& args)
{
if (!_object->_class->invokeDefault)
return jsUndefined();
@@ -156,7 +156,7 @@ JSValuePtr CInstance::invokeDefaultMethod(ExecState* exec, const ArgList& args)
unsigned i;
for (i = 0; i < count; i++)
- convertValueToNPVariant(exec, args.at(exec, i), &cArgs[i]);
+ convertValueToNPVariant(exec, args.at(i), &cArgs[i]);
// Invoke the 'C' method.
#ifdef ANDROID_NPN_SETEXCEPTION
@@ -174,7 +174,7 @@ JSValuePtr CInstance::invokeDefaultMethod(ExecState* exec, const ArgList& args)
for (i = 0; i < count; i++)
_NPN_ReleaseVariantValue(&cArgs[i]);
- JSValuePtr resultValue = convertNPVariantToValue(exec, &resultVariant, _rootObject.get());
+ JSValue resultValue = convertNPVariantToValue(exec, &resultVariant, _rootObject.get());
_NPN_ReleaseVariantValue(&resultVariant);
#ifdef ANDROID_NPN_SETEXCEPTION
MoveGlobalExceptionToExecState(exec);
@@ -187,7 +187,7 @@ bool CInstance::supportsConstruct() const
return _object->_class->construct;
}
-JSValuePtr CInstance::invokeConstruct(ExecState* exec, const ArgList& args)
+JSValue CInstance::invokeConstruct(ExecState* exec, const ArgList& args)
{
if (!_object->_class->construct)
return jsUndefined();
@@ -197,7 +197,7 @@ JSValuePtr CInstance::invokeConstruct(ExecState* exec, const ArgList& args)
unsigned i;
for (i = 0; i < count; i++)
- convertValueToNPVariant(exec, args.at(exec, i), &cArgs[i]);
+ convertValueToNPVariant(exec, args.at(i), &cArgs[i]);
// Invoke the 'C' method.
NPVariant resultVariant;
@@ -212,12 +212,12 @@ JSValuePtr CInstance::invokeConstruct(ExecState* exec, const ArgList& args)
for (i = 0; i < count; i++)
_NPN_ReleaseVariantValue(&cArgs[i]);
- JSValuePtr resultValue = convertNPVariantToValue(exec, &resultVariant, _rootObject.get());
+ JSValue resultValue = convertNPVariantToValue(exec, &resultVariant, _rootObject.get());
_NPN_ReleaseVariantValue(&resultVariant);
return resultValue;
}
-JSValuePtr CInstance::defaultValue(ExecState* exec, PreferredPrimitiveType hint) const
+JSValue CInstance::defaultValue(ExecState* exec, PreferredPrimitiveType hint) const
{
if (hint == PreferString)
return stringValue(exec);
@@ -226,26 +226,26 @@ JSValuePtr CInstance::defaultValue(ExecState* exec, PreferredPrimitiveType hint)
return valueOf(exec);
}
-JSValuePtr CInstance::stringValue(ExecState* exec) const
+JSValue CInstance::stringValue(ExecState* exec) const
{
char buf[1024];
snprintf(buf, sizeof(buf), "NPObject %p, NPClass %p", _object, _object->_class);
return jsString(exec, buf);
}
-JSValuePtr CInstance::numberValue(ExecState* exec) const
+JSValue CInstance::numberValue(ExecState* exec) const
{
// FIXME: Implement something sensible.
return jsNumber(exec, 0);
}
-JSValuePtr CInstance::booleanValue() const
+JSValue CInstance::booleanValue() const
{
// FIXME: Implement something sensible.
return jsBoolean(false);
}
-JSValuePtr CInstance::valueOf(ExecState* exec) const
+JSValue CInstance::valueOf(ExecState* exec) const
{
return stringValue(exec);
}
diff --git a/WebCore/bridge/c/c_instance.h b/WebCore/bridge/c/c_instance.h
index ed107e9..f9e9de3 100644
--- a/WebCore/bridge/c/c_instance.h
+++ b/WebCore/bridge/c/c_instance.h
@@ -55,21 +55,21 @@ public:
virtual Class *getClass() const;
- virtual JSValuePtr valueOf(ExecState*) const;
- virtual JSValuePtr defaultValue(ExecState*, PreferredPrimitiveType) const;
+ virtual JSValue valueOf(ExecState*) const;
+ virtual JSValue defaultValue(ExecState*, PreferredPrimitiveType) const;
- virtual JSValuePtr invokeMethod(ExecState*, const MethodList&, const ArgList&);
+ virtual JSValue invokeMethod(ExecState*, const MethodList&, const ArgList&);
virtual bool supportsInvokeDefaultMethod() const;
- virtual JSValuePtr invokeDefaultMethod(ExecState*, const ArgList&);
+ virtual JSValue invokeDefaultMethod(ExecState*, const ArgList&);
virtual bool supportsConstruct() const;
- virtual JSValuePtr invokeConstruct(ExecState*, const ArgList&);
+ virtual JSValue invokeConstruct(ExecState*, const ArgList&);
virtual void getPropertyNames(ExecState*, PropertyNameArray&);
- JSValuePtr stringValue(ExecState*) const;
- JSValuePtr numberValue(ExecState*) const;
- JSValuePtr booleanValue() const;
+ JSValue stringValue(ExecState*) const;
+ JSValue numberValue(ExecState*) const;
+ JSValue booleanValue() const;
NPObject *getObject() const { return _object; }
diff --git a/WebCore/bridge/c/c_runtime.cpp b/WebCore/bridge/c/c_runtime.cpp
index 56220ee..9338775 100644
--- a/WebCore/bridge/c/c_runtime.cpp
+++ b/WebCore/bridge/c/c_runtime.cpp
@@ -71,9 +71,9 @@ void MoveGlobalExceptionToExecState(ExecState* exec)
throwError(exec, GeneralError, *globalLastException);
SetGlobalException(0);
}
-#endif // ANDROID_NPN_SETEXCEPTION
+#endif // ANDROID_NPN_SETEXCEPTION
-JSValuePtr CField::valueFromInstance(ExecState* exec, const Instance* inst) const
+JSValue CField::valueFromInstance(ExecState* exec, const Instance* inst) const
{
const CInstance* instance = static_cast<const CInstance*>(inst);
NPObject* obj = instance->getObject();
@@ -93,7 +93,7 @@ JSValuePtr CField::valueFromInstance(ExecState* exec, const Instance* inst) cons
MoveGlobalExceptionToExecState(exec);
#endif // ANDROID_NPN_SETEXCEPTION
if (result) {
- JSValuePtr result = convertNPVariantToValue(exec, &property, instance->rootObject());
+ JSValue result = convertNPVariantToValue(exec, &property, instance->rootObject());
_NPN_ReleaseVariantValue(&property);
return result;
}
@@ -101,7 +101,7 @@ JSValuePtr CField::valueFromInstance(ExecState* exec, const Instance* inst) cons
return jsUndefined();
}
-void CField::setValueToInstance(ExecState *exec, const Instance *inst, JSValuePtr aValue) const
+void CField::setValueToInstance(ExecState *exec, const Instance *inst, JSValue aValue) const
{
const CInstance* instance = static_cast<const CInstance*>(inst);
NPObject* obj = instance->getObject();
diff --git a/WebCore/bridge/c/c_runtime.h b/WebCore/bridge/c/c_runtime.h
index 12e3b2e..676d949 100644
--- a/WebCore/bridge/c/c_runtime.h
+++ b/WebCore/bridge/c/c_runtime.h
@@ -38,8 +38,8 @@ class CField : public Field {
public:
CField(NPIdentifier ident) : _fieldIdentifier(ident) { }
- virtual JSValuePtr valueFromInstance(ExecState*, const Instance*) const;
- virtual void setValueToInstance(ExecState*, const Instance*, JSValuePtr) const;
+ virtual JSValue valueFromInstance(ExecState*, const Instance*) const;
+ virtual void setValueToInstance(ExecState*, const Instance*, JSValue) const;
NPIdentifier identifier() const { return _fieldIdentifier; }
diff --git a/WebCore/bridge/c/c_utility.cpp b/WebCore/bridge/c/c_utility.cpp
index 352163c..77b5de2 100644
--- a/WebCore/bridge/c/c_utility.cpp
+++ b/WebCore/bridge/c/c_utility.cpp
@@ -66,7 +66,7 @@ static String convertUTF8ToUTF16WithLatin1Fallback(const NPUTF8* UTF8Chars, int
}
// Variant value must be released with NPReleaseVariantValue()
-void convertValueToNPVariant(ExecState* exec, JSValuePtr value, NPVariant* result)
+void convertValueToNPVariant(ExecState* exec, JSValue value, NPVariant* result)
{
JSLock lock(false);
@@ -105,7 +105,7 @@ void convertValueToNPVariant(ExecState* exec, JSValuePtr value, NPVariant* resul
}
}
-JSValuePtr convertNPVariantToValue(ExecState* exec, const NPVariant* variant, RootObject* rootObject)
+JSValue convertNPVariantToValue(ExecState* exec, const NPVariant* variant, RootObject* rootObject)
{
JSLock lock(false);
diff --git a/WebCore/bridge/c/c_utility.h b/WebCore/bridge/c/c_utility.h
index bd25e80..f69bba6 100644
--- a/WebCore/bridge/c/c_utility.h
+++ b/WebCore/bridge/c/c_utility.h
@@ -47,8 +47,8 @@ class RootObject;
typedef uint16_t NPUTF16;
WebCore::String convertNPStringToUTF16(const NPString *string);
-void convertValueToNPVariant(ExecState*, JSValuePtr, NPVariant* result);
-JSValuePtr convertNPVariantToValue(ExecState*, const NPVariant*, RootObject*);
+void convertValueToNPVariant(ExecState*, JSValue, NPVariant* result);
+JSValue convertNPVariantToValue(ExecState*, const NPVariant*, RootObject*);
Identifier identifierFromNPIdentifier(const NPUTF8* name);
} }
diff --git a/WebCore/bridge/jni/jni_instance.cpp b/WebCore/bridge/jni/jni_instance.cpp
index 5a819a6..c47bd8b 100644
--- a/WebCore/bridge/jni/jni_instance.cpp
+++ b/WebCore/bridge/jni/jni_instance.cpp
@@ -84,7 +84,7 @@ Class *JavaInstance::getClass() const
return _class;
}
-JSValuePtr JavaInstance::stringValue(ExecState* exec) const
+JSValue JavaInstance::stringValue(ExecState* exec) const
{
JSLock lock(false);
@@ -96,23 +96,23 @@ JSValuePtr JavaInstance::stringValue(ExecState* exec) const
return jsString(exec, u);
}
-JSValuePtr JavaInstance::numberValue(ExecState* exec) const
+JSValue JavaInstance::numberValue(ExecState* exec) const
{
jdouble doubleValue = callJNIMethod<jdouble>(_instance->_instance, "doubleValue", "()D");
return jsNumber(exec, doubleValue);
}
-JSValuePtr JavaInstance::booleanValue() const
+JSValue JavaInstance::booleanValue() const
{
jboolean booleanValue = callJNIMethod<jboolean>(_instance->_instance, "booleanValue", "()Z");
return jsBoolean(booleanValue);
}
-JSValuePtr JavaInstance::invokeMethod (ExecState *exec, const MethodList &methodList, const ArgList &args)
+JSValue JavaInstance::invokeMethod (ExecState *exec, const MethodList &methodList, const ArgList &args)
{
int i, count = args.size();
jvalue *jArgs;
- JSValuePtr resultValue;
+ JSValue resultValue;
Method *method = 0;
size_t numMethods = methodList.size();
@@ -145,8 +145,8 @@ JSValuePtr JavaInstance::invokeMethod (ExecState *exec, const MethodList &method
for (i = 0; i < count; i++) {
JavaParameter* aParameter = jMethod->parameterAt(i);
- jArgs[i] = convertValueToJValue(exec, args.at(exec, i), aParameter->getJNIType(), aParameter->type());
- JS_LOG("arg[%d] = %s\n", i, args.at(exec, i).toString(exec).ascii());
+ jArgs[i] = convertValueToJValue(exec, args.at(i), aParameter->getJNIType(), aParameter->type());
+ JS_LOG("arg[%d] = %s\n", i, args.at(i).toString(exec).ascii());
}
jvalue result;
@@ -161,7 +161,7 @@ JSValuePtr JavaInstance::invokeMethod (ExecState *exec, const MethodList &method
bool handled = false;
if (rootObject->nativeHandle()) {
jobject obj = _instance->_instance;
- JSValuePtr exceptionDescription = noValue();
+ JSValue exceptionDescription;
const char *callingURL = 0; // FIXME, need to propagate calling URL to Java
handled = dispatchJNICall(exec, rootObject->nativeHandle(), obj, jMethod->isStatic(), jMethod->JNIReturnType(), jMethod->methodID(obj), jArgs, result, callingURL, exceptionDescription);
if (exceptionDescription) {
@@ -287,7 +287,7 @@ JSValuePtr JavaInstance::invokeMethod (ExecState *exec, const MethodList &method
return resultValue;
}
-JSValuePtr JavaInstance::defaultValue(ExecState* exec, PreferredPrimitiveType hint) const
+JSValue JavaInstance::defaultValue(ExecState* exec, PreferredPrimitiveType hint) const
{
if (hint == PreferString)
return stringValue(exec);
@@ -303,7 +303,7 @@ JSValuePtr JavaInstance::defaultValue(ExecState* exec, PreferredPrimitiveType hi
return valueOf(exec);
}
-JSValuePtr JavaInstance::valueOf(ExecState* exec) const
+JSValue JavaInstance::valueOf(ExecState* exec) const
{
return stringValue(exec);
}
diff --git a/WebCore/bridge/jni/jni_instance.h b/WebCore/bridge/jni/jni_instance.h
index 551b8e7..96dda7d 100644
--- a/WebCore/bridge/jni/jni_instance.h
+++ b/WebCore/bridge/jni/jni_instance.h
@@ -86,16 +86,16 @@ public:
virtual Class *getClass() const;
- virtual JSValuePtr valueOf(ExecState*) const;
- virtual JSValuePtr defaultValue(ExecState*, PreferredPrimitiveType) const;
+ virtual JSValue valueOf(ExecState*) const;
+ virtual JSValue defaultValue(ExecState*, PreferredPrimitiveType) const;
- virtual JSValuePtr invokeMethod(ExecState* exec, const MethodList& method, const ArgList& args);
+ virtual JSValue invokeMethod(ExecState* exec, const MethodList& method, const ArgList& args);
jobject javaInstance() const { return _instance->_instance; }
- JSValuePtr stringValue(ExecState*) const;
- JSValuePtr numberValue(ExecState*) const;
- JSValuePtr booleanValue() const;
+ JSValue stringValue(ExecState*) const;
+ JSValue numberValue(ExecState*) const;
+ JSValue booleanValue() const;
protected:
virtual void virtualBegin();
diff --git a/WebCore/bridge/jni/jni_jsobject.h b/WebCore/bridge/jni/jni_jsobject.h
index 4125565..b4f5719 100644
--- a/WebCore/bridge/jni/jni_jsobject.h
+++ b/WebCore/bridge/jni/jni_jsobject.h
@@ -42,6 +42,7 @@ namespace JSC {
class ArgList;
class ExecState;
class JSObject;
+class MarkedArgumentBuffer;
namespace Bindings {
@@ -90,9 +91,9 @@ public:
static jvalue invoke(JSObjectCallContext*);
- jobject convertValueToJObject(JSValuePtr) const;
- JSValuePtr convertJObjectToValue(ExecState*, jobject) const;
- void getListFromJArray(ExecState*, jobjectArray, ArgList&) const;
+ jobject convertValueToJObject(JSValue) const;
+ JSValue convertJObjectToValue(ExecState*, jobject) const;
+ void getListFromJArray(ExecState*, jobjectArray, MarkedArgumentBuffer&) const;
RootObject* rootObject() const;
diff --git a/WebCore/bridge/jni/jni_jsobject.mm b/WebCore/bridge/jni/jni_jsobject.mm
index 3689840..32d7b0d 100644
--- a/WebCore/bridge/jni/jni_jsobject.mm
+++ b/WebCore/bridge/jni/jni_jsobject.mm
@@ -293,17 +293,17 @@ jobject JavaJSObject::call(jstring methodName, jobjectArray args) const
JSLock lock(false);
Identifier identifier(exec, JavaString(methodName));
- JSValuePtr function = _imp->get(exec, identifier);
+ JSValue function = _imp->get(exec, identifier);
CallData callData;
CallType callType = function.getCallData(callData);
if (callType == CallTypeNone)
return 0;
// Call the function object.
- ArgList argList;
+ MarkedArgumentBuffer argList;
getListFromJArray(exec, args, argList);
rootObject->globalObject()->globalData()->timeoutChecker.start();
- JSValuePtr result = JSC::call(exec, function, callType, callData, _imp, argList);
+ JSValue result = JSC::call(exec, function, callType, callData, _imp, argList);
rootObject->globalObject()->globalData()->timeoutChecker.stop();
return convertValueToJObject(result);
@@ -313,7 +313,7 @@ jobject JavaJSObject::eval(jstring script) const
{
JS_LOG ("script = %s\n", JavaString(script).UTF8String());
- JSValuePtr result;
+ JSValue result;
JSLock lock(false);
@@ -347,7 +347,7 @@ jobject JavaJSObject::getMember(jstring memberName) const
ExecState* exec = rootObject->globalObject()->globalExec();
JSLock lock(false);
- JSValuePtr result = _imp->get(exec, Identifier(exec, JavaString(memberName)));
+ JSValue result = _imp->get(exec, Identifier(exec, JavaString(memberName)));
return convertValueToJObject(result);
}
@@ -397,7 +397,7 @@ jobject JavaJSObject::getSlot(jint index) const
ExecState* exec = rootObject->globalObject()->globalExec();
JSLock lock(false);
- JSValuePtr result = _imp->get(exec, index);
+ JSValue result = _imp->get(exec, index);
return convertValueToJObject(result);
}
@@ -485,7 +485,7 @@ jlong JavaJSObject::createNative(jlong nativeHandle)
return nativeHandle;
}
-jobject JavaJSObject::convertValueToJObject(JSValuePtr value) const
+jobject JavaJSObject::convertValueToJObject(JSValue value) const
{
JSLock lock(false);
@@ -571,7 +571,7 @@ jobject JavaJSObject::convertValueToJObject(JSValuePtr value) const
return result;
}
-JSValuePtr JavaJSObject::convertJObjectToValue(ExecState* exec, jobject theObject) const
+JSValue JavaJSObject::convertJObjectToValue(ExecState* exec, jobject theObject) const
{
// Instances of netscape.javascript.JSObject get converted back to
// JavaScript objects. All other objects are wrapped. It's not
@@ -605,7 +605,7 @@ JSValuePtr JavaJSObject::convertJObjectToValue(ExecState* exec, jobject theObjec
return JavaInstance::create(theObject, _rootObject)->createRuntimeObject(exec);
}
-void JavaJSObject::getListFromJArray(ExecState* exec, jobjectArray jArray, ArgList& list) const
+void JavaJSObject::getListFromJArray(ExecState* exec, jobjectArray jArray, MarkedArgumentBuffer& list) const
{
JNIEnv *env = getJNIEnv();
int numObjects = jArray ? env->GetArrayLength(jArray) : 0;
diff --git a/WebCore/bridge/jni/jni_objc.mm b/WebCore/bridge/jni/jni_objc.mm
index 232d9e9..7c19442 100644
--- a/WebCore/bridge/jni/jni_objc.mm
+++ b/WebCore/bridge/jni/jni_objc.mm
@@ -45,7 +45,7 @@ using namespace JSC::Bindings;
exceptionDescription:(NSString **)exceptionString;
@end
-bool JSC::Bindings::dispatchJNICall(ExecState* exec, const void* targetAppletView, jobject obj, bool isStatic, JNIType returnType, jmethodID methodID, jvalue* args, jvalue &result, const char*, JSValuePtr& exceptionDescription)
+bool JSC::Bindings::dispatchJNICall(ExecState* exec, const void* targetAppletView, jobject obj, bool isStatic, JNIType returnType, jmethodID methodID, jvalue* args, jvalue &result, const char*, JSValue& exceptionDescription)
{
id view = (id)targetAppletView;
diff --git a/WebCore/bridge/jni/jni_runtime.cpp b/WebCore/bridge/jni/jni_runtime.cpp
index 38d6d6c..9d06a8c 100644
--- a/WebCore/bridge/jni/jni_runtime.cpp
+++ b/WebCore/bridge/jni/jni_runtime.cpp
@@ -70,7 +70,7 @@ JavaField::JavaField (JNIEnv *env, jobject aField)
_field = new JObjectWrapper(aField);
}
-JSValuePtr JavaArray::convertJObjectToArray(ExecState* exec, jobject anObject, const char* type, PassRefPtr<RootObject> rootObject)
+JSValue JavaArray::convertJObjectToArray(ExecState* exec, jobject anObject, const char* type, PassRefPtr<RootObject> rootObject)
{
if (type[0] != '[')
return jsUndefined();
@@ -93,7 +93,7 @@ jvalue JavaField::dispatchValueFromInstance(ExecState *exec, const JavaInstance
{
RootObject* rootObject = instance->rootObject();
if (rootObject && rootObject->nativeHandle()) {
- JSValuePtr exceptionDescription = noValue();
+ JSValue exceptionDescription;
jvalue args[1];
args[0].l = jinstance;
@@ -106,11 +106,11 @@ jvalue JavaField::dispatchValueFromInstance(ExecState *exec, const JavaInstance
return result;
}
-JSValuePtr JavaField::valueFromInstance(ExecState* exec, const Instance* i) const
+JSValue JavaField::valueFromInstance(ExecState* exec, const Instance* i) const
{
const JavaInstance *instance = static_cast<const JavaInstance *>(i);
- JSValuePtr jsresult = jsUndefined();
+ JSValue jsresult = jsUndefined();
switch (_JNIType) {
case array_type:
@@ -175,7 +175,7 @@ void JavaField::dispatchSetValueToInstance(ExecState *exec, const JavaInstance *
{
RootObject* rootObject = instance->rootObject();
if (rootObject && rootObject->nativeHandle()) {
- JSValuePtr exceptionDescription = noValue();
+ JSValue exceptionDescription;
jvalue args[2];
jvalue result;
@@ -189,7 +189,7 @@ void JavaField::dispatchSetValueToInstance(ExecState *exec, const JavaInstance *
}
}
-void JavaField::setValueToInstance(ExecState* exec, const Instance* i, JSValuePtr aValue) const
+void JavaField::setValueToInstance(ExecState* exec, const Instance* i, JSValue aValue) const
{
const JavaInstance *instance = static_cast<const JavaInstance *>(i);
jvalue javaValue = convertValueToJValue (exec, aValue, _JNIType, type());
@@ -389,7 +389,7 @@ RootObject* JavaArray::rootObject() const
return _rootObject && _rootObject->isValid() ? _rootObject.get() : 0;
}
-void JavaArray::setValueAt(ExecState* exec, unsigned index, JSValuePtr aValue) const
+void JavaArray::setValueAt(ExecState* exec, unsigned index, JSValue aValue) const
{
JNIEnv *env = getJNIEnv();
char *javaClassName = 0;
@@ -457,7 +457,7 @@ void JavaArray::setValueAt(ExecState* exec, unsigned index, JSValuePtr aValue) c
}
-JSValuePtr JavaArray::valueAt(ExecState* exec, unsigned index) const
+JSValue JavaArray::valueAt(ExecState* exec, unsigned index) const
{
JNIEnv *env = getJNIEnv();
JNIType arrayType = JNITypeFromPrimitiveType(_type[1]);
diff --git a/WebCore/bridge/jni/jni_runtime.h b/WebCore/bridge/jni/jni_runtime.h
index 3697f2b..f3cbf2b 100644
--- a/WebCore/bridge/jni/jni_runtime.h
+++ b/WebCore/bridge/jni/jni_runtime.h
@@ -112,8 +112,8 @@ class JavaField : public Field
public:
JavaField (JNIEnv *env, jobject aField);
- virtual JSValuePtr valueFromInstance(ExecState *exec, const Instance *instance) const;
- virtual void setValueToInstance(ExecState *exec, const Instance *instance, JSValuePtr aValue) const;
+ virtual JSValue valueFromInstance(ExecState *exec, const Instance *instance) const;
+ virtual void setValueToInstance(ExecState *exec, const Instance *instance, JSValue aValue) const;
UString::Rep* name() const { return ((UString)_name).rep(); }
virtual RuntimeType type() const { return _type.UTF8String(); }
@@ -168,13 +168,13 @@ public:
RootObject* rootObject() const;
- virtual void setValueAt(ExecState *exec, unsigned int index, JSValuePtr aValue) const;
- virtual JSValuePtr valueAt(ExecState *exec, unsigned int index) const;
+ virtual void setValueAt(ExecState *exec, unsigned int index, JSValue aValue) const;
+ virtual JSValue valueAt(ExecState *exec, unsigned int index) const;
virtual unsigned int getLength() const;
jobject javaArray() const { return _array->_instance; }
- static JSValuePtr convertJObjectToArray (ExecState* exec, jobject anObject, const char* type, PassRefPtr<RootObject>);
+ static JSValue convertJObjectToArray (ExecState* exec, jobject anObject, const char* type, PassRefPtr<RootObject>);
private:
RefPtr<JObjectWrapper> _array;
diff --git a/WebCore/bridge/jni/jni_utility.cpp b/WebCore/bridge/jni/jni_utility.cpp
index a1f4a2d..31cdfea 100644
--- a/WebCore/bridge/jni/jni_utility.cpp
+++ b/WebCore/bridge/jni/jni_utility.cpp
@@ -369,7 +369,7 @@ static jobject convertArrayInstanceToJavaArray(ExecState* exec, JSArray* jsArray
env->FindClass("java/lang/String"),
env->NewStringUTF(""));
for(unsigned i = 0; i < length; i++) {
- JSValuePtr item = jsArray->get(exec, i);
+ JSValue item = jsArray->get(exec, i);
UString stringValue = item.toString(exec);
env->SetObjectArrayElement(jarray,i,
env->functions->NewString(env, (const jchar *)stringValue.data(), stringValue.size()));
@@ -381,7 +381,7 @@ static jobject convertArrayInstanceToJavaArray(ExecState* exec, JSArray* jsArray
case boolean_type: {
jarray = (jobjectArray)env->NewBooleanArray(length);
for(unsigned i = 0; i < length; i++) {
- JSValuePtr item = jsArray->get(exec, i);
+ JSValue item = jsArray->get(exec, i);
jboolean value = (jboolean)item.toNumber(exec);
env->SetBooleanArrayRegion((jbooleanArray)jarray, (jsize)i, (jsize)1, &value);
}
@@ -391,7 +391,7 @@ static jobject convertArrayInstanceToJavaArray(ExecState* exec, JSArray* jsArray
case byte_type: {
jarray = (jobjectArray)env->NewByteArray(length);
for(unsigned i = 0; i < length; i++) {
- JSValuePtr item = jsArray->get(exec, i);
+ JSValue item = jsArray->get(exec, i);
jbyte value = (jbyte)item.toNumber(exec);
env->SetByteArrayRegion((jbyteArray)jarray, (jsize)i, (jsize)1, &value);
}
@@ -401,7 +401,7 @@ static jobject convertArrayInstanceToJavaArray(ExecState* exec, JSArray* jsArray
case char_type: {
jarray = (jobjectArray)env->NewCharArray(length);
for(unsigned i = 0; i < length; i++) {
- JSValuePtr item = jsArray->get(exec, i);
+ JSValue item = jsArray->get(exec, i);
UString stringValue = item.toString(exec);
jchar value = 0;
if (stringValue.size() > 0)
@@ -414,7 +414,7 @@ static jobject convertArrayInstanceToJavaArray(ExecState* exec, JSArray* jsArray
case short_type: {
jarray = (jobjectArray)env->NewShortArray(length);
for(unsigned i = 0; i < length; i++) {
- JSValuePtr item = jsArray->get(exec, i);
+ JSValue item = jsArray->get(exec, i);
jshort value = (jshort)item.toNumber(exec);
env->SetShortArrayRegion((jshortArray)jarray, (jsize)i, (jsize)1, &value);
}
@@ -424,7 +424,7 @@ static jobject convertArrayInstanceToJavaArray(ExecState* exec, JSArray* jsArray
case int_type: {
jarray = (jobjectArray)env->NewIntArray(length);
for(unsigned i = 0; i < length; i++) {
- JSValuePtr item = jsArray->get(exec, i);
+ JSValue item = jsArray->get(exec, i);
jint value = (jint)item.toNumber(exec);
env->SetIntArrayRegion((jintArray)jarray, (jsize)i, (jsize)1, &value);
}
@@ -434,7 +434,7 @@ static jobject convertArrayInstanceToJavaArray(ExecState* exec, JSArray* jsArray
case long_type: {
jarray = (jobjectArray)env->NewLongArray(length);
for(unsigned i = 0; i < length; i++) {
- JSValuePtr item = jsArray->get(exec, i);
+ JSValue item = jsArray->get(exec, i);
jlong value = (jlong)item.toNumber(exec);
env->SetLongArrayRegion((jlongArray)jarray, (jsize)i, (jsize)1, &value);
}
@@ -444,7 +444,7 @@ static jobject convertArrayInstanceToJavaArray(ExecState* exec, JSArray* jsArray
case float_type: {
jarray = (jobjectArray)env->NewFloatArray(length);
for(unsigned i = 0; i < length; i++) {
- JSValuePtr item = jsArray->get(exec, i);
+ JSValue item = jsArray->get(exec, i);
jfloat value = (jfloat)item.toNumber(exec);
env->SetFloatArrayRegion((jfloatArray)jarray, (jsize)i, (jsize)1, &value);
}
@@ -454,7 +454,7 @@ static jobject convertArrayInstanceToJavaArray(ExecState* exec, JSArray* jsArray
case double_type: {
jarray = (jobjectArray)env->NewDoubleArray(length);
for(unsigned i = 0; i < length; i++) {
- JSValuePtr item = jsArray->get(exec, i);
+ JSValue item = jsArray->get(exec, i);
jdouble value = (jdouble)item.toNumber(exec);
env->SetDoubleArrayRegion((jdoubleArray)jarray, (jsize)i, (jsize)1, &value);
}
@@ -472,7 +472,7 @@ static jobject convertArrayInstanceToJavaArray(ExecState* exec, JSArray* jsArray
}
-jvalue convertValueToJValue(ExecState* exec, JSValuePtr value, JNIType _JNIType, const char* javaClassName)
+jvalue convertValueToJValue(ExecState* exec, JSValue value, JNIType _JNIType, const char* javaClassName)
{
JSLock lock(false);
diff --git a/WebCore/bridge/jni/jni_utility.h b/WebCore/bridge/jni/jni_utility.h
index 4330b1e..90e7fe5 100644
--- a/WebCore/bridge/jni/jni_utility.h
+++ b/WebCore/bridge/jni/jni_utility.h
@@ -77,7 +77,7 @@ JNIType JNITypeFromPrimitiveType(char type);
const char *signatureFromPrimitiveType(JNIType type);
#if USE(JSC)
-jvalue convertValueToJValue(ExecState*, JSValuePtr, JNIType, const char* javaClassName);
+jvalue convertValueToJValue(ExecState*, JSValue, JNIType, const char* javaClassName);
#endif
jvalue getJNIField(jobject obj, JNIType type, const char *name, const char *signature);
@@ -285,10 +285,16 @@ T callJNIStaticMethod(jclass cls, const char* methodName, const char* methodSign
return result;
}
+#ifdef MANUAL_MERGE_REQUIRED
#if USE(JSC)
bool dispatchJNICall(ExecState*, const void* targetAppletView, jobject obj, bool isStatic, JNIType returnType, jmethodID methodID, jvalue* args, jvalue& result, const char* callingURL, JSValuePtr& exceptionDescription);
#endif
+#else // MANUAL_MERGE_REQUIRED
+
+bool dispatchJNICall(ExecState*, const void* targetAppletView, jobject obj, bool isStatic, JNIType returnType, jmethodID methodID, jvalue* args, jvalue& result, const char* callingURL, JSValue& exceptionDescription);
+
+#endif // MANUAL_MERGE_REQUIRED
} // namespace Bindings
} // namespace JSC
diff --git a/WebCore/bridge/npapi.h b/WebCore/bridge/npapi.h
index 43b701b..d436565 100644
--- a/WebCore/bridge/npapi.h
+++ b/WebCore/bridge/npapi.h
@@ -494,6 +494,8 @@ typedef struct _NPCocoaEvent {
uint16 keyCode;
} key;
struct {
+ CGContextRef context;
+
double x;
double y;
double width;
@@ -557,6 +559,14 @@ typedef NPNSMenu NPMenu;
typedef void * NPMenu;
#endif
+typedef enum {
+ NPCoordinateSpacePlugin = 1,
+ NPCoordinateSpaceWindow,
+ NPCoordinateSpaceFlippedWindow,
+ NPCoordinateSpaceScreen,
+ NPCoordinateSpaceFlippedScreen
+} NPCoordinateSpace;
+
#if defined(XP_MAC) || defined(XP_MACOSX)
#ifndef NP_NO_CARBON
@@ -842,10 +852,14 @@ void NPN_ForceRedraw(NPP instance);
void NPN_PushPopupsEnabledState(NPP instance, NPBool enabled);
void NPN_PopPopupsEnabledState(NPP instance);
void NPN_PluginThreadAsyncCall(NPP instance, void (*func) (void *), void *userData);
+NPError NPN_GetValueForURL(NPP instance, NPNURLVariable variable, const char* url, char** value, uint32* len);
+NPError NPN_SetValueForURL(NPP instance, NPNURLVariable variable, const char* url, const char* value, uint32 len);
+NPError NPN_GetAuthenticationInfo(NPP instance, const char* protocol, const char* host, int32 port, const char* scheme, const char *realm, char** username, uint32* ulen, char** password, uint32* plen);
uint32 NPN_ScheduleTimer(NPP instance, uint32 interval, NPBool repeat, void (*timerFunc)(NPP npp, uint32 timerID));
void NPN_UnscheduleTimer(NPP instance, uint32 timerID);
NPError NPN_PopUpContextMenu(NPP instance, NPMenu* menu);
-
+NPBool NPN_ConvertPoint(NPP instance, double sourceX, double sourceY, NPCoordinateSpace sourceSpace, double *destX, double *destY, NPCoordinateSpace destSpace);
+
#ifdef __cplusplus
} /* end extern "C" */
#endif
diff --git a/WebCore/bridge/objc/WebScriptObject.h b/WebCore/bridge/objc/WebScriptObject.h
index 7942635..6d9ff2c 100644
--- a/WebCore/bridge/objc/WebScriptObject.h
+++ b/WebCore/bridge/objc/WebScriptObject.h
@@ -34,7 +34,7 @@
+ (NSString *)webScriptNameForKey:(const char *)name;
+ (BOOL)isKeyExcludedFromWebScript:(const char *)name;
-+ (id)_convertValueToObjcValue:(JSC::JSValuePtr)value originRootObject:(JSC::Bindings::RootObject*)originRootObject rootObject:(JSC::Bindings::RootObject*)rootObject;
++ (id)_convertValueToObjcValue:(JSC::JSValue)value originRootObject:(JSC::Bindings::RootObject*)originRootObject rootObject:(JSC::Bindings::RootObject*)rootObject;
- _initWithJSObject:(JSC::JSObject*)imp originRootObject:(PassRefPtr<JSC::Bindings::RootObject>)originRootObject rootObject:(PassRefPtr<JSC::Bindings::RootObject>)rootObject;
- (JSC::JSObject *)_imp;
@end
diff --git a/WebCore/bridge/objc/objc_class.h b/WebCore/bridge/objc/objc_class.h
index 3735680..eebfd2a 100644
--- a/WebCore/bridge/objc/objc_class.h
+++ b/WebCore/bridge/objc/objc_class.h
@@ -43,7 +43,7 @@ public:
virtual MethodList methodsNamed(const Identifier&, Instance *instance) const;
virtual Field *fieldNamed(const Identifier&, Instance *instance) const;
- virtual JSValuePtr fallbackObject(ExecState *exec, Instance *instance, const Identifier &propertyName);
+ virtual JSValue fallbackObject(ExecState *exec, Instance *instance, const Identifier &propertyName);
ClassStructPtr isa() { return _isa; }
diff --git a/WebCore/bridge/objc/objc_class.mm b/WebCore/bridge/objc/objc_class.mm
index e3bde0a..5f3677e 100644
--- a/WebCore/bridge/objc/objc_class.mm
+++ b/WebCore/bridge/objc/objc_class.mm
@@ -239,7 +239,7 @@ Field* ObjcClass::fieldNamed(const Identifier& identifier, Instance* instance) c
return aField;
}
-JSValuePtr ObjcClass::fallbackObject(ExecState* exec, Instance* instance, const Identifier &propertyName)
+JSValue ObjcClass::fallbackObject(ExecState* exec, Instance* instance, const Identifier &propertyName)
{
ObjcInstance* objcInstance = static_cast<ObjcInstance*>(instance);
id targetObject = objcInstance->getObject();
diff --git a/WebCore/bridge/objc/objc_instance.h b/WebCore/bridge/objc/objc_instance.h
index 1b7e184..6f1eb0d 100644
--- a/WebCore/bridge/objc/objc_instance.h
+++ b/WebCore/bridge/objc/objc_instance.h
@@ -48,21 +48,21 @@ public:
virtual Class *getClass() const;
- virtual JSValuePtr valueOf(ExecState*) const;
- virtual JSValuePtr defaultValue(ExecState*, PreferredPrimitiveType) const;
+ virtual JSValue valueOf(ExecState*) const;
+ virtual JSValue defaultValue(ExecState*, PreferredPrimitiveType) const;
- virtual JSValuePtr invokeMethod(ExecState*, const MethodList&, const ArgList&);
+ virtual JSValue invokeMethod(ExecState*, const MethodList&, const ArgList&);
virtual bool supportsInvokeDefaultMethod() const;
- virtual JSValuePtr invokeDefaultMethod(ExecState*, const ArgList&);
+ virtual JSValue invokeDefaultMethod(ExecState*, const ArgList&);
- JSValuePtr getValueOfUndefinedField(ExecState*, const Identifier&) const;
- virtual bool setValueOfUndefinedField(ExecState*, const Identifier&, JSValuePtr);
+ JSValue getValueOfUndefinedField(ExecState*, const Identifier&) const;
+ virtual bool setValueOfUndefinedField(ExecState*, const Identifier&, JSValue);
ObjectStructPtr getObject() const { return _instance.get(); }
- JSValuePtr stringValue(ExecState*) const;
- JSValuePtr numberValue(ExecState*) const;
- JSValuePtr booleanValue() const;
+ JSValue stringValue(ExecState*) const;
+ JSValue numberValue(ExecState*) const;
+ JSValue booleanValue() const;
protected:
virtual void virtualBegin();
diff --git a/WebCore/bridge/objc/objc_instance.mm b/WebCore/bridge/objc/objc_instance.mm
index 54af18c..094ed78 100644
--- a/WebCore/bridge/objc/objc_instance.mm
+++ b/WebCore/bridge/objc/objc_instance.mm
@@ -124,9 +124,9 @@ bool ObjcInstance::supportsInvokeDefaultMethod() const
return [_instance.get() respondsToSelector:@selector(invokeDefaultMethodWithArguments:)];
}
-JSValuePtr ObjcInstance::invokeMethod(ExecState* exec, const MethodList &methodList, const ArgList &args)
+JSValue ObjcInstance::invokeMethod(ExecState* exec, const MethodList &methodList, const ArgList &args)
{
- JSValuePtr result = jsUndefined();
+ JSValue result = jsUndefined();
JSLock::DropAllLocks dropAllLocks(false); // Can't put this inside the @try scope because it unwinds incorrectly.
@@ -158,7 +158,7 @@ JSValuePtr ObjcInstance::invokeMethod(ExecState* exec, const MethodList &methodL
NSMutableArray* objcArgs = [NSMutableArray array];
int count = args.size();
for (int i = 0; i < count; i++) {
- ObjcValue value = convertValueToObjcValue(exec, args.at(exec, i), ObjcObjectType);
+ ObjcValue value = convertValueToObjcValue(exec, args.at(i), ObjcObjectType);
[objcArgs addObject:value.objectValue];
}
[invocation setArgument:&objcArgs atIndex:3];
@@ -173,7 +173,7 @@ JSValuePtr ObjcInstance::invokeMethod(ExecState* exec, const MethodList &methodL
// types.
ASSERT(objcValueType != ObjcInvalidType && objcValueType != ObjcVoidType);
- ObjcValue value = convertValueToObjcValue(exec, args.at(exec, i-2), objcValueType);
+ ObjcValue value = convertValueToObjcValue(exec, args.at(i-2), objcValueType);
switch (objcValueType) {
case ObjcObjectType:
@@ -242,12 +242,12 @@ JSValuePtr ObjcInstance::invokeMethod(ExecState* exec, const MethodList &methodL
// Work around problem in some versions of GCC where result gets marked volatile and
// it can't handle copying from a volatile to non-volatile.
- return const_cast<JSValuePtr&>(result);
+ return const_cast<JSValue&>(result);
}
-JSValuePtr ObjcInstance::invokeDefaultMethod(ExecState* exec, const ArgList &args)
+JSValue ObjcInstance::invokeDefaultMethod(ExecState* exec, const ArgList &args)
{
- JSValuePtr result = jsUndefined();
+ JSValue result = jsUndefined();
JSLock::DropAllLocks dropAllLocks(false); // Can't put this inside the @try scope because it unwinds incorrectly.
setGlobalException(nil);
@@ -269,7 +269,7 @@ JSValuePtr ObjcInstance::invokeDefaultMethod(ExecState* exec, const ArgList &arg
NSMutableArray* objcArgs = [NSMutableArray array];
unsigned count = args.size();
for (unsigned i = 0; i < count; i++) {
- ObjcValue value = convertValueToObjcValue(exec, args.at(exec, i), ObjcObjectType);
+ ObjcValue value = convertValueToObjcValue(exec, args.at(i), ObjcObjectType);
[objcArgs addObject:value.objectValue];
}
[invocation setArgument:&objcArgs atIndex:2];
@@ -293,10 +293,10 @@ JSValuePtr ObjcInstance::invokeDefaultMethod(ExecState* exec, const ArgList &arg
// Work around problem in some versions of GCC where result gets marked volatile and
// it can't handle copying from a volatile to non-volatile.
- return const_cast<JSValuePtr&>(result);
+ return const_cast<JSValue&>(result);
}
-bool ObjcInstance::setValueOfUndefinedField(ExecState* exec, const Identifier& property, JSValuePtr aValue)
+bool ObjcInstance::setValueOfUndefinedField(ExecState* exec, const Identifier& property, JSValue aValue)
{
id targetObject = getObject();
if (![targetObject respondsToSelector:@selector(setValue:forUndefinedKey:)])
@@ -324,9 +324,9 @@ bool ObjcInstance::setValueOfUndefinedField(ExecState* exec, const Identifier& p
return true;
}
-JSValuePtr ObjcInstance::getValueOfUndefinedField(ExecState* exec, const Identifier& property) const
+JSValue ObjcInstance::getValueOfUndefinedField(ExecState* exec, const Identifier& property) const
{
- JSValuePtr result = jsUndefined();
+ JSValue result = jsUndefined();
id targetObject = getObject();
@@ -350,10 +350,10 @@ JSValuePtr ObjcInstance::getValueOfUndefinedField(ExecState* exec, const Identif
// Work around problem in some versions of GCC where result gets marked volatile and
// it can't handle copying from a volatile to non-volatile.
- return const_cast<JSValuePtr&>(result);
+ return const_cast<JSValue&>(result);
}
-JSValuePtr ObjcInstance::defaultValue(ExecState* exec, PreferredPrimitiveType hint) const
+JSValue ObjcInstance::defaultValue(ExecState* exec, PreferredPrimitiveType hint) const
{
if (hint == PreferString)
return stringValue(exec);
@@ -366,24 +366,24 @@ JSValuePtr ObjcInstance::defaultValue(ExecState* exec, PreferredPrimitiveType hi
return valueOf(exec);
}
-JSValuePtr ObjcInstance::stringValue(ExecState* exec) const
+JSValue ObjcInstance::stringValue(ExecState* exec) const
{
return convertNSStringToString(exec, [getObject() description]);
}
-JSValuePtr ObjcInstance::numberValue(ExecState* exec) const
+JSValue ObjcInstance::numberValue(ExecState* exec) const
{
// FIXME: Implement something sensible
return jsNumber(exec, 0);
}
-JSValuePtr ObjcInstance::booleanValue() const
+JSValue ObjcInstance::booleanValue() const
{
// FIXME: Implement something sensible
return jsBoolean(false);
}
-JSValuePtr ObjcInstance::valueOf(ExecState* exec) const
+JSValue ObjcInstance::valueOf(ExecState* exec) const
{
return stringValue(exec);
}
diff --git a/WebCore/bridge/objc/objc_runtime.h b/WebCore/bridge/objc/objc_runtime.h
index 5ed6d2a..82d563b 100644
--- a/WebCore/bridge/objc/objc_runtime.h
+++ b/WebCore/bridge/objc/objc_runtime.h
@@ -44,8 +44,8 @@ public:
ObjcField(IvarStructPtr);
ObjcField(CFStringRef name);
- virtual JSValuePtr valueFromInstance(ExecState*, const Instance*) const;
- virtual void setValueToInstance(ExecState*, const Instance*, JSValuePtr) const;
+ virtual JSValue valueFromInstance(ExecState*, const Instance*) const;
+ virtual void setValueToInstance(ExecState*, const Instance*, JSValue) const;
private:
IvarStructPtr _ivar;
@@ -77,13 +77,13 @@ class ObjcArray : public Array {
public:
ObjcArray(ObjectStructPtr, PassRefPtr<RootObject>);
- virtual void setValueAt(ExecState *exec, unsigned int index, JSValuePtr aValue) const;
- virtual JSValuePtr valueAt(ExecState *exec, unsigned int index) const;
+ virtual void setValueAt(ExecState *exec, unsigned int index, JSValue aValue) const;
+ virtual JSValue valueAt(ExecState *exec, unsigned int index) const;
virtual unsigned int getLength() const;
ObjectStructPtr getObjcArray() const { return _array.get(); }
- static JSValuePtr convertObjcArrayToArray(ExecState *exec, ObjectStructPtr anObject);
+ static JSValue convertObjcArrayToArray(ExecState *exec, ObjectStructPtr anObject);
private:
RetainPtr<ObjectStructPtr> _array;
@@ -97,22 +97,22 @@ public:
const Identifier& propertyName() const { return _item; }
- static ObjectPrototype* createPrototype(ExecState* exec)
+ static ObjectPrototype* createPrototype(ExecState*, JSGlobalObject* globalObject)
{
- return exec->lexicalGlobalObject()->objectPrototype();
+ return globalObject->objectPrototype();
}
- static PassRefPtr<Structure> createStructure(JSValuePtr prototype)
+ static PassRefPtr<Structure> createStructure(JSValue prototype)
{
return Structure::create(prototype, TypeInfo(ObjectType));
}
private:
virtual bool getOwnPropertySlot(ExecState*, const Identifier&, PropertySlot&);
- virtual void put(ExecState*, const Identifier& propertyName, JSValuePtr, PutPropertySlot&);
+ virtual void put(ExecState*, const Identifier& propertyName, JSValue, PutPropertySlot&);
virtual CallType getCallData(CallData&);
virtual bool deleteProperty(ExecState*, const Identifier& propertyName);
- virtual JSValuePtr defaultValue(ExecState*, PreferredPrimitiveType) const;
+ virtual JSValue defaultValue(ExecState*, PreferredPrimitiveType) const;
virtual bool toBoolean(ExecState*) const;
diff --git a/WebCore/bridge/objc/objc_runtime.mm b/WebCore/bridge/objc/objc_runtime.mm
index 61ec6ed..4169517 100644
--- a/WebCore/bridge/objc/objc_runtime.mm
+++ b/WebCore/bridge/objc/objc_runtime.mm
@@ -90,9 +90,9 @@ ObjcField::ObjcField(CFStringRef name)
{
}
-JSValuePtr ObjcField::valueFromInstance(ExecState* exec, const Instance* instance) const
+JSValue ObjcField::valueFromInstance(ExecState* exec, const Instance* instance) const
{
- JSValuePtr result = jsUndefined();
+ JSValue result = jsUndefined();
id targetObject = (static_cast<const ObjcInstance*>(instance))->getObject();
@@ -109,10 +109,10 @@ JSValuePtr ObjcField::valueFromInstance(ExecState* exec, const Instance* instanc
// Work around problem in some versions of GCC where result gets marked volatile and
// it can't handle copying from a volatile to non-volatile.
- return const_cast<JSValuePtr&>(result);
+ return const_cast<JSValue&>(result);
}
-static id convertValueToObjcObject(ExecState* exec, JSValuePtr value)
+static id convertValueToObjcObject(ExecState* exec, JSValue value)
{
RefPtr<RootObject> rootObject = findRootObject(exec->dynamicGlobalObject());
if (!rootObject)
@@ -120,7 +120,7 @@ static id convertValueToObjcObject(ExecState* exec, JSValuePtr value)
return [webScriptObjectClass() _convertValueToObjcValue:value originRootObject:rootObject.get() rootObject:rootObject.get()];
}
-void ObjcField::setValueToInstance(ExecState* exec, const Instance* instance, JSValuePtr aValue) const
+void ObjcField::setValueToInstance(ExecState* exec, const Instance* instance, JSValue aValue) const
{
id targetObject = (static_cast<const ObjcInstance*>(instance))->getObject();
id value = convertValueToObjcObject(exec, aValue);
@@ -144,7 +144,7 @@ ObjcArray::ObjcArray(ObjectStructPtr a, PassRefPtr<RootObject> rootObject)
{
}
-void ObjcArray::setValueAt(ExecState* exec, unsigned int index, JSValuePtr aValue) const
+void ObjcArray::setValueAt(ExecState* exec, unsigned int index, JSValue aValue) const
{
if (![_array.get() respondsToSelector:@selector(insertObject:atIndex:)]) {
throwError(exec, TypeError, "Array is not mutable.");
@@ -167,7 +167,7 @@ void ObjcArray::setValueAt(ExecState* exec, unsigned int index, JSValuePtr aValu
}
}
-JSValuePtr ObjcArray::valueAt(ExecState* exec, unsigned int index) const
+JSValue ObjcArray::valueAt(ExecState* exec, unsigned int index) const
{
if (index > [_array.get() count])
return throwError(exec, RangeError, "Index exceeds array size.");
@@ -202,16 +202,16 @@ bool ObjcFallbackObjectImp::getOwnPropertySlot(ExecState*, const Identifier&, Pr
return true;
}
-void ObjcFallbackObjectImp::put(ExecState*, const Identifier&, JSValuePtr, PutPropertySlot&)
+void ObjcFallbackObjectImp::put(ExecState*, const Identifier&, JSValue, PutPropertySlot&)
{
}
-static JSValuePtr callObjCFallbackObject(ExecState* exec, JSObject* function, JSValuePtr thisValue, const ArgList& args)
+static JSValue JSC_HOST_CALL callObjCFallbackObject(ExecState* exec, JSObject* function, JSValue thisValue, const ArgList& args)
{
if (!thisValue.isObject(&RuntimeObjectImp::s_info))
return throwError(exec, TypeError);
- JSValuePtr result = jsUndefined();
+ JSValue result = jsUndefined();
RuntimeObjectImp* imp = static_cast<RuntimeObjectImp*>(asObject(thisValue));
Instance* instance = imp->getInternalInstance();
@@ -254,7 +254,7 @@ bool ObjcFallbackObjectImp::deleteProperty(ExecState*, const Identifier&)
return false;
}
-JSValuePtr ObjcFallbackObjectImp::defaultValue(ExecState* exec, PreferredPrimitiveType) const
+JSValue ObjcFallbackObjectImp::defaultValue(ExecState* exec, PreferredPrimitiveType) const
{
return _instance->getValueOfUndefinedField(exec, _item);
}
diff --git a/WebCore/bridge/objc/objc_utility.h b/WebCore/bridge/objc/objc_utility.h
index 35787ea..c34be2a 100644
--- a/WebCore/bridge/objc/objc_utility.h
+++ b/WebCore/bridge/objc/objc_utility.h
@@ -73,9 +73,9 @@ typedef enum {
class RootObject;
-ObjcValue convertValueToObjcValue(ExecState*, JSValuePtr, ObjcValueType);
-JSValuePtr convertNSStringToString(ExecState* exec, NSString *nsstring);
-JSValuePtr convertObjcValueToValue(ExecState*, void* buffer, ObjcValueType, RootObject*);
+ObjcValue convertValueToObjcValue(ExecState*, JSValue, ObjcValueType);
+JSValue convertNSStringToString(ExecState* exec, NSString *nsstring);
+JSValue convertObjcValueToValue(ExecState*, void* buffer, ObjcValueType, RootObject*);
ObjcValueType objcValueTypeForType(const char *type);
bool convertJSMethodNameToObjc(const char *JSName, char *buffer, size_t bufferSize);
diff --git a/WebCore/bridge/objc/objc_utility.mm b/WebCore/bridge/objc/objc_utility.mm
index dbf8c56..501131d 100644
--- a/WebCore/bridge/objc/objc_utility.mm
+++ b/WebCore/bridge/objc/objc_utility.mm
@@ -126,7 +126,7 @@ bool convertJSMethodNameToObjc(const char *JSName, char *buffer, size_t bufferSi
[], other exception
*/
-ObjcValue convertValueToObjcValue(ExecState* exec, JSValuePtr value, ObjcValueType type)
+ObjcValue convertValueToObjcValue(ExecState* exec, JSValue value, ObjcValueType type)
{
ObjcValue result;
double d = 0;
@@ -194,7 +194,7 @@ ObjcValue convertValueToObjcValue(ExecState* exec, JSValuePtr value, ObjcValueTy
return result;
}
-JSValuePtr convertNSStringToString(ExecState* exec, NSString *nsstring)
+JSValue convertNSStringToString(ExecState* exec, NSString *nsstring)
{
JSLock lock(false);
@@ -203,7 +203,7 @@ JSValuePtr convertNSStringToString(ExecState* exec, NSString *nsstring)
chars = (unichar *)malloc(sizeof(unichar)*length);
[nsstring getCharacters:chars];
UString u((const UChar*)chars, length);
- JSValuePtr aValue = jsString(exec, u);
+ JSValue aValue = jsString(exec, u);
free((void *)chars);
return aValue;
}
@@ -226,7 +226,7 @@ JSValuePtr convertNSStringToString(ExecState* exec, NSString *nsstring)
id object wrapper
other should not happen
*/
-JSValuePtr convertObjcValueToValue(ExecState* exec, void* buffer, ObjcValueType type, RootObject* rootObject)
+JSValue convertObjcValueToValue(ExecState* exec, void* buffer, ObjcValueType type, RootObject* rootObject)
{
JSLock lock(false);
diff --git a/WebCore/bridge/qt/qt_class.cpp b/WebCore/bridge/qt/qt_class.cpp
index 3aa218c..c39b3af 100644
--- a/WebCore/bridge/qt/qt_class.cpp
+++ b/WebCore/bridge/qt/qt_class.cpp
@@ -66,7 +66,7 @@ const char* QtClass::name() const
// and not get wrapped in RuntimeMethod). Also, use this for methods,
// so we can cache the object and return the same object for the same
// identifier.
-JSValuePtr QtClass::fallbackObject(ExecState* exec, Instance* inst, const Identifier& identifier)
+JSValue QtClass::fallbackObject(ExecState* exec, Instance* inst, const Identifier& identifier)
{
QtInstance* qtinst = static_cast<QtInstance*>(inst);
diff --git a/WebCore/bridge/qt/qt_class.h b/WebCore/bridge/qt/qt_class.h
index c83bb0f..19d4207 100644
--- a/WebCore/bridge/qt/qt_class.h
+++ b/WebCore/bridge/qt/qt_class.h
@@ -45,7 +45,7 @@ public:
virtual MethodList methodsNamed(const Identifier&, Instance*) const;
virtual Field* fieldNamed(const Identifier&, Instance*) const;
- virtual JSValuePtr fallbackObject(ExecState*, Instance*, const Identifier&);
+ virtual JSValue fallbackObject(ExecState*, Instance*, const Identifier&);
private:
QtClass(const QtClass&); // prohibit copying
diff --git a/WebCore/bridge/qt/qt_instance.cpp b/WebCore/bridge/qt/qt_instance.cpp
index d2a9cc6..60cf16f 100644
--- a/WebCore/bridge/qt/qt_instance.cpp
+++ b/WebCore/bridge/qt/qt_instance.cpp
@@ -158,7 +158,7 @@ bool QtInstance::getOwnPropertySlot(JSObject* object, ExecState* exec, const Ide
return object->JSObject::getOwnPropertySlot(exec, propertyName, slot);
}
-void QtInstance::put(JSObject* object, ExecState* exec, const Identifier& propertyName, JSValuePtr value, PutPropertySlot& slot)
+void QtInstance::put(JSObject* object, ExecState* exec, const Identifier& propertyName, JSValue value, PutPropertySlot& slot)
{
object->JSObject::put(exec, propertyName, value, slot);
}
@@ -199,7 +199,7 @@ void QtInstance::mark()
if (val && !val->marked())
val->mark();
}
- foreach(JSValuePtr val, m_children.values()) {
+ foreach(JSValue val, m_children.values()) {
if (val && !val.marked())
val.mark();
}
@@ -247,14 +247,14 @@ void QtInstance::getPropertyNames(ExecState* exec, PropertyNameArray& array)
}
}
-JSValuePtr QtInstance::invokeMethod(ExecState*, const MethodList&, const ArgList&)
+JSValue QtInstance::invokeMethod(ExecState*, const MethodList&, const ArgList&)
{
// Implemented via fallbackMethod & QtRuntimeMetaMethod::callAsFunction
return jsUndefined();
}
-JSValuePtr QtInstance::defaultValue(ExecState* exec, PreferredPrimitiveType hint) const
+JSValue QtInstance::defaultValue(ExecState* exec, PreferredPrimitiveType hint) const
{
if (hint == PreferString)
return stringValue(exec);
@@ -263,7 +263,7 @@ JSValuePtr QtInstance::defaultValue(ExecState* exec, PreferredPrimitiveType hint
return valueOf(exec);
}
-JSValuePtr QtInstance::stringValue(ExecState* exec) const
+JSValue QtInstance::stringValue(ExecState* exec) const
{
// Hmm.. see if there is a toString defined
QByteArray buf;
@@ -307,25 +307,25 @@ JSValuePtr QtInstance::stringValue(ExecState* exec) const
return jsString(exec, buf.constData());
}
-JSValuePtr QtInstance::numberValue(ExecState* exec) const
+JSValue QtInstance::numberValue(ExecState* exec) const
{
return jsNumber(exec, 0);
}
-JSValuePtr QtInstance::booleanValue() const
+JSValue QtInstance::booleanValue() const
{
// ECMA 9.2
return jsBoolean(true);
}
-JSValuePtr QtInstance::valueOf(ExecState* exec) const
+JSValue QtInstance::valueOf(ExecState* exec) const
{
return stringValue(exec);
}
// In qt_runtime.cpp
-JSValuePtr convertQVariantToValue(ExecState*, PassRefPtr<RootObject> root, const QVariant& variant);
-QVariant convertValueToQVariant(ExecState*, JSValuePtr, QMetaType::Type hint, int *distance);
+JSValue convertQVariantToValue(ExecState*, PassRefPtr<RootObject> root, const QVariant& variant);
+QVariant convertValueToQVariant(ExecState*, JSValue, QMetaType::Type hint, int *distance);
const char* QtField::name() const
{
@@ -338,7 +338,7 @@ const char* QtField::name() const
return ""; // deleted child object
}
-JSValuePtr QtField::valueFromInstance(ExecState* exec, const Instance* inst) const
+JSValue QtField::valueFromInstance(ExecState* exec, const Instance* inst) const
{
const QtInstance* instance = static_cast<const QtInstance*>(inst);
QObject* obj = instance->getObject();
@@ -355,7 +355,7 @@ JSValuePtr QtField::valueFromInstance(ExecState* exec, const Instance* inst) con
else if (m_type == DynamicProperty)
val = obj->property(m_dynamicProperty);
- JSValuePtr ret = convertQVariantToValue(exec, inst->rootObject(), val);
+ JSValue ret = convertQVariantToValue(exec, inst->rootObject(), val);
// Need to save children so we can mark them
if (m_type == ChildObject)
@@ -368,7 +368,7 @@ JSValuePtr QtField::valueFromInstance(ExecState* exec, const Instance* inst) con
}
}
-void QtField::setValueToInstance(ExecState* exec, const Instance* inst, JSValuePtr aValue) const
+void QtField::setValueToInstance(ExecState* exec, const Instance* inst, JSValue aValue) const
{
if (m_type == ChildObject) // QtScript doesn't allow setting to a named child
return;
diff --git a/WebCore/bridge/qt/qt_instance.h b/WebCore/bridge/qt/qt_instance.h
index 526adb4..590fadf 100644
--- a/WebCore/bridge/qt/qt_instance.h
+++ b/WebCore/bridge/qt/qt_instance.h
@@ -45,25 +45,25 @@ public:
virtual void begin();
virtual void end();
- virtual JSValuePtr valueOf(ExecState*) const;
- virtual JSValuePtr defaultValue(ExecState*, PreferredPrimitiveType) const;
+ virtual JSValue valueOf(ExecState*) const;
+ virtual JSValue defaultValue(ExecState*, PreferredPrimitiveType) const;
virtual void mark(); // This isn't inherited
- virtual JSValuePtr invokeMethod(ExecState*, const MethodList&, const ArgList&);
+ virtual JSValue invokeMethod(ExecState*, const MethodList&, const ArgList&);
virtual void getPropertyNames(ExecState*, PropertyNameArray&);
- JSValuePtr stringValue(ExecState* exec) const;
- JSValuePtr numberValue(ExecState* exec) const;
- JSValuePtr booleanValue() const;
+ JSValue stringValue(ExecState* exec) const;
+ JSValue numberValue(ExecState* exec) const;
+ JSValue booleanValue() const;
QObject* getObject() const { return m_object; }
static PassRefPtr<QtInstance> getQtInstance(QObject*, PassRefPtr<RootObject>, QScriptEngine::ValueOwnership ownership);
virtual bool getOwnPropertySlot(JSObject*, ExecState*, const Identifier&, PropertySlot&);
- virtual void put(JSObject*, ExecState*, const Identifier&, JSValuePtr, PutPropertySlot&);
+ virtual void put(JSObject*, ExecState*, const Identifier&, JSValue, PutPropertySlot&);
static QtInstance* getInstance(JSObject*);
@@ -81,7 +81,7 @@ private:
QObject* m_hashkey;
mutable QHash<QByteArray, JSObject*> m_methods;
mutable QHash<QString, QtField*> m_fields;
- mutable QSet<JSValuePtr> m_children;
+ mutable QSet<JSValue> m_children;
mutable QtRuntimeMetaMethod* m_defaultMethod;
QScriptEngine::ValueOwnership m_ownership;
};
diff --git a/WebCore/bridge/qt/qt_runtime.cpp b/WebCore/bridge/qt/qt_runtime.cpp
index 31b343e..161e570 100644
--- a/WebCore/bridge/qt/qt_runtime.cpp
+++ b/WebCore/bridge/qt/qt_runtime.cpp
@@ -113,7 +113,7 @@ QDebug operator<<(QDebug dbg, const JSRealType &c)
}
#endif
-static JSRealType valueRealType(ExecState* exec, JSValuePtr val)
+static JSRealType valueRealType(ExecState* exec, JSValue val)
{
if (val.isNumber())
return Number;
@@ -143,8 +143,11 @@ static JSRealType valueRealType(ExecState* exec, JSValuePtr val)
return String; // I don't know.
}
-QVariant convertValueToQVariant(ExecState* exec, JSValuePtr value, QMetaType::Type hint, int *distance, HashSet<JSObject*>* visitedObjects)
+QVariant convertValueToQVariant(ExecState* exec, JSValue value, QMetaType::Type hint, int *distance, HashSet<JSObject*>* visitedObjects)
{
+ if (!value)
+ return QVariant();
+
JSObject* object = 0;
if (value.isObject()) {
object = value.toObject(exec);
@@ -321,7 +324,7 @@ QVariant convertValueToQVariant(ExecState* exec, JSValuePtr value, QMetaType::Ty
int objdist = 0;
while(it != properties.end()) {
if (object->propertyIsEnumerable(exec, *it)) {
- JSValuePtr val = object->get(exec, *it);
+ JSValue val = object->get(exec, *it);
QVariant v = convertValueToQVariant(exec, val, QMetaType::Void, &objdist, visitedObjects);
if (objdist >= 0) {
UString ustring = (*it).ustring();
@@ -345,7 +348,7 @@ QVariant convertValueToQVariant(ExecState* exec, JSValuePtr value, QMetaType::Ty
int objdist = 0;
qConvDebug() << "converting a " << len << " length Array";
for (int i = 0; i < len; ++i) {
- JSValuePtr val = rtarray->getConcreteArray()->valueAt(exec, i);
+ JSValue val = rtarray->getConcreteArray()->valueAt(exec, i);
result.append(convertValueToQVariant(exec, val, QMetaType::Void, &objdist, visitedObjects));
if (objdist == -1) {
qConvDebug() << "Failed converting element at index " << i;
@@ -364,7 +367,7 @@ QVariant convertValueToQVariant(ExecState* exec, JSValuePtr value, QMetaType::Ty
int objdist = 0;
qConvDebug() << "converting a " << len << " length Array";
for (int i = 0; i < len; ++i) {
- JSValuePtr val = array->get(exec, i);
+ JSValue val = array->get(exec, i);
result.append(convertValueToQVariant(exec, val, QMetaType::Void, &objdist, visitedObjects));
if (objdist == -1) {
qConvDebug() << "Failed converting element at index " << i;
@@ -398,7 +401,7 @@ QVariant convertValueToQVariant(ExecState* exec, JSValuePtr value, QMetaType::Ty
QStringList result;
int len = rtarray->getLength();
for (int i = 0; i < len; ++i) {
- JSValuePtr val = rtarray->getConcreteArray()->valueAt(exec, i);
+ JSValue val = rtarray->getConcreteArray()->valueAt(exec, i);
UString ustring = val.toString(exec);
QString qstring = QString::fromUtf16((const ushort*)ustring.rep()->data(),ustring.size());
@@ -412,7 +415,7 @@ QVariant convertValueToQVariant(ExecState* exec, JSValuePtr value, QMetaType::Ty
QStringList result;
int len = array->length();
for (int i = 0; i < len; ++i) {
- JSValuePtr val = array->get(exec, i);
+ JSValue val = array->get(exec, i);
UString ustring = val.toString(exec);
QString qstring = QString::fromUtf16((const ushort*)ustring.rep()->data(),ustring.size());
@@ -453,7 +456,7 @@ QVariant convertValueToQVariant(ExecState* exec, JSValuePtr value, QMetaType::Ty
case QMetaType::QTime:
if (type == Date) {
DateInstance* date = static_cast<DateInstance*>(object);
- GregorianDateTime gdt;
+ WTF::GregorianDateTime gdt;
date->getUTCTime(gdt);
if (hint == QMetaType::QDateTime) {
ret = QDateTime(QDate(gdt.year + 1900, gdt.month + 1, gdt.monthDay), QTime(gdt.hour, gdt.minute, gdt.second), Qt::UTC);
@@ -467,7 +470,7 @@ QVariant convertValueToQVariant(ExecState* exec, JSValuePtr value, QMetaType::Ty
}
} else if (type == Number) {
double b = value.toNumber(exec);
- GregorianDateTime gdt;
+ WTF::GregorianDateTime gdt;
msToGregorianDateTime(b, true, gdt);
if (hint == QMetaType::QDateTime) {
ret = QDateTime(QDate(gdt.year + 1900, gdt.month + 1, gdt.monthDay), QTime(gdt.hour, gdt.minute, gdt.second), Qt::UTC);
@@ -621,7 +624,7 @@ QVariant convertValueToQVariant(ExecState* exec, JSValuePtr value, QMetaType::Ty
QObjectList result;
int len = rtarray->getLength();
for (int i = 0; i < len; ++i) {
- JSValuePtr val = rtarray->getConcreteArray()->valueAt(exec, i);
+ JSValue val = rtarray->getConcreteArray()->valueAt(exec, i);
int itemdist = -1;
QVariant item = convertValueToQVariant(exec, val, QMetaType::QObjectStar, &itemdist, visitedObjects);
if (itemdist >= 0)
@@ -640,7 +643,7 @@ QVariant convertValueToQVariant(ExecState* exec, JSValuePtr value, QMetaType::Ty
QObjectList result;
int len = array->length();
for (int i = 0; i < len; ++i) {
- JSValuePtr val = array->get(exec, i);
+ JSValue val = array->get(exec, i);
int itemdist = -1;
QVariant item = convertValueToQVariant(exec, val, QMetaType::QObjectStar, &itemdist, visitedObjects);
if (itemdist >= 0)
@@ -672,7 +675,7 @@ QVariant convertValueToQVariant(ExecState* exec, JSValuePtr value, QMetaType::Ty
QList<int> result;
int len = rtarray->getLength();
for (int i = 0; i < len; ++i) {
- JSValuePtr val = rtarray->getConcreteArray()->valueAt(exec, i);
+ JSValue val = rtarray->getConcreteArray()->valueAt(exec, i);
int itemdist = -1;
QVariant item = convertValueToQVariant(exec, val, QMetaType::Int, &itemdist, visitedObjects);
if (itemdist >= 0)
@@ -691,7 +694,7 @@ QVariant convertValueToQVariant(ExecState* exec, JSValuePtr value, QMetaType::Ty
QList<int> result;
int len = array->length();
for (int i = 0; i < len; ++i) {
- JSValuePtr val = array->get(exec, i);
+ JSValue val = array->get(exec, i);
int itemdist = -1;
QVariant item = convertValueToQVariant(exec, val, QMetaType::Int, &itemdist, visitedObjects);
if (itemdist >= 0)
@@ -746,13 +749,13 @@ QVariant convertValueToQVariant(ExecState* exec, JSValuePtr value, QMetaType::Ty
return ret;
}
-QVariant convertValueToQVariant(ExecState* exec, JSValuePtr value, QMetaType::Type hint, int *distance)
+QVariant convertValueToQVariant(ExecState* exec, JSValue value, QMetaType::Type hint, int *distance)
{
HashSet<JSObject*> visitedObjects;
return convertValueToQVariant(exec, value, hint, distance, &visitedObjects);
}
-JSValuePtr convertQVariantToValue(ExecState* exec, PassRefPtr<RootObject> root, const QVariant& variant)
+JSValue convertQVariantToValue(ExecState* exec, PassRefPtr<RootObject> root, const QVariant& variant)
{
// Variants with QObject * can be isNull but not a null pointer
// An empty QString variant is also null
@@ -820,7 +823,7 @@ JSValuePtr convertQVariantToValue(ExecState* exec, PassRefPtr<RootObject> root,
}
// Dates specified this way are in local time (we convert DateTimes above)
- GregorianDateTime dt;
+ WTF::GregorianDateTime dt;
dt.year = date.year() - 1900;
dt.month = date.month() - 1;
dt.monthDay = date.day();
@@ -828,7 +831,7 @@ JSValuePtr convertQVariantToValue(ExecState* exec, PassRefPtr<RootObject> root,
dt.minute = time.minute();
dt.second = time.second();
dt.isDST = -1;
- double ms = JSC::gregorianDateTimeToMS(dt, time.msec(), /*inputIsUTC*/ false);
+ double ms = WTF::gregorianDateTimeToMS(dt, time.msec(), /*inputIsUTC*/ false);
DateInstance* instance = new (exec) DateInstance(exec->lexicalGlobalObject()->dateStructure());
instance->setInternalValue(jsNumber(exec, trunc(ms)));
@@ -854,7 +857,7 @@ JSValuePtr convertQVariantToValue(ExecState* exec, PassRefPtr<RootObject> root,
QVariantMap::const_iterator i = map.constBegin();
while (i != map.constEnd()) {
QString s = i.key();
- JSValuePtr val = convertQVariantToValue(exec, root, i.value());
+ JSValue val = convertQVariantToValue(exec, root, i.value());
if (val) {
PutPropertySlot slot;
ret->put(exec, Identifier(exec, (const UChar *)s.constData(), s.length()), val, slot);
@@ -1181,7 +1184,7 @@ static int findMethodIndex(ExecState* exec,
bool converted = true;
int matchDistance = 0;
for (int i = 0; converted && i < types.count() - 1; ++i) {
- JSValuePtr arg = i < jsArgs.size() ? jsArgs.at(exec, i) : jsUndefined();
+ JSValue arg = i < jsArgs.size() ? jsArgs.at(i) : jsUndefined();
int argdistance = -1;
QVariant v = convertValueToQVariant(exec, arg, types.at(i+1).typeId(), &argdistance);
@@ -1333,7 +1336,7 @@ void QtRuntimeMetaMethod::mark()
d->m_disconnect->mark();
}
-JSValuePtr QtRuntimeMetaMethod::call(ExecState* exec, JSObject* functionObject, JSValuePtr thisValue, const ArgList& args)
+JSValue QtRuntimeMetaMethod::call(ExecState* exec, JSObject* functionObject, JSValue thisValue, const ArgList& args)
{
QtRuntimeMetaMethodData* d = static_cast<QtRuntimeMetaMethod *>(functionObject)->d_func();
@@ -1391,13 +1394,13 @@ bool QtRuntimeMetaMethod::getOwnPropertySlot(ExecState* exec, const Identifier&
return QtRuntimeMethod::getOwnPropertySlot(exec, propertyName, slot);
}
-JSValuePtr QtRuntimeMetaMethod::lengthGetter(ExecState* exec, const Identifier&, const PropertySlot&)
+JSValue QtRuntimeMetaMethod::lengthGetter(ExecState* exec, const Identifier&, const PropertySlot&)
{
// QtScript always returns 0
return jsNumber(exec, 0);
}
-JSValuePtr QtRuntimeMetaMethod::connectGetter(ExecState* exec, const Identifier& ident, const PropertySlot& slot)
+JSValue QtRuntimeMetaMethod::connectGetter(ExecState* exec, const Identifier& ident, const PropertySlot& slot)
{
QtRuntimeMetaMethod* thisObj = static_cast<QtRuntimeMetaMethod*>(asObject(slot.slotBase()));
QW_DS(QtRuntimeMetaMethod, thisObj);
@@ -1407,7 +1410,7 @@ JSValuePtr QtRuntimeMetaMethod::connectGetter(ExecState* exec, const Identifier&
return d->m_connect;
}
-JSValuePtr QtRuntimeMetaMethod::disconnectGetter(ExecState* exec, const Identifier& ident, const PropertySlot& slot)
+JSValue QtRuntimeMetaMethod::disconnectGetter(ExecState* exec, const Identifier& ident, const PropertySlot& slot)
{
QtRuntimeMetaMethod* thisObj = static_cast<QtRuntimeMetaMethod*>(asObject(slot.slotBase()));
QW_DS(QtRuntimeMetaMethod, thisObj);
@@ -1431,7 +1434,7 @@ QtRuntimeConnectionMethod::QtRuntimeConnectionMethod(ExecState* exec, const Iden
d->m_isConnect = isConnect;
}
-JSValuePtr QtRuntimeConnectionMethod::call(ExecState* exec, JSObject* functionObject, JSValuePtr thisValue, const ArgList& args)
+JSValue QtRuntimeConnectionMethod::call(ExecState* exec, JSObject* functionObject, JSValue thisValue, const ArgList& args)
{
QtRuntimeConnectionMethodData* d = static_cast<QtRuntimeConnectionMethod *>(functionObject)->d_func();
@@ -1454,7 +1457,7 @@ JSValuePtr QtRuntimeConnectionMethod::call(ExecState* exec, JSObject* functionOb
if (signalIndex != -1) {
if (args.size() == 1) {
- funcObject = args.at(exec, 0).toObject(exec);
+ funcObject = args.at(0).toObject(exec);
CallData callData;
if (funcObject->getCallData(callData) == CallTypeNone) {
if (d->m_isConnect)
@@ -1463,23 +1466,23 @@ JSValuePtr QtRuntimeConnectionMethod::call(ExecState* exec, JSObject* functionOb
return throwError(exec, TypeError, "QtMetaMethod.disconnect: target is not a function");
}
} else if (args.size() >= 2) {
- if (args.at(exec, 0).isObject()) {
- thisObject = args.at(exec, 0).toObject(exec);
+ if (args.at(0).isObject()) {
+ thisObject = args.at(0).toObject(exec);
// Get the actual function to call
- JSObject *asObj = args.at(exec, 1).toObject(exec);
+ JSObject *asObj = args.at(1).toObject(exec);
CallData callData;
if (asObj->getCallData(callData) != CallTypeNone) {
// Function version
funcObject = asObj;
} else {
// Convert it to a string
- UString funcName = args.at(exec, 1).toString(exec);
+ UString funcName = args.at(1).toString(exec);
Identifier funcIdent(exec, funcName);
// ### DropAllLocks
// This is resolved at this point in QtScript
- JSValuePtr val = thisObject->get(exec, funcIdent);
+ JSValue val = thisObject->get(exec, funcIdent);
JSObject* asFuncObj = val.toObject(exec);
if (asFuncObj->getCallData(callData) != CallTypeNone) {
@@ -1577,7 +1580,7 @@ bool QtRuntimeConnectionMethod::getOwnPropertySlot(ExecState* exec, const Identi
return QtRuntimeMethod::getOwnPropertySlot(exec, propertyName, slot);
}
-JSValuePtr QtRuntimeConnectionMethod::lengthGetter(ExecState* exec, const Identifier&, const PropertySlot&)
+JSValue QtRuntimeConnectionMethod::lengthGetter(ExecState* exec, const Identifier&, const PropertySlot&)
{
// we have one formal argument, and one optional
return jsNumber(exec, 1);
@@ -1675,7 +1678,7 @@ void QtConnectionObject::execute(void **argv)
ExecState* exec = globalobj->globalExec();
if (exec) {
// Build the argument list (up to the formal argument length of the slot)
- ArgList l;
+ MarkedArgumentBuffer l;
// ### DropAllLocks?
int funcArgC = m_funcObject->get(exec, exec->propertyNames().length).toInt32(exec);
int argTotal = qMax(funcArgC, argc);
@@ -1743,7 +1746,7 @@ template <typename T> RootObject* QtArray<T>::rootObject() const
return _rootObject && _rootObject->isValid() ? _rootObject.get() : 0;
}
-template <typename T> void QtArray<T>::setValueAt(ExecState* exec, unsigned index, JSValuePtr aValue) const
+template <typename T> void QtArray<T>::setValueAt(ExecState* exec, unsigned index, JSValue aValue) const
{
// QtScript sets the value, but doesn't forward it to the original source
// (e.g. if you do 'object.intList[5] = 6', the object is not updated, but the
@@ -1757,7 +1760,7 @@ template <typename T> void QtArray<T>::setValueAt(ExecState* exec, unsigned inde
}
-template <typename T> JSValuePtr QtArray<T>::valueAt(ExecState *exec, unsigned int index) const
+template <typename T> JSValue QtArray<T>::valueAt(ExecState *exec, unsigned int index) const
{
if (index < m_length) {
T val = m_list.at(index);
diff --git a/WebCore/bridge/qt/qt_runtime.h b/WebCore/bridge/qt/qt_runtime.h
index 7912a2b..72d93eb 100644
--- a/WebCore/bridge/qt/qt_runtime.h
+++ b/WebCore/bridge/qt/qt_runtime.h
@@ -56,8 +56,8 @@ public:
: m_type(ChildObject), m_childObject(child)
{}
- virtual JSValuePtr valueFromInstance(ExecState*, const Instance*) const;
- virtual void setValueToInstance(ExecState*, const Instance*, JSValuePtr) const;
+ virtual JSValue valueFromInstance(ExecState*, const Instance*) const;
+ virtual void setValueToInstance(ExecState*, const Instance*, JSValue) const;
virtual const char* name() const;
QtFieldType fieldType() const {return m_type;}
private:
@@ -98,8 +98,8 @@ public:
RootObject* rootObject() const;
- virtual void setValueAt(ExecState*, unsigned index, JSValuePtr) const;
- virtual JSValuePtr valueAt(ExecState*, unsigned index) const;
+ virtual void setValueAt(ExecState*, unsigned index, JSValue) const;
+ virtual JSValue valueAt(ExecState*, unsigned index) const;
virtual unsigned int getLength() const {return m_length;}
private:
@@ -144,12 +144,12 @@ public:
static const ClassInfo s_info;
- static FunctionPrototype* createPrototype(ExecState* exec)
+ static FunctionPrototype* createPrototype(ExecState*, JSGlobalObject* globalObject)
{
- return exec->lexicalGlobalObject()->functionPrototype();
+ return globalObject->functionPrototype();
}
- static PassRefPtr<Structure> createStructure(JSValuePtr prototype)
+ static PassRefPtr<Structure> createStructure(JSValue prototype)
{
return Structure::create(prototype, TypeInfo(ObjectType));
}
@@ -174,10 +174,10 @@ protected:
private:
virtual CallType getCallData(CallData&);
- static JSValuePtr call(ExecState* exec, JSObject* functionObject, JSValuePtr thisValue, const ArgList& args);
- static JSValuePtr lengthGetter(ExecState*, const Identifier&, const PropertySlot&);
- static JSValuePtr connectGetter(ExecState*, const Identifier&, const PropertySlot&);
- static JSValuePtr disconnectGetter(ExecState*, const Identifier&, const PropertySlot&);
+ static JSValue JSC_HOST_CALL call(ExecState* exec, JSObject* functionObject, JSValue thisValue, const ArgList& args);
+ static JSValue lengthGetter(ExecState*, const Identifier&, const PropertySlot&);
+ static JSValue connectGetter(ExecState*, const Identifier&, const PropertySlot&);
+ static JSValue disconnectGetter(ExecState*, const Identifier&, const PropertySlot&);
};
class QtConnectionObject;
@@ -193,8 +193,8 @@ protected:
private:
virtual CallType getCallData(CallData&);
- static JSValuePtr call(ExecState* exec, JSObject* functionObject, JSValuePtr thisValue, const ArgList& args);
- static JSValuePtr lengthGetter(ExecState*, const Identifier&, const PropertySlot&);
+ static JSValue JSC_HOST_CALL call(ExecState* exec, JSObject* functionObject, JSValue thisValue, const ArgList& args);
+ static JSValue lengthGetter(ExecState*, const Identifier&, const PropertySlot&);
static QMultiMap<QObject *, QtConnectionObject *> connections;
friend class QtConnectionObject;
};
@@ -223,7 +223,8 @@ private:
ProtectedPtr<JSObject> m_funcObject;
};
-QVariant convertValueToQVariant(ExecState* exec, JSValuePtr value, QMetaType::Type hint, int *distance);
+QVariant convertValueToQVariant(ExecState* exec, JSValue value, QMetaType::Type hint, int *distance);
+JSValue convertQVariantToValue(ExecState* exec, PassRefPtr<RootObject> root, const QVariant& variant);
} // namespace Bindings
} // namespace JSC
diff --git a/WebCore/bridge/runtime.h b/WebCore/bridge/runtime.h
index 8adfbe1..72736d4 100644
--- a/WebCore/bridge/runtime.h
+++ b/WebCore/bridge/runtime.h
@@ -49,8 +49,8 @@ typedef Vector<Method*> MethodList;
class Field {
public:
- virtual JSValuePtr valueFromInstance(ExecState*, const Instance*) const = 0;
- virtual void setValueToInstance(ExecState*, const Instance*, JSValuePtr) const = 0;
+ virtual JSValue valueFromInstance(ExecState*, const Instance*) const = 0;
+ virtual void setValueToInstance(ExecState*, const Instance*, JSValue) const = 0;
virtual ~Field() { }
};
@@ -66,7 +66,7 @@ class Class : Noncopyable {
public:
virtual MethodList methodsNamed(const Identifier&, Instance*) const = 0;
virtual Field* fieldNamed(const Identifier&, Instance*) const = 0;
- virtual JSValuePtr fallbackObject(ExecState*, Instance*, const Identifier&) { return jsUndefined(); }
+ virtual JSValue fallbackObject(ExecState*, Instance*, const Identifier&) { return jsUndefined(); }
virtual ~Class() { }
};
@@ -90,28 +90,28 @@ public:
virtual RuntimeObjectImp* createRuntimeObject(ExecState*);
// Returns false if the value was not set successfully.
- virtual bool setValueOfUndefinedField(ExecState*, const Identifier&, JSValuePtr) { return false; }
+ virtual bool setValueOfUndefinedField(ExecState*, const Identifier&, JSValue) { return false; }
- virtual JSValuePtr invokeMethod(ExecState*, const MethodList&, const ArgList& args) = 0;
+ virtual JSValue invokeMethod(ExecState*, const MethodList&, const ArgList& args) = 0;
virtual bool supportsInvokeDefaultMethod() const { return false; }
- virtual JSValuePtr invokeDefaultMethod(ExecState*, const ArgList&) { return jsUndefined(); }
+ virtual JSValue invokeDefaultMethod(ExecState*, const ArgList&) { return jsUndefined(); }
virtual bool supportsConstruct() const { return false; }
- virtual JSValuePtr invokeConstruct(ExecState*, const ArgList&) { return noValue(); }
+ virtual JSValue invokeConstruct(ExecState*, const ArgList&) { return JSValue(); }
virtual void getPropertyNames(ExecState*, PropertyNameArray&) { }
- virtual JSValuePtr defaultValue(ExecState*, PreferredPrimitiveType) const = 0;
+ virtual JSValue defaultValue(ExecState*, PreferredPrimitiveType) const = 0;
- virtual JSValuePtr valueOf(ExecState* exec) const = 0;
+ virtual JSValue valueOf(ExecState* exec) const = 0;
RootObject* rootObject() const;
virtual ~Instance();
virtual bool getOwnPropertySlot(JSObject*, ExecState*, const Identifier&, PropertySlot&) { return false; }
- virtual void put(JSObject*, ExecState*, const Identifier&, JSValuePtr, PutPropertySlot&) { }
+ virtual void put(JSObject*, ExecState*, const Identifier&, JSValue, PutPropertySlot&) { }
protected:
virtual void virtualBegin() { }
@@ -125,8 +125,8 @@ public:
Array(PassRefPtr<RootObject>);
virtual ~Array();
- virtual void setValueAt(ExecState *, unsigned index, JSValuePtr) const = 0;
- virtual JSValuePtr valueAt(ExecState *, unsigned index) const = 0;
+ virtual void setValueAt(ExecState *, unsigned index, JSValue) const = 0;
+ virtual JSValue valueAt(ExecState *, unsigned index) const = 0;
virtual unsigned int getLength() const = 0;
protected:
diff --git a/WebCore/bridge/runtime_array.cpp b/WebCore/bridge/runtime_array.cpp
index 1979432..fead83a 100644
--- a/WebCore/bridge/runtime_array.cpp
+++ b/WebCore/bridge/runtime_array.cpp
@@ -42,13 +42,13 @@ RuntimeArray::RuntimeArray(ExecState* exec, Bindings::Array* a)
{
}
-JSValuePtr RuntimeArray::lengthGetter(ExecState* exec, const Identifier&, const PropertySlot& slot)
+JSValue RuntimeArray::lengthGetter(ExecState* exec, const Identifier&, const PropertySlot& slot)
{
RuntimeArray* thisObj = static_cast<RuntimeArray*>(asObject(slot.slotBase()));
return jsNumber(exec, thisObj->getLength());
}
-JSValuePtr RuntimeArray::indexGetter(ExecState* exec, const Identifier&, const PropertySlot& slot)
+JSValue RuntimeArray::indexGetter(ExecState* exec, const Identifier&, const PropertySlot& slot)
{
RuntimeArray* thisObj = static_cast<RuntimeArray*>(asObject(slot.slotBase()));
return thisObj->getConcreteArray()->valueAt(exec, slot.index());
@@ -83,7 +83,7 @@ bool RuntimeArray::getOwnPropertySlot(ExecState *exec, unsigned index, PropertyS
return JSObject::getOwnPropertySlot(exec, index, slot);
}
-void RuntimeArray::put(ExecState* exec, const Identifier& propertyName, JSValuePtr value, PutPropertySlot& slot)
+void RuntimeArray::put(ExecState* exec, const Identifier& propertyName, JSValue value, PutPropertySlot& slot)
{
if (propertyName == exec->propertyNames().length) {
throwError(exec, RangeError);
@@ -100,7 +100,7 @@ void RuntimeArray::put(ExecState* exec, const Identifier& propertyName, JSValueP
JSObject::put(exec, propertyName, value, slot);
}
-void RuntimeArray::put(ExecState* exec, unsigned index, JSValuePtr value)
+void RuntimeArray::put(ExecState* exec, unsigned index, JSValue value)
{
if (index >= getLength()) {
throwError(exec, RangeError);
diff --git a/WebCore/bridge/runtime_array.h b/WebCore/bridge/runtime_array.h
index 1ea47a4..5a86e9d 100644
--- a/WebCore/bridge/runtime_array.h
+++ b/WebCore/bridge/runtime_array.h
@@ -37,8 +37,8 @@ public:
virtual bool getOwnPropertySlot(ExecState *, const Identifier&, PropertySlot&);
virtual bool getOwnPropertySlot(ExecState *, unsigned, PropertySlot&);
- virtual void put(ExecState*, const Identifier& propertyName, JSValuePtr, PutPropertySlot&);
- virtual void put(ExecState*, unsigned propertyName, JSValuePtr);
+ virtual void put(ExecState*, const Identifier& propertyName, JSValue, PutPropertySlot&);
+ virtual void put(ExecState*, unsigned propertyName, JSValue);
virtual bool deleteProperty(ExecState *exec, const Identifier &propertyName);
virtual bool deleteProperty(ExecState *exec, unsigned propertyName);
@@ -51,19 +51,19 @@ public:
static const ClassInfo s_info;
- static ArrayPrototype* createPrototype(ExecState* exec)
+ static ArrayPrototype* createPrototype(ExecState*, JSGlobalObject* globalObject)
{
- return exec->lexicalGlobalObject()->arrayPrototype();
+ return globalObject->arrayPrototype();
}
- static PassRefPtr<Structure> createStructure(JSValuePtr prototype)
+ static PassRefPtr<Structure> createStructure(JSValue prototype)
{
return Structure::create(prototype, TypeInfo(ObjectType));
}
private:
- static JSValuePtr lengthGetter(ExecState*, const Identifier&, const PropertySlot&);
- static JSValuePtr indexGetter(ExecState*, const Identifier&, const PropertySlot&);
+ static JSValue lengthGetter(ExecState*, const Identifier&, const PropertySlot&);
+ static JSValue indexGetter(ExecState*, const Identifier&, const PropertySlot&);
OwnPtr<Bindings::Array> _array;
};
diff --git a/WebCore/bridge/runtime_method.cpp b/WebCore/bridge/runtime_method.cpp
index eb0fae4..30a3581 100644
--- a/WebCore/bridge/runtime_method.cpp
+++ b/WebCore/bridge/runtime_method.cpp
@@ -47,7 +47,7 @@ RuntimeMethod::RuntimeMethod(ExecState* exec, const Identifier& ident, Bindings:
{
}
-JSValuePtr RuntimeMethod::lengthGetter(ExecState* exec, const Identifier&, const PropertySlot& slot)
+JSValue RuntimeMethod::lengthGetter(ExecState* exec, const Identifier&, const PropertySlot& slot)
{
RuntimeMethod* thisObj = static_cast<RuntimeMethod*>(asObject(slot.slotBase()));
@@ -70,7 +70,7 @@ bool RuntimeMethod::getOwnPropertySlot(ExecState* exec, const Identifier& proper
return InternalFunction::getOwnPropertySlot(exec, propertyName, slot);
}
-static JSValuePtr callRuntimeMethod(ExecState* exec, JSObject* function, JSValuePtr thisValue, const ArgList& args)
+static JSValue JSC_HOST_CALL callRuntimeMethod(ExecState* exec, JSObject* function, JSValue thisValue, const ArgList& args)
{
RuntimeMethod* method = static_cast<RuntimeMethod*>(function);
@@ -84,7 +84,7 @@ static JSValuePtr callRuntimeMethod(ExecState* exec, JSObject* function, JSValue
} else {
// If thisObj is the DOM object for a plugin, get the corresponding
// runtime object from the DOM object.
- JSValuePtr value = thisValue.get(exec, Identifier(exec, "__apple_runtime_object"));
+ JSValue value = thisValue.get(exec, Identifier(exec, "__apple_runtime_object"));
if (value.isObject(&RuntimeObjectImp::s_info))
imp = static_cast<RuntimeObjectImp*>(asObject(value));
else
@@ -96,7 +96,7 @@ static JSValuePtr callRuntimeMethod(ExecState* exec, JSObject* function, JSValue
return RuntimeObjectImp::throwInvalidAccessError(exec);
instance->begin();
- JSValuePtr result = instance->invokeMethod(exec, *method->methods(), args);
+ JSValue result = instance->invokeMethod(exec, *method->methods(), args);
instance->end();
return result;
}
diff --git a/WebCore/bridge/runtime_method.h b/WebCore/bridge/runtime_method.h
index bb983f9..5333c14 100644
--- a/WebCore/bridge/runtime_method.h
+++ b/WebCore/bridge/runtime_method.h
@@ -40,18 +40,18 @@ public:
static const ClassInfo s_info;
- static FunctionPrototype* createPrototype(ExecState* exec)
+ static FunctionPrototype* createPrototype(ExecState*, JSGlobalObject* globalObject)
{
- return exec->lexicalGlobalObject()->functionPrototype();
+ return globalObject->functionPrototype();
}
- static PassRefPtr<Structure> createStructure(JSValuePtr prototype)
+ static PassRefPtr<Structure> createStructure(JSValue prototype)
{
return Structure::create(prototype, TypeInfo(ObjectType, ImplementsHasInstance));
}
private:
- static JSValuePtr lengthGetter(ExecState*, const Identifier&, const PropertySlot&);
+ static JSValue lengthGetter(ExecState*, const Identifier&, const PropertySlot&);
virtual bool getOwnPropertySlot(ExecState*, const Identifier&, PropertySlot&);
virtual CallType getCallData(CallData&);
diff --git a/WebCore/bridge/runtime_object.cpp b/WebCore/bridge/runtime_object.cpp
index 88aa560..79afd3f 100644
--- a/WebCore/bridge/runtime_object.cpp
+++ b/WebCore/bridge/runtime_object.cpp
@@ -66,7 +66,7 @@ void RuntimeObjectImp::invalidate()
instance = 0;
}
-JSValuePtr RuntimeObjectImp::fallbackObjectGetter(ExecState* exec, const Identifier& propertyName, const PropertySlot& slot)
+JSValue RuntimeObjectImp::fallbackObjectGetter(ExecState* exec, const Identifier& propertyName, const PropertySlot& slot)
{
RuntimeObjectImp* thisObj = static_cast<RuntimeObjectImp*>(asObject(slot.slotBase()));
RefPtr<Instance> instance = thisObj->instance;
@@ -77,14 +77,14 @@ JSValuePtr RuntimeObjectImp::fallbackObjectGetter(ExecState* exec, const Identif
instance->begin();
Class *aClass = instance->getClass();
- JSValuePtr result = aClass->fallbackObject(exec, instance.get(), propertyName);
+ JSValue result = aClass->fallbackObject(exec, instance.get(), propertyName);
instance->end();
return result;
}
-JSValuePtr RuntimeObjectImp::fieldGetter(ExecState* exec, const Identifier& propertyName, const PropertySlot& slot)
+JSValue RuntimeObjectImp::fieldGetter(ExecState* exec, const Identifier& propertyName, const PropertySlot& slot)
{
RuntimeObjectImp* thisObj = static_cast<RuntimeObjectImp*>(asObject(slot.slotBase()));
RefPtr<Instance> instance = thisObj->instance;
@@ -96,14 +96,14 @@ JSValuePtr RuntimeObjectImp::fieldGetter(ExecState* exec, const Identifier& prop
Class *aClass = instance->getClass();
Field* aField = aClass->fieldNamed(propertyName, instance.get());
- JSValuePtr result = aField->valueFromInstance(exec, instance.get());
+ JSValue result = aField->valueFromInstance(exec, instance.get());
instance->end();
return result;
}
-JSValuePtr RuntimeObjectImp::methodGetter(ExecState* exec, const Identifier& propertyName, const PropertySlot& slot)
+JSValue RuntimeObjectImp::methodGetter(ExecState* exec, const Identifier& propertyName, const PropertySlot& slot)
{
RuntimeObjectImp* thisObj = static_cast<RuntimeObjectImp*>(asObject(slot.slotBase()));
RefPtr<Instance> instance = thisObj->instance;
@@ -115,7 +115,7 @@ JSValuePtr RuntimeObjectImp::methodGetter(ExecState* exec, const Identifier& pro
Class *aClass = instance->getClass();
MethodList methodList = aClass->methodsNamed(propertyName, instance.get());
- JSValuePtr result = new (exec) RuntimeMethod(exec, propertyName, methodList);
+ JSValue result = new (exec) RuntimeMethod(exec, propertyName, methodList);
instance->end();
@@ -165,7 +165,7 @@ bool RuntimeObjectImp::getOwnPropertySlot(ExecState *exec, const Identifier& pro
return instance->getOwnPropertySlot(this, exec, propertyName, slot);
}
-void RuntimeObjectImp::put(ExecState* exec, const Identifier& propertyName, JSValuePtr value, PutPropertySlot& slot)
+void RuntimeObjectImp::put(ExecState* exec, const Identifier& propertyName, JSValue value, PutPropertySlot& slot)
{
if (!instance) {
throwInvalidAccessError(exec);
@@ -191,23 +191,23 @@ bool RuntimeObjectImp::deleteProperty(ExecState*, const Identifier&)
return false;
}
-JSValuePtr RuntimeObjectImp::defaultValue(ExecState* exec, PreferredPrimitiveType hint) const
+JSValue RuntimeObjectImp::defaultValue(ExecState* exec, PreferredPrimitiveType hint) const
{
if (!instance)
return throwInvalidAccessError(exec);
RefPtr<Instance> protector(instance);
instance->begin();
- JSValuePtr result = instance->defaultValue(exec, hint);
+ JSValue result = instance->defaultValue(exec, hint);
instance->end();
return result;
}
-static JSValuePtr callRuntimeObject(ExecState* exec, JSObject* function, JSValuePtr, const ArgList& args)
+static JSValue JSC_HOST_CALL callRuntimeObject(ExecState* exec, JSObject* function, JSValue, const ArgList& args)
{
RefPtr<Instance> instance(static_cast<RuntimeObjectImp*>(function)->getInternalInstance());
instance->begin();
- JSValuePtr result = instance->invokeDefaultMethod(exec, args);
+ JSValue result = instance->invokeDefaultMethod(exec, args);
instance->end();
return result;
}
@@ -224,7 +224,7 @@ static JSObject* callRuntimeConstructor(ExecState* exec, JSObject* constructor,
{
RefPtr<Instance> instance(static_cast<RuntimeObjectImp*>(constructor)->getInternalInstance());
instance->begin();
- JSValuePtr result = instance->invokeConstruct(exec, args);
+ JSValue result = instance->invokeConstruct(exec, args);
instance->end();
ASSERT(result);
diff --git a/WebCore/bridge/runtime_object.h b/WebCore/bridge/runtime_object.h
index b8788c9..f01fe1e 100644
--- a/WebCore/bridge/runtime_object.h
+++ b/WebCore/bridge/runtime_object.h
@@ -38,9 +38,9 @@ public:
virtual ~RuntimeObjectImp();
virtual bool getOwnPropertySlot(ExecState*, const Identifier& propertyName, PropertySlot&);
- virtual void put(ExecState*, const Identifier& propertyName, JSValuePtr, PutPropertySlot&);
+ virtual void put(ExecState*, const Identifier& propertyName, JSValue, PutPropertySlot&);
virtual bool deleteProperty(ExecState* , const Identifier& propertyName);
- virtual JSValuePtr defaultValue(ExecState*, PreferredPrimitiveType) const;
+ virtual JSValue defaultValue(ExecState*, PreferredPrimitiveType) const;
virtual CallType getCallData(CallData&);
virtual ConstructType getConstructData(ConstructData&);
@@ -53,12 +53,12 @@ public:
static const ClassInfo s_info;
- static ObjectPrototype* createPrototype(ExecState* exec)
+ static ObjectPrototype* createPrototype(ExecState*, JSGlobalObject* globalObject)
{
- return exec->lexicalGlobalObject()->objectPrototype();
+ return globalObject->objectPrototype();
}
- static PassRefPtr<Structure> createStructure(JSValuePtr prototype)
+ static PassRefPtr<Structure> createStructure(JSValue prototype)
{
return Structure::create(prototype, TypeInfo(ObjectType));
}
@@ -69,9 +69,9 @@ protected:
private:
virtual const ClassInfo* classInfo() const { return &s_info; }
- static JSValuePtr fallbackObjectGetter(ExecState*, const Identifier&, const PropertySlot&);
- static JSValuePtr fieldGetter(ExecState*, const Identifier&, const PropertySlot&);
- static JSValuePtr methodGetter(ExecState*, const Identifier&, const PropertySlot&);
+ static JSValue fallbackObjectGetter(ExecState*, const Identifier&, const PropertySlot&);
+ static JSValue fieldGetter(ExecState*, const Identifier&, const PropertySlot&);
+ static JSValue methodGetter(ExecState*, const Identifier&, const PropertySlot&);
RefPtr<Bindings::Instance> instance;
};
diff --git a/WebCore/bridge/testbindings.pro b/WebCore/bridge/testbindings.pro
index 1beee44..a854d4f 100644
--- a/WebCore/bridge/testbindings.pro
+++ b/WebCore/bridge/testbindings.pro
@@ -1,8 +1,7 @@
QT -= gui
include(../../WebKit.pri)
-INCLUDEPATH += .. ../ .
-qt-port:INCLUDEPATH += bindings/qt
+INCLUDEPATH += .. ../ . bindings/qt
SOURCES += testqtbindings.cpp