#include "third_party/blink/renderer/platform/bindings/v8_per_context_data.h"
#include <stdlib.h>
#include <memory>
#include <utility>
#include "base/memory/ptr_util.h"
#include "components/crash/core/common/crash_key.h"
#include "third_party/blink/renderer/platform/bindings/origin_trial_features.h"
#include "third_party/blink/renderer/platform/bindings/script_state.h"
#include "third_party/blink/renderer/platform/bindings/v8_binding.h"
#include "third_party/blink/renderer/platform/bindings/v8_object_constructor.h"
#include "third_party/blink/renderer/platform/bindings/wrapper_type_info.h"
#include "third_party/blink/renderer/platform/instrumentation/instance_counters.h"
namespace blink {
namespace {
constexpr char kContextLabel[] = …;
}
V8PerContextData::V8PerContextData(v8::Local<v8::Context> context)
: … { … }
V8PerContextData::~V8PerContextData() { … }
void V8PerContextData::Dispose() { … }
void V8PerContextData::Trace(Visitor* visitor) const { … }
v8::Local<v8::Object> V8PerContextData::CreateWrapperFromCacheSlowCase(
v8::Isolate* isolate,
const WrapperTypeInfo* type) { … }
v8::Local<v8::Function> V8PerContextData::ConstructorForTypeSlowCase(
const WrapperTypeInfo* type) { … }
v8::Local<v8::Object> V8PerContextData::PrototypeForType(
const WrapperTypeInfo* type) { … }
bool V8PerContextData::GetExistingConstructorAndPrototypeForType(
const WrapperTypeInfo* type,
v8::Local<v8::Object>* prototype_object,
v8::Local<v8::Function>* interface_object) { … }
void V8PerContextData::AddData(const char* key, Data* data) { … }
void V8PerContextData::ClearData(const char* key) { … }
V8PerContextData::Data* V8PerContextData::GetData(const char* key) { … }
}