Index: Source/core/inspector/InjectedScriptBase.h |
diff --git a/Source/core/inspector/InjectedScriptBase.h b/Source/core/inspector/InjectedScriptBase.h |
index 5516a3973e8534c2e676267bf16473d03d0bb76c..07871e8a752e96b305d23ac8c35939f9981d11c9 100644 |
--- a/Source/core/inspector/InjectedScriptBase.h |
+++ b/Source/core/inspector/InjectedScriptBase.h |
@@ -43,31 +43,47 @@ class ScriptFunctionCall; |
typedef String ErrorString; |
- |
class InjectedScriptBase { |
public: |
virtual ~InjectedScriptBase() { } |
- |
- const String& name() const { return m_name; } |
- bool isEmpty() const { return m_injectedScriptObject.isEmpty(); } |
- ScriptState* scriptState() const { return m_injectedScriptObject.scriptState(); } |
+ virtual const String& name() const = 0; |
+ virtual bool isEmpty() const = 0; |
+ virtual ScriptState* scriptState() const = 0; |
+ virtual bool isJavaScript() const = 0; |
protected: |
typedef bool (*InspectedStateAccessCheck)(ScriptState*); |
- InjectedScriptBase(const String& name); |
- InjectedScriptBase(const String& name, ScriptObject, InspectedStateAccessCheck); |
+}; |
+ |
+class V8InjectedScriptBase : public virtual InjectedScriptBase { |
+public: |
+ virtual ~V8InjectedScriptBase() { } |
+ |
+ virtual bool isEmpty() const { return m_injectedScriptObject.isEmpty(); } |
+ virtual ScriptState* scriptState() const { return m_injectedScriptObject.scriptState(); } |
+ |
+ virtual bool isJavaScript() const { return true; } |
+ |
+ virtual const String& name() const { return m_name; } |
+ |
+protected: |
+ V8InjectedScriptBase(const String& name); |
+ V8InjectedScriptBase(const String& name, ScriptObject, InspectedStateAccessCheck); |
void initialize(ScriptObject, InspectedStateAccessCheck); |
- bool canAccessInspectedWindow() const; |
+ |
const ScriptObject& injectedScriptObject() const; |
ScriptValue callFunctionWithEvalEnabled(ScriptFunctionCall&, bool& hadException) const; |
void makeCall(ScriptFunctionCall&, RefPtr<JSONValue>* result); |
void makeEvalCall(ErrorString*, ScriptFunctionCall&, RefPtr<TypeBuilder::Runtime::RemoteObject>* result, TypeBuilder::OptOutput<bool>* wasThrown); |
-private: |
+ bool canAccessInspectedWindow() const; |
String m_name; |
- ScriptObject m_injectedScriptObject; |
InspectedStateAccessCheck m_inspectedStateAccessCheck; |
+ |
+private: |
+ // FIXMEDART: make this V8ScriptValue in M37. |
+ ScriptObject m_injectedScriptObject; |
}; |