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

Side by Side Diff: third_party/WebKit/Source/platform/v8_inspector/V8JavaScriptCallFrame.cpp

Issue 1769273004: Remove V8RecrusionScope, cleanup call sites. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebased Created 4 years, 9 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 unified diff | Download patch
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "platform/v8_inspector/V8JavaScriptCallFrame.h" 5 #include "platform/v8_inspector/V8JavaScriptCallFrame.h"
6 6
7 #include "platform/v8_inspector/InspectorWrapper.h" 7 #include "platform/v8_inspector/InspectorWrapper.h"
8 #include "platform/v8_inspector/JavaScriptCallFrame.h" 8 #include "platform/v8_inspector/JavaScriptCallFrame.h"
9 #include "platform/v8_inspector/V8StringUtil.h" 9 #include "platform/v8_inspector/V8StringUtil.h"
10 #include "wtf/PassOwnPtr.h" 10 #include "wtf/PassOwnPtr.h"
11 #include <algorithm> 11 #include <algorithm>
12 12
13 namespace blink { 13 namespace blink {
14 14
15 namespace { 15 namespace {
16 16
17 void callerAttributeGetterCallback(v8::Local<v8::Name>, const v8::PropertyCallba ckInfo<v8::Value>& info) 17 void callerAttributeGetterCallback(v8::Local<v8::Name>, const v8::PropertyCallba ckInfo<v8::Value>& info)
18 { 18 {
19 JavaScriptCallFrame* impl = V8JavaScriptCallFrame::unwrap(info.GetIsolate()- >GetCurrentContext(), info.Holder()); 19 JavaScriptCallFrame* impl = V8JavaScriptCallFrame::unwrap(info.GetIsolate()- >GetCurrentContext(), info.Holder());
20 OwnPtr<JavaScriptCallFrame> caller = impl->caller(); 20 OwnPtr<JavaScriptCallFrame> caller = impl->caller();
21 if (!caller) 21 if (!caller)
22 return; 22 return;
23 v8::Isolate* isolate = info.GetIsolate(); 23 v8::Isolate* isolate = info.GetIsolate();
24 v8::Local<v8::FunctionTemplate> wrapperTemplate = impl->wrapperTemplate(isol ate); 24 v8::Local<v8::FunctionTemplate> wrapperTemplate = impl->wrapperTemplate(isol ate);
25 if (wrapperTemplate.IsEmpty()) 25 if (wrapperTemplate.IsEmpty())
26 return; 26 return;
27 info.GetReturnValue().Set(V8JavaScriptCallFrame::wrap(impl->client(), wrappe rTemplate, isolate->GetCurrentContext(), caller.release())); 27 info.GetReturnValue().Set(V8JavaScriptCallFrame::wrap(wrapperTemplate, isola te->GetCurrentContext(), caller.release()));
28 } 28 }
29 29
30 void sourceIDAttributeGetterCallback(v8::Local<v8::Name>, const v8::PropertyCall backInfo<v8::Value>& info) 30 void sourceIDAttributeGetterCallback(v8::Local<v8::Name>, const v8::PropertyCall backInfo<v8::Value>& info)
31 { 31 {
32 JavaScriptCallFrame* impl = V8JavaScriptCallFrame::unwrap(info.GetIsolate()- >GetCurrentContext(), info.Holder()); 32 JavaScriptCallFrame* impl = V8JavaScriptCallFrame::unwrap(info.GetIsolate()- >GetCurrentContext(), info.Holder());
33 info.GetReturnValue().Set(impl->sourceID()); 33 info.GetReturnValue().Set(impl->sourceID());
34 } 34 }
35 35
36 void lineAttributeGetterCallback(v8::Local<v8::Name>, const v8::PropertyCallback Info<v8::Value>& info) 36 void lineAttributeGetterCallback(v8::Local<v8::Name>, const v8::PropertyCallback Info<v8::Value>& info)
37 { 37 {
(...skipping 133 matching lines...) Expand 10 before | Expand all | Expand 10 after
171 171
172 v8::Local<v8::FunctionTemplate> V8JavaScriptCallFrame::createWrapperTemplate(v8: :Isolate* isolate) 172 v8::Local<v8::FunctionTemplate> V8JavaScriptCallFrame::createWrapperTemplate(v8: :Isolate* isolate)
173 { 173 {
174 protocol::Vector<InspectorWrapperBase::V8MethodConfiguration> methods(WTF_AR RAY_LENGTH(V8JavaScriptCallFrameMethods)); 174 protocol::Vector<InspectorWrapperBase::V8MethodConfiguration> methods(WTF_AR RAY_LENGTH(V8JavaScriptCallFrameMethods));
175 std::copy(V8JavaScriptCallFrameMethods, V8JavaScriptCallFrameMethods + WTF_A RRAY_LENGTH(V8JavaScriptCallFrameMethods), methods.begin()); 175 std::copy(V8JavaScriptCallFrameMethods, V8JavaScriptCallFrameMethods + WTF_A RRAY_LENGTH(V8JavaScriptCallFrameMethods), methods.begin());
176 protocol::Vector<InspectorWrapperBase::V8AttributeConfiguration> attributes( WTF_ARRAY_LENGTH(V8JavaScriptCallFrameAttributes)); 176 protocol::Vector<InspectorWrapperBase::V8AttributeConfiguration> attributes( WTF_ARRAY_LENGTH(V8JavaScriptCallFrameAttributes));
177 std::copy(V8JavaScriptCallFrameAttributes, V8JavaScriptCallFrameAttributes + WTF_ARRAY_LENGTH(V8JavaScriptCallFrameAttributes), attributes.begin()); 177 std::copy(V8JavaScriptCallFrameAttributes, V8JavaScriptCallFrameAttributes + WTF_ARRAY_LENGTH(V8JavaScriptCallFrameAttributes), attributes.begin());
178 return JavaScriptCallFrameWrapper::createWrapperTemplate(isolate, methods, a ttributes); 178 return JavaScriptCallFrameWrapper::createWrapperTemplate(isolate, methods, a ttributes);
179 } 179 }
180 180
181 v8::Local<v8::Object> V8JavaScriptCallFrame::wrap(V8DebuggerClient* client, v8:: Local<v8::FunctionTemplate> constructorTemplate, v8::Local<v8::Context> context, PassOwnPtr<JavaScriptCallFrame> frame) 181 v8::Local<v8::Object> V8JavaScriptCallFrame::wrap(v8::Local<v8::FunctionTemplate > constructorTemplate, v8::Local<v8::Context> context, PassOwnPtr<JavaScriptCall Frame> frame)
182 { 182 {
183 // Store template for .caller callback 183 // Store template for .caller callback
184 frame->setWrapperTemplate(constructorTemplate, context->GetIsolate()); 184 frame->setWrapperTemplate(constructorTemplate, context->GetIsolate());
185 return JavaScriptCallFrameWrapper::wrap(client, constructorTemplate, context , frame); 185 return JavaScriptCallFrameWrapper::wrap(constructorTemplate, context, frame) ;
186 } 186 }
187 187
188 JavaScriptCallFrame* V8JavaScriptCallFrame::unwrap(v8::Local<v8::Context> contex t, v8::Local<v8::Object> object) 188 JavaScriptCallFrame* V8JavaScriptCallFrame::unwrap(v8::Local<v8::Context> contex t, v8::Local<v8::Object> object)
189 { 189 {
190 return JavaScriptCallFrameWrapper::unwrap(context, object); 190 return JavaScriptCallFrameWrapper::unwrap(context, object);
191 } 191 }
192 192
193 } // namespace blink 193 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698