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

Side by Side Diff: Source/bindings/tests/results/V8TestObjectPython.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 V8TestObjectPython { 44 class V8TestObjectPython {
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 TestObjectPython* toNative(v8::Handle<v8::Object> object) 49 static TestObjectPython* 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 TestObjectPython* toNativeWithTypeCheck(v8::Isolate*, v8::Handle<v8:: Value>); 53 static TestObjectPython* 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 customVoidMethodMethodCustom(const v8::FunctionCallbackInfo<v8:: Value>&); 56 static void customVoidMethodMethodCustom(const v8::FunctionCallbackInfo<v8:: Value>&);
57 #if ENABLE(CONDITION) 57 #if ENABLE(CONDITION)
58 static void conditionalConditionCustomVoidMethodMethodCustom(const v8::Funct ionCallbackInfo<v8::Value>&); 58 static void conditionalConditionCustomVoidMethodMethodCustom(const v8::Funct ionCallbackInfo<v8::Value>&);
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after
116 } 116 }
117 if (DOMDataStore::setReturnValueFromWrapper<V8TestObjectPython>(callbackInfo .GetReturnValue(), impl)) 117 if (DOMDataStore::setReturnValueFromWrapper<V8TestObjectPython>(callbackInfo .GetReturnValue(), impl))
118 return; 118 return;
119 v8::Handle<v8::Object> wrapper = wrap(impl, callbackInfo.Holder(), callbackI nfo.GetIsolate()); 119 v8::Handle<v8::Object> wrapper = wrap(impl, callbackInfo.Holder(), callbackI nfo.GetIsolate());
120 v8SetReturnValue(callbackInfo, wrapper); 120 v8SetReturnValue(callbackInfo, wrapper);
121 } 121 }
122 122
123 template<typename CallbackInfo> 123 template<typename CallbackInfo>
124 inline void v8SetReturnValueForMainWorld(const CallbackInfo& callbackInfo, TestO bjectPython* impl) 124 inline void v8SetReturnValueForMainWorld(const CallbackInfo& callbackInfo, TestO bjectPython* impl)
125 { 125 {
126 ASSERT(worldType(callbackInfo.GetIsolate()) == MainWorld); 126 ASSERT(DOMWrapperWorld::current(callbackInfo.GetIsolate())->isMainWorld());
127 if (UNLIKELY(!impl)) { 127 if (UNLIKELY(!impl)) {
128 v8SetReturnValueNull(callbackInfo); 128 v8SetReturnValueNull(callbackInfo);
129 return; 129 return;
130 } 130 }
131 if (DOMDataStore::setReturnValueFromWrapperForMainWorld<V8TestObjectPython>( callbackInfo.GetReturnValue(), impl)) 131 if (DOMDataStore::setReturnValueFromWrapperForMainWorld<V8TestObjectPython>( callbackInfo.GetReturnValue(), impl))
132 return; 132 return;
133 v8::Handle<v8::Value> wrapper = wrap(impl, callbackInfo.Holder(), callbackIn fo.GetIsolate()); 133 v8::Handle<v8::Value> wrapper = wrap(impl, callbackInfo.Holder(), callbackIn fo.GetIsolate());
134 v8SetReturnValue(callbackInfo, wrapper); 134 v8SetReturnValue(callbackInfo, wrapper);
135 } 135 }
136 136
(...skipping 28 matching lines...) Expand all
165 } 165 }
166 166
167 template<class CallbackInfo, class Wrappable> 167 template<class CallbackInfo, class Wrappable>
168 inline void v8SetReturnValueFast(const CallbackInfo& callbackInfo, PassRefPtr<Te stObjectPython> impl, Wrappable* wrappable) 168 inline void v8SetReturnValueFast(const CallbackInfo& callbackInfo, PassRefPtr<Te stObjectPython> impl, Wrappable* wrappable)
169 { 169 {
170 v8SetReturnValueFast(callbackInfo, impl.get(), wrappable); 170 v8SetReturnValueFast(callbackInfo, impl.get(), wrappable);
171 } 171 }
172 172
173 } 173 }
174 #endif // V8TestObjectPython_h 174 #endif // V8TestObjectPython_h
OLDNEW
« no previous file with comments | « Source/bindings/tests/results/V8TestObject.cpp ('k') | Source/bindings/tests/results/V8TestObjectPython.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698