#include "pdf/post_message_receiver.h"
#include <memory>
#include <string>
#include <utility>
#include <vector>
#include "base/check_op.h"
#include "base/functional/bind.h"
#include "base/location.h"
#include "base/memory/scoped_refptr.h"
#include "base/memory/weak_ptr.h"
#include "base/task/sequenced_task_runner.h"
#include "base/values.h"
#include "gin/function_template.h"
#include "gin/handle.h"
#include "gin/interceptor.h"
#include "gin/object_template_builder.h"
#include "gin/public/wrapper_info.h"
#include "gin/wrappable.h"
#include "pdf/v8_value_converter.h"
#include "v8/include/v8.h"
namespace chrome_pdf {
namespace {
constexpr char kPropertyName[] = …;
}
gin::WrapperInfo PostMessageReceiver::kWrapperInfo = …;
v8::Local<v8::Object> PostMessageReceiver::Create(
v8::Isolate* isolate,
base::WeakPtr<V8ValueConverter> v8_value_converter,
base::WeakPtr<Client> client,
scoped_refptr<base::SequencedTaskRunner> client_task_runner) { … }
PostMessageReceiver::~PostMessageReceiver() = default;
PostMessageReceiver::PostMessageReceiver(
v8::Isolate* isolate,
base::WeakPtr<V8ValueConverter> v8_value_converter,
base::WeakPtr<Client> client,
scoped_refptr<base::SequencedTaskRunner> client_task_runner)
: … { … }
gin::ObjectTemplateBuilder PostMessageReceiver::GetObjectTemplateBuilder(
v8::Isolate* isolate) { … }
const char* PostMessageReceiver::GetTypeName() { … }
v8::Local<v8::Value> PostMessageReceiver::GetNamedProperty(
v8::Isolate* isolate,
const std::string& property) { … }
std::vector<std::string> PostMessageReceiver::EnumerateNamedProperties(
v8::Isolate* isolate) { … }
v8::Local<v8::FunctionTemplate> PostMessageReceiver::GetFunctionTemplate() { … }
void PostMessageReceiver::PostMessage(v8::Local<v8::Value> message) { … }
}