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

Side by Side Diff: Source/bindings/tests/results/V8TestInterfacePython2.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
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2013 Google Inc. All rights reserved. 2 * Copyright (C) 2013 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 27 matching lines...) Expand all
38 #include "bindings/v8/V8DOMWrapper.h" 38 #include "bindings/v8/V8DOMWrapper.h"
39 #include "bindings/v8/WrapperTypeInfo.h" 39 #include "bindings/v8/WrapperTypeInfo.h"
40 #include "heap/Handle.h" 40 #include "heap/Handle.h"
41 41
42 namespace WebCore { 42 namespace WebCore {
43 43
44 class V8TestInterfacePython2 { 44 class V8TestInterfacePython2 {
45 public: 45 public:
46 static bool hasInstance(v8::Handle<v8::Value>, v8::Isolate*); 46 static bool hasInstance(v8::Handle<v8::Value>, v8::Isolate*);
47 static v8::Handle<v8::Object> findInstanceInPrototypeChain(v8::Handle<v8::Va lue>, v8::Isolate*); 47 static v8::Handle<v8::Object> findInstanceInPrototypeChain(v8::Handle<v8::Va lue>, v8::Isolate*);
48 static v8::Handle<v8::FunctionTemplate> domTemplate(v8::Isolate*, WrapperWor ldType); 48 static v8::Handle<v8::FunctionTemplate> domTemplate(v8::Isolate*);
49 static TestInterfacePython2* toNative(v8::Handle<v8::Object> object) 49 static TestInterfacePython2* toNative(v8::Handle<v8::Object> object)
50 { 50 {
51 return fromInternalPointer(object->GetAlignedPointerFromInternalField(v8 DOMWrapperObjectIndex)); 51 return fromInternalPointer(object->GetAlignedPointerFromInternalField(v8 DOMWrapperObjectIndex));
52 } 52 }
53 static TestInterfacePython2* toNativeWithTypeCheck(v8::Isolate*, v8::Handle< v8::Value>); 53 static TestInterfacePython2* toNativeWithTypeCheck(v8::Isolate*, v8::Handle< v8::Value>);
54 static const WrapperTypeInfo wrapperTypeInfo; 54 static const WrapperTypeInfo wrapperTypeInfo;
55 static void derefObject(void*); 55 static void derefObject(void*);
56 static void visitDOMWrapper(void*, const v8::Persistent<v8::Object>&, v8::Is olate*); 56 static void visitDOMWrapper(void*, const v8::Persistent<v8::Object>&, v8::Is olate*);
57 static const int internalFieldCount = v8DefaultWrapperInternalFieldCount + 0 ; 57 static const int internalFieldCount = v8DefaultWrapperInternalFieldCount + 0 ;
58 static inline void* toInternalPointer(TestInterfacePython2* impl) 58 static inline void* toInternalPointer(TestInterfacePython2* impl)
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
93 } 93 }
94 if (DOMDataStore::setReturnValueFromWrapper<V8TestInterfacePython2>(callback Info.GetReturnValue(), impl)) 94 if (DOMDataStore::setReturnValueFromWrapper<V8TestInterfacePython2>(callback Info.GetReturnValue(), impl))
95 return; 95 return;
96 v8::Handle<v8::Object> wrapper = wrap(impl, callbackInfo.Holder(), callbackI nfo.GetIsolate()); 96 v8::Handle<v8::Object> wrapper = wrap(impl, callbackInfo.Holder(), callbackI nfo.GetIsolate());
97 v8SetReturnValue(callbackInfo, wrapper); 97 v8SetReturnValue(callbackInfo, wrapper);
98 } 98 }
99 99
100 template<typename CallbackInfo> 100 template<typename CallbackInfo>
101 inline void v8SetReturnValueForMainWorld(const CallbackInfo& callbackInfo, TestI nterfacePython2* impl) 101 inline void v8SetReturnValueForMainWorld(const CallbackInfo& callbackInfo, TestI nterfacePython2* impl)
102 { 102 {
103 ASSERT(worldType(callbackInfo.GetIsolate()) == MainWorld); 103 ASSERT(DOMWrapperWorld::current(callbackInfo.GetIsolate())->isMainWorld());
104 if (UNLIKELY(!impl)) { 104 if (UNLIKELY(!impl)) {
105 v8SetReturnValueNull(callbackInfo); 105 v8SetReturnValueNull(callbackInfo);
106 return; 106 return;
107 } 107 }
108 if (DOMDataStore::setReturnValueFromWrapperForMainWorld<V8TestInterfacePytho n2>(callbackInfo.GetReturnValue(), impl)) 108 if (DOMDataStore::setReturnValueFromWrapperForMainWorld<V8TestInterfacePytho n2>(callbackInfo.GetReturnValue(), impl))
109 return; 109 return;
110 v8::Handle<v8::Value> wrapper = wrap(impl, callbackInfo.Holder(), callbackIn fo.GetIsolate()); 110 v8::Handle<v8::Value> wrapper = wrap(impl, callbackInfo.Holder(), callbackIn fo.GetIsolate());
111 v8SetReturnValue(callbackInfo, wrapper); 111 v8SetReturnValue(callbackInfo, wrapper);
112 } 112 }
113 113
(...skipping 28 matching lines...) Expand all
142 } 142 }
143 143
144 template<class CallbackInfo, class Wrappable> 144 template<class CallbackInfo, class Wrappable>
145 inline void v8SetReturnValueFast(const CallbackInfo& callbackInfo, PassRefPtr<Te stInterfacePython2> impl, Wrappable* wrappable) 145 inline void v8SetReturnValueFast(const CallbackInfo& callbackInfo, PassRefPtr<Te stInterfacePython2> impl, Wrappable* wrappable)
146 { 146 {
147 v8SetReturnValueFast(callbackInfo, impl.get(), wrappable); 147 v8SetReturnValueFast(callbackInfo, impl.get(), wrappable);
148 } 148 }
149 149
150 } 150 }
151 #endif // V8TestInterfacePython2_h 151 #endif // V8TestInterfacePython2_h
OLDNEW
« no previous file with comments | « Source/bindings/tests/results/V8TestInterfacePython.cpp ('k') | Source/bindings/tests/results/V8TestInterfacePython2.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698