33 lines
1.1 KiB
C++
33 lines
1.1 KiB
C++
|
// Copyright 2014 Cheng Zhao. All rights reserved.
|
||
|
// Use of this source code is governed by MIT license that can be found in the
|
||
|
// LICENSE file.
|
||
|
|
||
|
#include "shell/common/gin_helper/persistent_dictionary.h"
|
||
|
|
||
|
namespace gin_helper {
|
||
|
|
||
|
PersistentDictionary::PersistentDictionary() = default;
|
||
|
|
||
|
PersistentDictionary::PersistentDictionary(v8::Isolate* isolate,
|
||
|
v8::Local<v8::Object> object)
|
||
|
: isolate_(isolate), handle_(isolate, object) {}
|
||
|
|
||
|
PersistentDictionary::PersistentDictionary(const PersistentDictionary& other)
|
||
|
: isolate_(other.isolate_),
|
||
|
handle_(isolate_, v8::Local<v8::Object>::New(isolate_, other.handle_)) {}
|
||
|
|
||
|
PersistentDictionary::~PersistentDictionary() = default;
|
||
|
|
||
|
PersistentDictionary& PersistentDictionary::operator=(
|
||
|
const PersistentDictionary& other) {
|
||
|
isolate_ = other.isolate_;
|
||
|
handle_.Reset(isolate_, v8::Local<v8::Object>::New(isolate_, other.handle_));
|
||
|
return *this;
|
||
|
}
|
||
|
|
||
|
v8::Local<v8::Object> PersistentDictionary::GetHandle() const {
|
||
|
return v8::Local<v8::Object>::New(isolate_, handle_);
|
||
|
}
|
||
|
|
||
|
} // namespace gin_helper
|