archieve-projects/微信机器人/node_modules/frida/dist/signals.js

41 lines
1.2 KiB
JavaScript
Executable File

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.SignalAdapter = exports.Signal = void 0;
class Signal {
constructor(signals, name) {
this.signals = signals;
this.name = name;
}
connect(handler) {
this.signals.connect(this.name, handler);
}
disconnect(handler) {
this.signals.disconnect(this.name, handler);
}
}
exports.Signal = Signal;
class SignalAdapter {
constructor(signals) {
this.signals = signals;
this.proxyHandlers = new Map();
}
connect(name, handler) {
const proxyHandler = this.getProxy(name, handler);
if (proxyHandler !== null) {
this.proxyHandlers.set(handler, proxyHandler);
this.signals.connect(name, proxyHandler);
}
else {
this.signals.connect(name, handler);
}
}
disconnect(name, handler) {
const proxyHandler = this.proxyHandlers.get(handler);
this.signals.disconnect(name, (proxyHandler !== undefined) ? proxyHandler : handler);
}
getProxy(name, userHandler) {
return null;
}
}
exports.SignalAdapter = SignalAdapter;