Sha256: 2721065e13c7a27002502ae203a17e22a85d2df83c14454870b4e7975bf649e7
Contents?: true
Size: 667 Bytes
Versions: 22
Compression:
Stored size: 667 Bytes
Contents
module.exports = ProxyHandler; function ProxyHandler(cbs){ this._cbs = cbs || {}; } var EVENTS = require("./").EVENTS; Object.keys(EVENTS).forEach(function(name){ if(EVENTS[name] === 0){ name = "on" + name; ProxyHandler.prototype[name] = function(){ if(this._cbs[name]) this._cbs[name](); }; } else if(EVENTS[name] === 1){ name = "on" + name; ProxyHandler.prototype[name] = function(a){ if(this._cbs[name]) this._cbs[name](a); }; } else if(EVENTS[name] === 2){ name = "on" + name; ProxyHandler.prototype[name] = function(a, b){ if(this._cbs[name]) this._cbs[name](a, b); }; } else { throw Error("wrong number of arguments"); } });
Version data entries
22 entries across 19 versions & 5 rubygems