Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 /* | 1 /* |
| 2 * Copyright (C) 2012 Google Inc. All rights reserved. | 2 * Copyright (C) 2012 Google Inc. All rights reserved. |
| 3 * | 3 * |
| 4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
| 5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
| 6 * met: | 6 * met: |
| 7 * | 7 * |
| 8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
| 9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
| 10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
| (...skipping 30 matching lines...) Expand all Loading... | |
| 41 | 41 |
| 42 namespace blink { | 42 namespace blink { |
| 43 | 43 |
| 44 class JSONValue; | 44 class JSONValue; |
| 45 class RemoteObjectId; | 45 class RemoteObjectId; |
| 46 class ScriptFunctionCall; | 46 class ScriptFunctionCall; |
| 47 | 47 |
| 48 typedef String ErrorString; | 48 typedef String ErrorString; |
| 49 PassRefPtr<JSONValue> toJSONValue(const ScriptValue&); | 49 PassRefPtr<JSONValue> toJSONValue(const ScriptValue&); |
| 50 | 50 |
| 51 | |
| 52 class InjectedScript final { | 51 class InjectedScript final { |
| 53 DISALLOW_NEW(); | |
|
sof
2016/01/24 08:05:32
USING_FAST_MALLOC(InjectedScript); ?
sof
2016/01/25 18:59:12
Not following up on this one?
pfeldman
2016/01/25 19:02:41
I absolutely have to! Why allocating this rare obj
| |
| 54 public: | 52 public: |
| 55 InjectedScript(); | 53 InjectedScript(); |
| 56 ~InjectedScript(); | 54 ~InjectedScript(); |
| 57 | 55 |
| 58 bool isEmpty() const { return m_injectedScriptObject.isEmpty(); } | |
| 59 ScriptState* scriptState() const | 56 ScriptState* scriptState() const |
| 60 { | 57 { |
| 61 ASSERT(!isEmpty()); | 58 ASSERT(!isEmpty()); |
| 62 return m_injectedScriptObject.scriptState(); | 59 return m_injectedScriptObject.scriptState(); |
| 63 } | 60 } |
| 64 | 61 |
| 65 void evaluate( | 62 void evaluate( |
| 66 ErrorString*, | 63 ErrorString*, |
| 67 const String& expression, | 64 const String& expression, |
| 68 const String& objectGroup, | 65 const String& objectGroup, |
| (...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 110 PassRefPtr<TypeBuilder::Runtime::RemoteObject> wrapTable(const ScriptValue& table, const ScriptValue& columns) const; | 107 PassRefPtr<TypeBuilder::Runtime::RemoteObject> wrapTable(const ScriptValue& table, const ScriptValue& columns) const; |
| 111 v8::Local<v8::Value> findObject(const RemoteObjectId&) const; | 108 v8::Local<v8::Value> findObject(const RemoteObjectId&) const; |
| 112 | 109 |
| 113 String objectIdToObjectGroupName(const String& objectId) const; | 110 String objectIdToObjectGroupName(const String& objectId) const; |
| 114 void releaseObjectGroup(const String&); | 111 void releaseObjectGroup(const String&); |
| 115 | 112 |
| 116 void setCustomObjectFormatterEnabled(bool); | 113 void setCustomObjectFormatterEnabled(bool); |
| 117 int contextId() { return m_contextId; } | 114 int contextId() { return m_contextId; } |
| 118 | 115 |
| 119 private: | 116 private: |
| 120 friend InjectedScript InjectedScriptManager::injectedScriptFor(ScriptState*) ; | 117 friend InjectedScript* InjectedScriptManager::injectedScriptFor(ScriptState* ); |
| 121 using InspectedStateAccessCheck = bool (*)(ScriptState*); | 118 using InspectedStateAccessCheck = bool (*)(ScriptState*); |
| 122 InjectedScript(ScriptValue, InspectedStateAccessCheck, PassRefPtr<InjectedSc riptNative>, int contextId); | 119 InjectedScript(ScriptValue, InspectedStateAccessCheck, PassRefPtr<InjectedSc riptNative>, int contextId); |
| 123 | 120 |
| 124 void initialize(ScriptValue, InspectedStateAccessCheck); | 121 void initialize(ScriptValue, InspectedStateAccessCheck); |
| 125 bool canAccessInspectedWindow() const; | 122 bool canAccessInspectedWindow() const; |
| 126 const ScriptValue& injectedScriptObject() const; | 123 const ScriptValue& injectedScriptObject() const; |
| 127 ScriptValue callFunctionWithEvalEnabled(ScriptFunctionCall&, bool& hadExcept ion) const; | 124 ScriptValue callFunctionWithEvalEnabled(ScriptFunctionCall&, bool& hadExcept ion) const; |
| 128 void makeCall(ScriptFunctionCall&, RefPtr<JSONValue>* result); | 125 void makeCall(ScriptFunctionCall&, RefPtr<JSONValue>* result); |
| 129 void makeEvalCall(ErrorString*, ScriptFunctionCall&, RefPtr<TypeBuilder::Run time::RemoteObject>* result, TypeBuilder::OptOutput<bool>* wasThrown, RefPtr<Typ eBuilder::Debugger::ExceptionDetails>* = 0); | 126 void makeEvalCall(ErrorString*, ScriptFunctionCall&, RefPtr<TypeBuilder::Run time::RemoteObject>* result, TypeBuilder::OptOutput<bool>* wasThrown, RefPtr<Typ eBuilder::Debugger::ExceptionDetails>* = 0); |
| 130 void makeCallWithExceptionDetails(ScriptFunctionCall&, RefPtr<JSONValue>* re sult, RefPtr<TypeBuilder::Debugger::ExceptionDetails>*); | 127 void makeCallWithExceptionDetails(ScriptFunctionCall&, RefPtr<JSONValue>* re sult, RefPtr<TypeBuilder::Debugger::ExceptionDetails>*); |
| 131 | 128 |
| 132 ScriptValue m_injectedScriptObject; | 129 ScriptValue m_injectedScriptObject; |
| 133 InspectedStateAccessCheck m_inspectedStateAccessCheck; | 130 InspectedStateAccessCheck m_inspectedStateAccessCheck; |
| 134 RefPtr<InjectedScriptNative> m_native; | 131 RefPtr<InjectedScriptNative> m_native; |
| 135 int m_contextId; | 132 int m_contextId; |
| 136 }; | 133 }; |
| 137 | 134 |
| 138 } // namespace blink | 135 } // namespace blink |
| 139 | 136 |
| 140 #endif | 137 #endif |
| OLD | NEW |