#include "gin/object_template_builder.h"
#include <stdint.h>
#include <string_view>
#include "gin/interceptor.h"
#include "gin/per_isolate_data.h"
#include "gin/public/wrapper_info.h"
#include "v8/include/v8-exception.h"
#include "v8/include/v8-template.h"
namespace gin {
namespace {
WrappableBase* WrappableFromV8(v8::Isolate* isolate,
v8::Local<v8::Value> val) { … }
NamedPropertyInterceptor* NamedInterceptorFromV8(v8::Isolate* isolate,
v8::Local<v8::Value> val) { … }
IndexedPropertyInterceptor* IndexedInterceptorFromV8(
v8::Isolate* isolate,
v8::Local<v8::Value> val) { … }
v8::Intercepted NamedPropertyGetter(
v8::Local<v8::Name> property,
const v8::PropertyCallbackInfo<v8::Value>& info) { … }
v8::Intercepted NamedPropertySetter(
v8::Local<v8::Name> property,
v8::Local<v8::Value> value,
const v8::PropertyCallbackInfo<void>& info) { … }
v8::Intercepted NamedPropertyQuery(
v8::Local<v8::Name> property,
const v8::PropertyCallbackInfo<v8::Integer>& info) { … }
void NamedPropertyEnumerator(const v8::PropertyCallbackInfo<v8::Array>& info) { … }
v8::Intercepted IndexedPropertyQuery(
uint32_t index,
const v8::PropertyCallbackInfo<v8::Integer>& info) { … }
v8::Intercepted IndexedPropertyGetter(
uint32_t index,
const v8::PropertyCallbackInfo<v8::Value>& info) { … }
v8::Intercepted IndexedPropertySetter(
uint32_t index,
v8::Local<v8::Value> value,
const v8::PropertyCallbackInfo<void>& info) { … }
void IndexedPropertyEnumerator(
const v8::PropertyCallbackInfo<v8::Array>& info) { … }
void Constructor(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
}
ObjectTemplateBuilder::ObjectTemplateBuilder(v8::Isolate* isolate)
: … { … }
ObjectTemplateBuilder::ObjectTemplateBuilder(v8::Isolate* isolate,
const char* type_name)
: … { … }
ObjectTemplateBuilder::ObjectTemplateBuilder(
const ObjectTemplateBuilder& other) = default;
ObjectTemplateBuilder::~ObjectTemplateBuilder() = default;
ObjectTemplateBuilder& ObjectTemplateBuilder::AddNamedPropertyInterceptor() { … }
ObjectTemplateBuilder& ObjectTemplateBuilder::AddIndexedPropertyInterceptor() { … }
ObjectTemplateBuilder& ObjectTemplateBuilder::SetImpl(
const std::string_view& name,
v8::Local<v8::Data> val) { … }
ObjectTemplateBuilder& ObjectTemplateBuilder::SetImpl(v8::Local<v8::Name> name,
v8::Local<v8::Data> val) { … }
ObjectTemplateBuilder& ObjectTemplateBuilder::SetPropertyImpl(
const std::string_view& name,
v8::Local<v8::FunctionTemplate> getter,
v8::Local<v8::FunctionTemplate> setter) { … }
ObjectTemplateBuilder& ObjectTemplateBuilder::SetLazyDataPropertyImpl(
const std::string_view& name,
v8::AccessorNameGetterCallback callback,
v8::Local<v8::Value> data) { … }
v8::Local<v8::ObjectTemplate> ObjectTemplateBuilder::Build() { … }
}