blob: 9815b676797260acf9a6a9a674d416be2515b19f [file] [log] [blame]
[email protected]314cde12013-11-23 20:26:511// Copyright 2013 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#include "gin/function_template.h"
6
7#include "gin/per_isolate_data.h"
8
9namespace gin {
10
11WrapperInfo CallbackHolderBase::kWrapperInfo = { kEmbedderNativeGin };
12
13// static
14void CallbackHolderBase::EnsureRegistered(PerIsolateData* isolate_data) {
15 if (!isolate_data->GetObjectTemplate(&kWrapperInfo).IsEmpty())
16 return;
17 v8::Handle<v8::ObjectTemplate> templ(v8::ObjectTemplate::New());
18 templ->SetInternalFieldCount(kNumberOfInternalFields);
19 isolate_data->SetObjectTemplate(&kWrapperInfo, templ);
20}
21
22WrapperInfo* CallbackHolderBase::GetWrapperInfo() {
23 return &kWrapperInfo;
24}
25
26} // namespace gin