Chromium Code Reviews| Index: Source/core/inspector/InjectedScriptBase.h |
| diff --git a/Source/core/inspector/InjectedScriptBase.h b/Source/core/inspector/InjectedScriptBase.h |
| index c7ae14bb5ec9c0522d4c85ea53327db8377b4be4..4f787ccaa73380d60cf788633cb6d6ebc4b12e79 100644 |
| --- a/Source/core/inspector/InjectedScriptBase.h |
| +++ b/Source/core/inspector/InjectedScriptBase.h |
| @@ -43,31 +43,46 @@ 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 { |
|
vsm
2014/06/03 14:24:49
The virtual base class feels kind of nasty. Not s
Jacob
2014/06/03 20:23:13
This is ugly. Added a FIXMEDart that we need to fi
|
| +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: |
| + ScriptObject m_injectedScriptObject; |
|
rmacnak
2014/06/03 17:32:34
Add a note this should become V8ScriptValue in M37
Jacob
2014/06/03 20:23:13
done.
|
| }; |