Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(578)

Unified Diff: Source/core/inspector/InjectedScript.cpp

Issue 300393002: Merge DevTools Refactor CL to Blink36 (Closed) Base URL: svn://svn.chromium.org/blink/branches/dart/1985
Patch Set: PTAL Created 6 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « Source/core/inspector/InjectedScript.h ('k') | Source/core/inspector/InjectedScriptBase.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: Source/core/inspector/InjectedScript.cpp
diff --git a/Source/core/inspector/InjectedScript.cpp b/Source/core/inspector/InjectedScript.cpp
index 3c9e690515316653b67bd7ec9295befda7a01f78..08f3881d9e675e2b59b12d49017192cd33a2ae45 100644
--- a/Source/core/inspector/InjectedScript.cpp
+++ b/Source/core/inspector/InjectedScript.cpp
@@ -47,17 +47,17 @@ using WebCore::TypeBuilder::Runtime::RemoteObject;
namespace WebCore {
-InjectedScript::InjectedScript()
- : InjectedScriptBase("InjectedScript")
+V8InjectedScript::V8InjectedScript()
+ : V8InjectedScriptBase("InjectedScript")
{
}
-InjectedScript::InjectedScript(ScriptObject injectedScriptObject, InspectedStateAccessCheck accessCheck)
- : InjectedScriptBase("InjectedScript", injectedScriptObject, accessCheck)
+V8InjectedScript::V8InjectedScript(ScriptObject injectedScriptObject, InspectedStateAccessCheck accessCheck)
+ : V8InjectedScriptBase("InjectedScript", injectedScriptObject, accessCheck)
{
}
-void InjectedScript::evaluate(ErrorString* errorString, const String& expression, const String& objectGroup, bool includeCommandLineAPI, bool returnByValue, bool generatePreview, RefPtr<TypeBuilder::Runtime::RemoteObject>* result, TypeBuilder::OptOutput<bool>* wasThrown)
+void V8InjectedScript::evaluate(ErrorString* errorString, const String& expression, const String& objectGroup, bool includeCommandLineAPI, bool returnByValue, bool generatePreview, RefPtr<TypeBuilder::Runtime::RemoteObject>* result, TypeBuilder::OptOutput<bool>* wasThrown)
{
ScriptFunctionCall function(injectedScriptObject(), "evaluate");
function.appendArgument(expression);
@@ -68,7 +68,7 @@ void InjectedScript::evaluate(ErrorString* errorString, const String& expression
makeEvalCall(errorString, function, result, wasThrown);
}
-void InjectedScript::callFunctionOn(ErrorString* errorString, const String& objectId, const String& expression, const String& arguments, bool returnByValue, bool generatePreview, RefPtr<TypeBuilder::Runtime::RemoteObject>* result, TypeBuilder::OptOutput<bool>* wasThrown)
+void V8InjectedScript::callFunctionOn(ErrorString* errorString, const String& objectId, const String& expression, const String& arguments, bool returnByValue, bool generatePreview, RefPtr<TypeBuilder::Runtime::RemoteObject>* result, TypeBuilder::OptOutput<bool>* wasThrown)
{
ScriptFunctionCall function(injectedScriptObject(), "callFunctionOn");
function.appendArgument(objectId);
@@ -79,11 +79,16 @@ void InjectedScript::callFunctionOn(ErrorString* errorString, const String& obje
makeEvalCall(errorString, function, result, wasThrown);
}
-void InjectedScript::evaluateOnCallFrame(ErrorString* errorString, const ScriptValue& callFrames, const Vector<ScriptValue>& asyncCallStacks, const String& callFrameId, const String& expression, const String& objectGroup, bool includeCommandLineAPI, bool returnByValue, bool generatePreview, RefPtr<RemoteObject>* result, TypeBuilder::OptOutput<bool>* wasThrown)
+void V8InjectedScript::evaluateOnCallFrame(ErrorString* errorString, const StackTrace& callFrames, const Vector<StackTrace>& asyncCallStacks, const String& callFrameId, const String& expression, const String& objectGroup, bool includeCommandLineAPI, bool returnByValue, bool generatePreview, RefPtr<RemoteObject>* result, TypeBuilder::OptOutput<bool>* wasThrown)
{
ScriptFunctionCall function(injectedScriptObject(), "evaluateOnCallFrame");
- function.appendArgument(callFrames);
- function.appendArgument(asyncCallStacks);
+ function.appendArgument(callFrames.asJavaScript());
+ Vector<ScriptValue> asyncCallStacksJavaScript;
+ for (size_t i = 0; i < asyncCallStacks.size(); i++) {
+ if (asyncCallStacks[i].isJavaScript())
+ asyncCallStacksJavaScript.append(asyncCallStacks[i].asJavaScript());
+ }
+ function.appendArgument(asyncCallStacksJavaScript);
function.appendArgument(callFrameId);
function.appendArgument(expression);
function.appendArgument(objectGroup);
@@ -93,10 +98,31 @@ void InjectedScript::evaluateOnCallFrame(ErrorString* errorString, const ScriptV
makeEvalCall(errorString, function, result, wasThrown);
}
-void InjectedScript::restartFrame(ErrorString* errorString, const ScriptValue& callFrames, const String& callFrameId, RefPtr<JSONObject>* result)
+void V8InjectedScript::getCompletionsOnCallFrame(ErrorString* errorString, const StackTrace& callFrames, const Vector<StackTrace>& asyncCallStacks, const String& callFrameId, const String& expression, RefPtr<TypeBuilder::Array<String> >* result)
+{
+ ScriptFunctionCall function(injectedScriptObject(), "getCompletionsOnCallFrame");
+ function.appendArgument(callFrames.asJavaScript());
+ Vector<ScriptValue> asyncCallStacksJavaScript;
+ for (size_t i = 0; i < asyncCallStacks.size(); i++) {
+ if (asyncCallStacks[i].isJavaScript())
+ asyncCallStacksJavaScript.append(asyncCallStacks[i].asJavaScript());
+ }
+ function.appendArgument(asyncCallStacksJavaScript);
+ function.appendArgument(callFrameId);
+ function.appendArgument(expression);
+ RefPtr<JSONValue> resultValue;
+ makeCall(function, &resultValue);
+ if (!resultValue || resultValue->type() != JSONValue::TypeArray) {
+ *errorString = "Internal error";
+ return;
+ }
+ *result = Array<String>::runtimeCast(resultValue);
+}
+
+void V8InjectedScript::restartFrame(ErrorString* errorString, const StackTrace& callFrames, const String& callFrameId, RefPtr<JSONObject>* result)
{
ScriptFunctionCall function(injectedScriptObject(), "restartFrame");
- function.appendArgument(callFrames);
+ function.appendArgument(callFrames.asJavaScript());
function.appendArgument(callFrameId);
RefPtr<JSONValue> resultValue;
makeCall(function, &resultValue);
@@ -113,10 +139,10 @@ void InjectedScript::restartFrame(ErrorString* errorString, const ScriptValue& c
*errorString = "Internal error";
}
-void InjectedScript::getStepInPositions(ErrorString* errorString, const ScriptValue& callFrames, const String& callFrameId, RefPtr<Array<TypeBuilder::Debugger::Location> >& positions)
+void V8InjectedScript::getStepInPositions(ErrorString* errorString, const StackTrace& callFrames, const String& callFrameId, RefPtr<Array<TypeBuilder::Debugger::Location> >& positions)
{
ScriptFunctionCall function(injectedScriptObject(), "getStepInPositions");
- function.appendArgument(callFrames);
+ function.appendArgument(callFrames.asJavaScript());
function.appendArgument(callFrameId);
RefPtr<JSONValue> resultValue;
makeCall(function, &resultValue);
@@ -133,11 +159,11 @@ void InjectedScript::getStepInPositions(ErrorString* errorString, const ScriptVa
*errorString = "Internal error";
}
-void InjectedScript::setVariableValue(ErrorString* errorString, const ScriptValue& callFrames, const String* callFrameIdOpt, const String* functionObjectIdOpt, int scopeNumber, const String& variableName, const String& newValueStr)
+void V8InjectedScript::setVariableValue(ErrorString* errorString, const StackTrace& callFrames, const String* callFrameIdOpt, const String* functionObjectIdOpt, int scopeNumber, const String& variableName, const String& newValueStr)
{
ScriptFunctionCall function(injectedScriptObject(), "setVariableValue");
if (callFrameIdOpt) {
- function.appendArgument(callFrames);
+ function.appendArgument(callFrames.asJavaScript());
function.appendArgument(*callFrameIdOpt);
} else {
function.appendArgument(false);
@@ -163,7 +189,7 @@ void InjectedScript::setVariableValue(ErrorString* errorString, const ScriptValu
// Normal return.
}
-void InjectedScript::getFunctionDetails(ErrorString* errorString, const String& functionId, RefPtr<FunctionDetails>* result)
+void V8InjectedScript::getFunctionDetails(ErrorString* errorString, const String& functionId, RefPtr<FunctionDetails>* result)
{
ScriptFunctionCall function(injectedScriptObject(), "getFunctionDetails");
function.appendArgument(functionId);
@@ -177,7 +203,21 @@ void InjectedScript::getFunctionDetails(ErrorString* errorString, const String&
*result = FunctionDetails::runtimeCast(resultValue);
}
-void InjectedScript::getProperties(ErrorString* errorString, const String& objectId, bool ownProperties, bool accessorPropertiesOnly, RefPtr<Array<PropertyDescriptor> >* properties)
+void V8InjectedScript::getCompletions(ErrorString* errorString, const String& expression, RefPtr<TypeBuilder::Array<String> >* result)
+{
+ *result = TypeBuilder::Array<String>::create();
+ ScriptFunctionCall function(injectedScriptObject(), "getCompletions");
+ function.appendArgument(expression);
+ RefPtr<JSONValue> resultValue;
+ makeCall(function, &resultValue);
+ if (!resultValue || resultValue->type() != JSONValue::TypeArray) {
+ *errorString = "Internal error";
+ return;
+ }
+ *result = Array<String>::runtimeCast(resultValue);
+}
+
+void V8InjectedScript::getProperties(ErrorString* errorString, const String& objectId, bool ownProperties, bool accessorPropertiesOnly, RefPtr<Array<PropertyDescriptor> >* properties)
{
ScriptFunctionCall function(injectedScriptObject(), "getProperties");
function.appendArgument(objectId);
@@ -193,7 +233,7 @@ void InjectedScript::getProperties(ErrorString* errorString, const String& objec
*properties = Array<PropertyDescriptor>::runtimeCast(result);
}
-void InjectedScript::getInternalProperties(ErrorString* errorString, const String& objectId, RefPtr<Array<InternalPropertyDescriptor> >* properties)
+void V8InjectedScript::getInternalProperties(ErrorString* errorString, const String& objectId, RefPtr<Array<InternalPropertyDescriptor> >* properties)
{
ScriptFunctionCall function(injectedScriptObject(), "getInternalProperties");
function.appendArgument(objectId);
@@ -209,7 +249,15 @@ void InjectedScript::getInternalProperties(ErrorString* errorString, const Strin
*properties = array;
}
-Node* InjectedScript::nodeForObjectId(const String& objectId)
+void V8InjectedScript::getProperty(ErrorString* errorString, const String& objectId, const RefPtr<JSONArray>& propertyPath, RefPtr<TypeBuilder::Runtime::RemoteObject>* result, TypeBuilder::OptOutput<bool>* wasThrown)
+{
+ ScriptFunctionCall function(injectedScriptObject(), "getProperty");
+ function.appendArgument(objectId);
+ function.appendArgument(propertyPath);
+ makeEvalCall(errorString, function, result, wasThrown);
+}
+
+Node* V8InjectedScript::nodeForObjectId(const String& objectId)
{
if (isEmpty() || !canAccessInspectedWindow())
return 0;
@@ -224,7 +272,7 @@ Node* InjectedScript::nodeForObjectId(const String& objectId)
return InjectedScriptHost::scriptValueAsNode(resultValue);
}
-void InjectedScript::releaseObject(const String& objectId)
+void V8InjectedScript::releaseObject(const String& objectId)
{
ScriptFunctionCall function(injectedScriptObject(), "releaseObject");
function.appendArgument(objectId);
@@ -232,11 +280,11 @@ void InjectedScript::releaseObject(const String& objectId)
makeCall(function, &result);
}
-PassRefPtr<Array<CallFrame> > InjectedScript::wrapCallFrames(const ScriptValue& callFrames, int asyncOrdinal)
+PassRefPtr<Array<CallFrame> > V8InjectedScript::wrapCallFrames(const StackTrace& callFrames, int asyncOrdinal)
{
ASSERT(!isEmpty());
ScriptFunctionCall function(injectedScriptObject(), "wrapCallFrames");
- function.appendArgument(callFrames);
+ function.appendArgument(callFrames.asJavaScript());
function.appendArgument(asyncOrdinal);
bool hadException = false;
ScriptValue callFramesValue = callFunctionWithEvalEnabled(function, hadException);
@@ -247,7 +295,7 @@ PassRefPtr<Array<CallFrame> > InjectedScript::wrapCallFrames(const ScriptValue&
return Array<CallFrame>::create();
}
-PassRefPtr<TypeBuilder::Runtime::RemoteObject> InjectedScript::wrapObject(const ScriptValue& value, const String& groupName, bool generatePreview) const
+PassRefPtr<TypeBuilder::Runtime::RemoteObject> V8InjectedScript::wrapObject(const ScriptValue& value, const String& groupName, bool generatePreview)
{
ASSERT(!isEmpty());
ScriptFunctionCall wrapFunction(injectedScriptObject(), "wrapObject");
@@ -263,7 +311,7 @@ PassRefPtr<TypeBuilder::Runtime::RemoteObject> InjectedScript::wrapObject(const
return TypeBuilder::Runtime::RemoteObject::runtimeCast(rawResult);
}
-PassRefPtr<TypeBuilder::Runtime::RemoteObject> InjectedScript::wrapTable(const ScriptValue& table, const ScriptValue& columns) const
+PassRefPtr<TypeBuilder::Runtime::RemoteObject> V8InjectedScript::wrapTable(const ScriptValue& table, const ScriptValue& columns)
{
ASSERT(!isEmpty());
ScriptFunctionCall wrapFunction(injectedScriptObject(), "wrapTable");
@@ -281,12 +329,12 @@ PassRefPtr<TypeBuilder::Runtime::RemoteObject> InjectedScript::wrapTable(const S
return TypeBuilder::Runtime::RemoteObject::runtimeCast(rawResult);
}
-PassRefPtr<TypeBuilder::Runtime::RemoteObject> InjectedScript::wrapNode(Node* node, const String& groupName)
+PassRefPtr<TypeBuilder::Runtime::RemoteObject> V8InjectedScript::wrapNode(Node* node, const String& groupName)
{
return wrapObject(nodeAsScriptValue(node), groupName);
}
-ScriptValue InjectedScript::findObjectById(const String& objectId) const
+ScriptValue V8InjectedScript::findObjectById(const String& objectId) const
{
ASSERT(!isEmpty());
ScriptFunctionCall function(injectedScriptObject(), "findObjectById");
@@ -298,22 +346,23 @@ ScriptValue InjectedScript::findObjectById(const String& objectId) const
return resultValue;
}
-ScriptValue InjectedScript::findCallFrameById(ErrorString* errorString, const ScriptValue& topCallFrame, const String& callFrameId)
+ActivationFrame V8InjectedScript::findCallFrameById(ErrorString* errorString, const StackTrace& topCallFrame, const String& callFrameId)
{
+ ASSERT(topCallFrame.isJavaScript());
ScriptFunctionCall function(injectedScriptObject(), "callFrameForId");
- function.appendArgument(topCallFrame);
+ function.appendArgument(topCallFrame.asJavaScript());
function.appendArgument(callFrameId);
bool hadException = false;
ScriptValue resultValue = callFunctionWithEvalEnabled(function, hadException);
ASSERT(!hadException);
if (hadException || resultValue.isEmpty() || !resultValue.isObject()) {
*errorString = "Internal error";
- return ScriptValue();
+ return ActivationFrame();
}
- return resultValue;
+ return ActivationFrame(resultValue);
}
-void InjectedScript::inspectNode(Node* node)
+void V8InjectedScript::inspectNode(Node* node)
{
ASSERT(!isEmpty());
ScriptFunctionCall function(injectedScriptObject(), "inspectNode");
@@ -322,7 +371,7 @@ void InjectedScript::inspectNode(Node* node)
makeCall(function, &result);
}
-void InjectedScript::releaseObjectGroup(const String& objectGroup)
+void V8InjectedScript::releaseObjectGroup(const String& objectGroup)
{
ASSERT(!isEmpty());
ScriptFunctionCall releaseFunction(injectedScriptObject(), "releaseObjectGroup");
@@ -332,7 +381,7 @@ void InjectedScript::releaseObjectGroup(const String& objectGroup)
ASSERT(!hadException);
}
-ScriptValue InjectedScript::nodeAsScriptValue(Node* node)
+ScriptValue V8InjectedScript::nodeAsScriptValue(Node* node)
{
return InjectedScriptHost::nodeAsScriptValue(scriptState(), node);
}
« no previous file with comments | « Source/core/inspector/InjectedScript.h ('k') | Source/core/inspector/InjectedScriptBase.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698