Clean up the code handling renderer callback
This commit is contained in:
parent
323ab92299
commit
cb91d4487b
4 changed files with 24 additions and 33 deletions
|
@ -12,33 +12,32 @@ namespace atom {
|
|||
|
||||
namespace api {
|
||||
|
||||
IDWeakMap::IDWeakMap() : id_weak_map_(new atom::IDWeakMap) {
|
||||
IDWeakMap::IDWeakMap() {
|
||||
}
|
||||
|
||||
IDWeakMap::~IDWeakMap() {
|
||||
id_weak_map_ = nullptr;
|
||||
}
|
||||
|
||||
void IDWeakMap::Set(v8::Isolate* isolate,
|
||||
int32_t id,
|
||||
v8::Local<v8::Object> object) {
|
||||
id_weak_map_->Set(isolate, id, object);
|
||||
id_weak_map_.Set(isolate, id, object);
|
||||
}
|
||||
|
||||
v8::Local<v8::Object> IDWeakMap::Get(v8::Isolate* isolate, int32_t id) {
|
||||
return id_weak_map_->Get(isolate, id).ToLocalChecked();
|
||||
return id_weak_map_.Get(isolate, id).ToLocalChecked();
|
||||
}
|
||||
|
||||
bool IDWeakMap::Has(int32_t id) {
|
||||
return id_weak_map_->Has(id);
|
||||
return id_weak_map_.Has(id);
|
||||
}
|
||||
|
||||
void IDWeakMap::Remove(int32_t id) {
|
||||
id_weak_map_->Remove(id);
|
||||
id_weak_map_.Remove(id);
|
||||
}
|
||||
|
||||
bool IDWeakMap::IsDestroyed() const {
|
||||
return !id_weak_map_;
|
||||
void IDWeakMap::Clear() {
|
||||
id_weak_map_.Clear();
|
||||
}
|
||||
|
||||
// static
|
||||
|
@ -48,7 +47,8 @@ void IDWeakMap::BuildPrototype(v8::Isolate* isolate,
|
|||
.SetMethod("set", &IDWeakMap::Set)
|
||||
.SetMethod("get", &IDWeakMap::Get)
|
||||
.SetMethod("has", &IDWeakMap::Has)
|
||||
.SetMethod("remove", &IDWeakMap::Remove);
|
||||
.SetMethod("remove", &IDWeakMap::Remove)
|
||||
.SetMethod("clear", &IDWeakMap::Clear);
|
||||
}
|
||||
|
||||
// static
|
||||
|
|
|
@ -24,17 +24,15 @@ class IDWeakMap : public mate::Wrappable {
|
|||
IDWeakMap();
|
||||
~IDWeakMap();
|
||||
|
||||
// mate::Wrappable:
|
||||
bool IsDestroyed() const override;
|
||||
|
||||
private:
|
||||
// Api for IDWeakMap.
|
||||
void Set(v8::Isolate* isolate, int32_t id, v8::Local<v8::Object> object);
|
||||
v8::Local<v8::Object> Get(v8::Isolate* isolate, int32_t id);
|
||||
bool Has(int32_t id);
|
||||
void Remove(int32_t id);
|
||||
void Clear();
|
||||
|
||||
atom::IDWeakMap* id_weak_map_;
|
||||
atom::IDWeakMap id_weak_map_;
|
||||
|
||||
DISALLOW_COPY_AND_ASSIGN(IDWeakMap);
|
||||
};
|
||||
|
|
|
@ -7,8 +7,9 @@ class CallbacksRegistry
|
|||
@callbacks = {}
|
||||
|
||||
add: (callback) ->
|
||||
if v8Util.getHiddenValue(callback, 'metaId')?
|
||||
return v8Util.getHiddenValue(callback, 'metaId')
|
||||
# The callback is already added.
|
||||
id = v8Util.getHiddenValue callback, 'callbackId'
|
||||
return id if id?
|
||||
|
||||
id = ++@nextId
|
||||
|
||||
|
@ -25,7 +26,7 @@ class CallbacksRegistry
|
|||
break
|
||||
|
||||
@callbacks[id] = callback
|
||||
v8Util.setHiddenValue callback, 'metaId', id
|
||||
v8Util.setHiddenValue callback, 'callbackId', id
|
||||
v8Util.setHiddenValue callback, 'location', filenameAndLine
|
||||
id
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue