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

Side by Side Diff: Source/bindings/core/v8/ModuleProxy.h

Issue 389903002: Split V8RecursionScope into core and modules. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 6 years, 5 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 | Annotate | Revision Log
« no previous file with comments | « no previous file | Source/bindings/core/v8/ModuleProxy.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 #ifndef ModuleProxy_h 5 #ifndef ModuleProxy_h
6 #define ModuleProxy_h 6 #define ModuleProxy_h
7 7
8 #include <v8.h> 8 #include <v8.h>
9 9
10 namespace WebCore { 10 namespace WebCore {
11 11
12 class Event; 12 class Event;
13 class EventTarget; 13 class EventTarget;
14 class ExecutionContext;
14 15
15 // A proxy class to invoke functions implemented in bindings/modules 16 // A proxy class to invoke functions implemented in bindings/modules
16 // from bindings/core. 17 // from bindings/core.
17 class ModuleProxy { 18 class ModuleProxy {
18 public: 19 public:
19 static ModuleProxy& moduleProxy(); 20 static ModuleProxy& moduleProxy();
20 21
21 v8::Handle<v8::Object> wrapForEvent(Event*, v8::Handle<v8::Object>, v8::Isol ate*); 22 v8::Handle<v8::Object> wrapForEvent(Event*, v8::Handle<v8::Object>, v8::Isol ate*);
22 void registerWrapForEvent(v8::Handle<v8::Object> (*wrapForEvent)(Event*, v8: :Handle<v8::Object>, v8::Isolate*)); 23 void registerWrapForEvent(v8::Handle<v8::Object> (*wrapForEvent)(Event*, v8: :Handle<v8::Object>, v8::Isolate*));
23 24
24 v8::Handle<v8::Value> toV8ForEventTarget(EventTarget*, v8::Handle<v8::Object >, v8::Isolate*); 25 v8::Handle<v8::Value> toV8ForEventTarget(EventTarget*, v8::Handle<v8::Object >, v8::Isolate*);
25 void registerToV8ForEventTarget(v8::Handle<v8::Value> (*toV8ForEventTarget)( EventTarget*, v8::Handle<v8::Object>, v8::Isolate*)); 26 void registerToV8ForEventTarget(v8::Handle<v8::Value> (*toV8ForEventTarget)( EventTarget*, v8::Handle<v8::Object>, v8::Isolate*));
26 27
28 void didLeaveScriptContextForRecursionScope(ExecutionContext&);
29 void registerDidLeaveScriptContextForRecursionScope(void (*didLeaveScriptCon text)(ExecutionContext&));
30
27 private: 31 private:
28 ModuleProxy() : m_wrapForEvent(0) { } 32 ModuleProxy() : m_wrapForEvent(0) { }
29 33
30 v8::Handle<v8::Object> (*m_wrapForEvent)(Event*, v8::Handle<v8::Object>, v8: :Isolate*); 34 v8::Handle<v8::Object> (*m_wrapForEvent)(Event*, v8::Handle<v8::Object>, v8: :Isolate*);
31 v8::Handle<v8::Value> (*m_toV8ForEventTarget)(EventTarget*, v8::Handle<v8::O bject>, v8::Isolate*); 35 v8::Handle<v8::Value> (*m_toV8ForEventTarget)(EventTarget*, v8::Handle<v8::O bject>, v8::Isolate*);
36 void (*m_didLeaveScriptContextForRecursionScope)(ExecutionContext&);
32 }; 37 };
33 38
34 } // namespace WebCore 39 } // namespace WebCore
35 40
36 #endif // ModuleProxy_h 41 #endif // ModuleProxy_h
OLDNEW
« no previous file with comments | « no previous file | Source/bindings/core/v8/ModuleProxy.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698