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

Side by Side Diff: third_party/WebKit/Source/platform/v8_inspector/JavaScriptCallFrame.h

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 /* 1 /*
2 * Copyright (c) 2010, Google Inc. All rights reserved. 2 * Copyright (c) 2010, 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 20 matching lines...) Expand all
31 #ifndef JavaScriptCallFrame_h 31 #ifndef JavaScriptCallFrame_h
32 #define JavaScriptCallFrame_h 32 #define JavaScriptCallFrame_h
33 33
34 #include "platform/inspector_protocol/String16.h" 34 #include "platform/inspector_protocol/String16.h"
35 #include "wtf/OwnPtr.h" 35 #include "wtf/OwnPtr.h"
36 #include "wtf/PassOwnPtr.h" 36 #include "wtf/PassOwnPtr.h"
37 #include <v8.h> 37 #include <v8.h>
38 38
39 namespace blink { 39 namespace blink {
40 40
41 class V8DebuggerClient;
42
43 class JavaScriptCallFrame { 41 class JavaScriptCallFrame {
44 public: 42 public:
45 static PassOwnPtr<JavaScriptCallFrame> create(V8DebuggerClient* client, v8:: Local<v8::Context> debuggerContext, v8::Local<v8::Object> callFrame) 43 static PassOwnPtr<JavaScriptCallFrame> create(v8::Local<v8::Context> debugge rContext, v8::Local<v8::Object> callFrame)
46 { 44 {
47 return adoptPtr(new JavaScriptCallFrame(client, debuggerContext, callFra me)); 45 return adoptPtr(new JavaScriptCallFrame(debuggerContext, callFrame));
48 } 46 }
49 ~JavaScriptCallFrame(); 47 ~JavaScriptCallFrame();
50 48
51 PassOwnPtr<JavaScriptCallFrame> caller(); 49 PassOwnPtr<JavaScriptCallFrame> caller();
52 50
53 int sourceID() const; 51 int sourceID() const;
54 int line() const; 52 int line() const;
55 int column() const; 53 int column() const;
56 String16 scriptName() const; 54 String16 scriptName() const;
57 String16 functionName() const; 55 String16 functionName() const;
(...skipping 13 matching lines...) Expand all
71 v8::Local<v8::Value> evaluateWithExceptionDetails(v8::Local<v8::Value> expre ssion, v8::Local<v8::Value> scopeExtension); 69 v8::Local<v8::Value> evaluateWithExceptionDetails(v8::Local<v8::Value> expre ssion, v8::Local<v8::Value> scopeExtension);
72 v8::MaybeLocal<v8::Value> restart(); 70 v8::MaybeLocal<v8::Value> restart();
73 v8::MaybeLocal<v8::Value> setVariableValue(int scopeNumber, v8::Local<v8::Va lue> variableName, v8::Local<v8::Value> newValue); 71 v8::MaybeLocal<v8::Value> setVariableValue(int scopeNumber, v8::Local<v8::Va lue> variableName, v8::Local<v8::Value> newValue);
74 72
75 static v8::Local<v8::Object> createExceptionDetails(v8::Isolate*, v8::Local< v8::Message>); 73 static v8::Local<v8::Object> createExceptionDetails(v8::Isolate*, v8::Local< v8::Message>);
76 74
77 // FIXME: store this template in per isolate data 75 // FIXME: store this template in per isolate data
78 void setWrapperTemplate(v8::Local<v8::FunctionTemplate> wrapperTemplate, v8: :Isolate* isolate) { m_wrapperTemplate.Reset(isolate, wrapperTemplate); } 76 void setWrapperTemplate(v8::Local<v8::FunctionTemplate> wrapperTemplate, v8: :Isolate* isolate) { m_wrapperTemplate.Reset(isolate, wrapperTemplate); }
79 v8::Local<v8::FunctionTemplate> wrapperTemplate(v8::Isolate* isolate) { retu rn v8::Local<v8::FunctionTemplate>::New(isolate, m_wrapperTemplate); } 77 v8::Local<v8::FunctionTemplate> wrapperTemplate(v8::Isolate* isolate) { retu rn v8::Local<v8::FunctionTemplate>::New(isolate, m_wrapperTemplate); }
80 78
81 V8DebuggerClient* client() { return m_client; }
82
83 private: 79 private:
84 JavaScriptCallFrame(V8DebuggerClient*, v8::Local<v8::Context> debuggerContex t, v8::Local<v8::Object> callFrame); 80 JavaScriptCallFrame(v8::Local<v8::Context> debuggerContext, v8::Local<v8::Ob ject> callFrame);
85 81
86 int callV8FunctionReturnInt(const char* name) const; 82 int callV8FunctionReturnInt(const char* name) const;
87 String16 callV8FunctionReturnString(const char* name) const; 83 String16 callV8FunctionReturnString(const char* name) const;
88 v8::Local<v8::Value> callScopeLocationFunction(const char* name, int scopeIn dex) const; 84 v8::Local<v8::Value> callScopeLocationFunction(const char* name, int scopeIn dex) const;
89 85
90 V8DebuggerClient* m_client;
91 v8::Isolate* m_isolate; 86 v8::Isolate* m_isolate;
92 OwnPtr<JavaScriptCallFrame> m_caller; 87 OwnPtr<JavaScriptCallFrame> m_caller;
93 v8::Global<v8::Context> m_debuggerContext; 88 v8::Global<v8::Context> m_debuggerContext;
94 v8::Global<v8::Object> m_callFrame; 89 v8::Global<v8::Object> m_callFrame;
95 v8::Global<v8::FunctionTemplate> m_wrapperTemplate; 90 v8::Global<v8::FunctionTemplate> m_wrapperTemplate;
96 }; 91 };
97 92
98 } // namespace blink 93 } // namespace blink
99 94
100 #endif // JavaScriptCallFrame_h 95 #endif // JavaScriptCallFrame_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698