diff options
author | jochen@chromium.org <jochen@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-12-12 09:40:50 +0000 |
---|---|---|
committer | jochen@chromium.org <jochen@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-12-12 09:40:50 +0000 |
commit | b4acaf8b4e3092096deebc23f1b60bea0773379a (patch) | |
tree | 91fb0223e6c27e1c4675720d78e80b5c3b133812 /gin/wrappable_unittest.cc | |
parent | ab3ed7e4ac3fbe6666f2c0009642b30563fc20d6 (diff) | |
download | chromium_src-b4acaf8b4e3092096deebc23f1b60bea0773379a.zip chromium_src-b4acaf8b4e3092096deebc23f1b60bea0773379a.tar.gz chromium_src-b4acaf8b4e3092096deebc23f1b60bea0773379a.tar.bz2 |
[gin] Declare a wrappable's kWrapperInfo on the class deriving from Wrappable
Otherwise, we need to put INIT_WRAPPABLE() in namespace gin no matter
where the derived class is declared.
I pulled this out from https://codereview.chromium.org/111083005/
BUG=none
R=dcarney@chromium.org
TBR=aa@chromium.org
Review URL: https://codereview.chromium.org/113163007
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@240271 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'gin/wrappable_unittest.cc')
-rw-r--r-- | gin/wrappable_unittest.cc | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/gin/wrappable_unittest.cc b/gin/wrappable_unittest.cc index 7ffc0ca..3499eed 100644 --- a/gin/wrappable_unittest.cc +++ b/gin/wrappable_unittest.cc @@ -17,6 +17,8 @@ namespace gin { class MyObject : public Wrappable<MyObject> { public: + static WrapperInfo kWrapperInfo; + static gin::Handle<MyObject> Create(v8::Isolate* isolate) { return CreateHandle(isolate, new MyObject()); } @@ -32,14 +34,18 @@ class MyObject : public Wrappable<MyObject> { }; class MyObject2 : public Wrappable<MyObject2> { + public: + static WrapperInfo kWrapperInfo; }; class MyObjectBlink : public Wrappable<MyObjectBlink> { + public: + static WrapperInfo kWrapperInfo; }; -INIT_WRAPPABLE(gin::MyObject); -INIT_WRAPPABLE(gin::MyObject2); -INIT_WRAPPABLE(gin::MyObjectBlink); +WrapperInfo MyObject::kWrapperInfo = { kEmbedderNativeGin }; +WrapperInfo MyObject2::kWrapperInfo = { kEmbedderNativeGin }; +WrapperInfo MyObjectBlink::kWrapperInfo = { kEmbedderNativeGin }; void RegisterTemplates(v8::Isolate* isolate) { PerIsolateData* data = PerIsolateData::From(isolate); |