Commit e06e714c authored by Jeremy Apthorp's avatar Jeremy Apthorp Committed by Commit Bot

construct gin::ObjectTemplateBuilder with an ObjectTemplate

This allows customizing the prototype of the constructed object.

Change-Id: Id302d6f3202468963f6659e6df64726bb6bdc9d7
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2119183
Commit-Queue: Jeremy Apthorp <jeremya@chromium.org>
Reviewed-by: default avatarJeremy Roman <jbroman@chromium.org>
Cr-Commit-Position: refs/heads/master@{#753347}
parent 52df58eb
......@@ -145,9 +145,14 @@ ObjectTemplateBuilder::ObjectTemplateBuilder(v8::Isolate* isolate)
ObjectTemplateBuilder::ObjectTemplateBuilder(v8::Isolate* isolate,
const char* type_name)
: isolate_(isolate),
type_name_(type_name),
template_(v8::ObjectTemplate::New(isolate)) {
: ObjectTemplateBuilder(isolate,
type_name,
v8::ObjectTemplate::New(isolate)) {}
ObjectTemplateBuilder::ObjectTemplateBuilder(v8::Isolate* isolate,
const char* type_name,
v8::Local<v8::ObjectTemplate> tmpl)
: isolate_(isolate), type_name_(type_name), template_(tmpl) {
template_->SetInternalFieldCount(kNumberOfInternalFields);
}
......
......@@ -46,6 +46,9 @@ class GIN_EXPORT ObjectTemplateBuilder {
public:
explicit ObjectTemplateBuilder(v8::Isolate* isolate);
ObjectTemplateBuilder(v8::Isolate* isolate, const char* type_name);
ObjectTemplateBuilder(v8::Isolate* isolate,
const char* type_name,
v8::Local<v8::ObjectTemplate> tmpl);
ObjectTemplateBuilder(const ObjectTemplateBuilder& other);
~ObjectTemplateBuilder();
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment