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

Unified Diff: Source/bindings/core/v8/V8Binding.h

Issue 1163893002: binding: Supports static operations/attrs returning non-primitive types. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Added a comment. Created 5 years, 7 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 side-by-side diff with in-line comments
Download patch
Index: Source/bindings/core/v8/V8Binding.h
diff --git a/Source/bindings/core/v8/V8Binding.h b/Source/bindings/core/v8/V8Binding.h
index 1e3c867b3c3c7134403e27a891b05342e497cfb9..39c992f517297f0d187ad2c6a25d2bec673d8238 100644
--- a/Source/bindings/core/v8/V8Binding.h
+++ b/Source/bindings/core/v8/V8Binding.h
@@ -192,7 +192,7 @@ inline void v8SetReturnValueStringOrUndefined(const CallbackInfo& info, const St
}
template<typename CallbackInfo>
-inline void v8SetReturnValue(const CallbackInfo& callbackInfo, ScriptWrappable* impl)
+inline void v8SetReturnValue(const CallbackInfo& callbackInfo, ScriptWrappable* impl, v8::Local<v8::Object> creationContext)
{
if (UNLIKELY(!impl)) {
v8SetReturnValueNull(callbackInfo);
@@ -200,11 +200,17 @@ inline void v8SetReturnValue(const CallbackInfo& callbackInfo, ScriptWrappable*
}
if (DOMDataStore::setReturnValue(callbackInfo.GetReturnValue(), impl))
return;
- v8::Local<v8::Object> wrapper = impl->wrap(callbackInfo.GetIsolate(), callbackInfo.Holder());
+ v8::Local<v8::Object> wrapper = impl->wrap(callbackInfo.GetIsolate(), creationContext);
v8SetReturnValue(callbackInfo, wrapper);
}
template<typename CallbackInfo>
+inline void v8SetReturnValue(const CallbackInfo& callbackInfo, ScriptWrappable* impl)
+{
+ v8SetReturnValue(callbackInfo, impl, callbackInfo.Holder());
+}
+
+template<typename CallbackInfo>
inline void v8SetReturnValue(const CallbackInfo& callbackInfo, Node* impl)
{
if (UNLIKELY(!impl)) {

Powered by Google App Engine
This is Rietveld 408576698