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

Side by Side Diff: Source/bindings/templates/interface.h

Issue 176963017: Remove WrapperWorldType from V8 binding (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 6 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 | Annotate | Revision Log
« no previous file with comments | « no previous file | Source/bindings/templates/interface.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 {# http://www.chromium.org/blink/coding-style#TOC-License #} 1 {# http://www.chromium.org/blink/coding-style#TOC-License #}
2 /* 2 /*
3 * Copyright (C) 2013 Google Inc. All rights reserved. 3 * Copyright (C) 2013 Google Inc. All rights reserved.
4 * 4 *
5 * Redistribution and use in source and binary forms, with or without 5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are 6 * modification, are permitted provided that the following conditions are
7 * met: 7 * met:
8 * 8 *
9 * * Redistributions of source code must retain the above copyright 9 * * Redistributions of source code must retain the above copyright
10 * notice, this list of conditions and the following disclaimer. 10 * notice, this list of conditions and the following disclaimer.
(...skipping 30 matching lines...) Expand all
41 {% endfor %} 41 {% endfor %}
42 42
43 namespace WebCore { 43 namespace WebCore {
44 44
45 {% if has_event_constructor %} 45 {% if has_event_constructor %}
46 class Dictionary; 46 class Dictionary;
47 {% endif %} 47 {% endif %}
48 {% if named_constructor %} 48 {% if named_constructor %}
49 class {{v8_class}}Constructor { 49 class {{v8_class}}Constructor {
50 public: 50 public:
51 static v8::Handle<v8::FunctionTemplate> domTemplate(v8::Isolate*, WrapperWor ldType); 51 static v8::Handle<v8::FunctionTemplate> domTemplate(v8::Isolate*);
52 static const WrapperTypeInfo wrapperTypeInfo; 52 static const WrapperTypeInfo wrapperTypeInfo;
53 }; 53 };
54 54
55 {% endif %} 55 {% endif %}
56 class {{v8_class}} { 56 class {{v8_class}} {
57 public: 57 public:
58 static bool hasInstance(v8::Handle<v8::Value>, v8::Isolate*); 58 static bool hasInstance(v8::Handle<v8::Value>, v8::Isolate*);
59 static v8::Handle<v8::Object> findInstanceInPrototypeChain(v8::Handle<v8::Va lue>, v8::Isolate*); 59 static v8::Handle<v8::Object> findInstanceInPrototypeChain(v8::Handle<v8::Va lue>, v8::Isolate*);
60 static v8::Handle<v8::FunctionTemplate> domTemplate(v8::Isolate*, WrapperWor ldType); 60 static v8::Handle<v8::FunctionTemplate> domTemplate(v8::Isolate*);
61 static {{cpp_class}}* toNative(v8::Handle<v8::Object> object) 61 static {{cpp_class}}* toNative(v8::Handle<v8::Object> object)
62 { 62 {
63 return fromInternalPointer(object->GetAlignedPointerFromInternalField(v8 DOMWrapperObjectIndex)); 63 return fromInternalPointer(object->GetAlignedPointerFromInternalField(v8 DOMWrapperObjectIndex));
64 } 64 }
65 static {{cpp_class}}* toNativeWithTypeCheck(v8::Isolate*, v8::Handle<v8::Val ue>); 65 static {{cpp_class}}* toNativeWithTypeCheck(v8::Isolate*, v8::Handle<v8::Val ue>);
66 static const WrapperTypeInfo wrapperTypeInfo; 66 static const WrapperTypeInfo wrapperTypeInfo;
67 static void derefObject(void*); 67 static void derefObject(void*);
68 {% if has_visit_dom_wrapper %} 68 {% if has_visit_dom_wrapper %}
69 static void visitDOMWrapper(void*, const v8::Persistent<v8::Object>&, v8::Is olate*); 69 static void visitDOMWrapper(void*, const v8::Persistent<v8::Object>&, v8::Is olate*);
70 {% endif %} 70 {% endif %}
71 {% if is_active_dom_object %} 71 {% if is_active_dom_object %}
72 static ActiveDOMObject* toActiveDOMObject(v8::Handle<v8::Object>); 72 static ActiveDOMObject* toActiveDOMObject(v8::Handle<v8::Object>);
73 {% endif %} 73 {% endif %}
74 {% if is_event_target %} 74 {% if is_event_target %}
75 static EventTarget* toEventTarget(v8::Handle<v8::Object>); 75 static EventTarget* toEventTarget(v8::Handle<v8::Object>);
76 {% endif %} 76 {% endif %}
77 {% if interface_name == 'Window' %} 77 {% if interface_name == 'Window' %}
78 static v8::Handle<v8::ObjectTemplate> getShadowObjectTemplate(v8::Isolate*, WrapperWorldType); 78 static v8::Handle<v8::ObjectTemplate> getShadowObjectTemplate(v8::Isolate*);
79 {% endif %} 79 {% endif %}
80 {% for method in methods if method.is_custom %} 80 {% for method in methods if method.is_custom %}
81 {% filter conditional(method.conditional_string) %} 81 {% filter conditional(method.conditional_string) %}
82 static void {{method.name}}MethodCustom(const v8::FunctionCallbackInfo<v8::V alue>&); 82 static void {{method.name}}MethodCustom(const v8::FunctionCallbackInfo<v8::V alue>&);
83 {% endfilter %} 83 {% endfilter %}
84 {% endfor %} 84 {% endfor %}
85 {% if constructors or has_custom_constructor or has_event_constructor %} 85 {% if constructors or has_custom_constructor or has_event_constructor %}
86 static void constructorCallback(const v8::FunctionCallbackInfo<v8::Value>&); 86 static void constructorCallback(const v8::FunctionCallbackInfo<v8::Value>&);
87 {% endif %} 87 {% endif %}
88 {% if has_custom_constructor %} 88 {% if has_custom_constructor %}
(...skipping 161 matching lines...) Expand 10 before | Expand all | Expand 10 after
250 } 250 }
251 if (DOMDataStore::setReturnValueFromWrapper<{{v8_class}}>(callbackInfo.GetRe turnValue(), impl)) 251 if (DOMDataStore::setReturnValueFromWrapper<{{v8_class}}>(callbackInfo.GetRe turnValue(), impl))
252 return; 252 return;
253 v8::Handle<v8::Object> wrapper = wrap(impl, callbackInfo.Holder(), callbackI nfo.GetIsolate()); 253 v8::Handle<v8::Object> wrapper = wrap(impl, callbackInfo.Holder(), callbackI nfo.GetIsolate());
254 v8SetReturnValue(callbackInfo, wrapper); 254 v8SetReturnValue(callbackInfo, wrapper);
255 } 255 }
256 256
257 template<typename CallbackInfo> 257 template<typename CallbackInfo>
258 inline void v8SetReturnValueForMainWorld(const CallbackInfo& callbackInfo, {{cpp _class}}* impl) 258 inline void v8SetReturnValueForMainWorld(const CallbackInfo& callbackInfo, {{cpp _class}}* impl)
259 { 259 {
260 ASSERT(worldType(callbackInfo.GetIsolate()) == MainWorld); 260 ASSERT(DOMWrapperWorld::current(callbackInfo.GetIsolate())->isMainWorld());
261 if (UNLIKELY(!impl)) { 261 if (UNLIKELY(!impl)) {
262 v8SetReturnValueNull(callbackInfo); 262 v8SetReturnValueNull(callbackInfo);
263 return; 263 return;
264 } 264 }
265 if (DOMDataStore::setReturnValueFromWrapperForMainWorld<{{v8_class}}>(callba ckInfo.GetReturnValue(), impl)) 265 if (DOMDataStore::setReturnValueFromWrapperForMainWorld<{{v8_class}}>(callba ckInfo.GetReturnValue(), impl))
266 return; 266 return;
267 v8::Handle<v8::Value> wrapper = wrap(impl, callbackInfo.Holder(), callbackIn fo.GetIsolate()); 267 v8::Handle<v8::Value> wrapper = wrap(impl, callbackInfo.Holder(), callbackIn fo.GetIsolate());
268 v8SetReturnValue(callbackInfo, wrapper); 268 v8SetReturnValue(callbackInfo, wrapper);
269 } 269 }
270 270
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
305 v8SetReturnValueFast(callbackInfo, impl.get(), wrappable); 305 v8SetReturnValueFast(callbackInfo, impl.get(), wrappable);
306 } 306 }
307 307
308 {% if has_event_constructor %} 308 {% if has_event_constructor %}
309 bool initialize{{cpp_class}}({{cpp_class}}Init&, const Dictionary&, ExceptionSta te&, const v8::FunctionCallbackInfo<v8::Value>& info, const String& = ""); 309 bool initialize{{cpp_class}}({{cpp_class}}Init&, const Dictionary&, ExceptionSta te&, const v8::FunctionCallbackInfo<v8::Value>& info, const String& = "");
310 310
311 {% endif %} 311 {% endif %}
312 } 312 }
313 {% endfilter %} 313 {% endfilter %}
314 #endif // {{v8_class}}_h 314 #endif // {{v8_class}}_h
OLDNEW
« no previous file with comments | « no previous file | Source/bindings/templates/interface.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698