refactor: use rest args where possible.
This commit is contained in:
parent
e89f285e9a
commit
fdb668aea3
@ -532,23 +532,17 @@ HTTPBase.prototype._initSockets = function _initSockets() {
|
|||||||
* @param {...Object} args
|
* @param {...Object} args
|
||||||
*/
|
*/
|
||||||
|
|
||||||
HTTPBase.prototype.to = function to(name) {
|
HTTPBase.prototype.to = function to(name, ...args) {
|
||||||
let list = this.channels.get(name);
|
let list = this.channels.get(name);
|
||||||
let args;
|
|
||||||
|
|
||||||
if (!list)
|
if (!list)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
assert(list.size > 0);
|
assert(list.size > 0);
|
||||||
|
|
||||||
args = new Array(arguments.length - 1);
|
|
||||||
|
|
||||||
for (let i = 1; i < arguments.length; i++)
|
|
||||||
args[i - 1] = arguments[i];
|
|
||||||
|
|
||||||
for (let item = list.head; item; item = item.next) {
|
for (let item = list.head; item; item = item.next) {
|
||||||
let socket = item.value;
|
let socket = item.value;
|
||||||
socket.emit.apply(socket, args);
|
socket.emit(...args);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -1607,16 +1601,11 @@ WebSocket.prototype.emit = function emit() {
|
|||||||
return this.socket.emit.apply(this.socket, arguments);
|
return this.socket.emit.apply(this.socket, arguments);
|
||||||
};
|
};
|
||||||
|
|
||||||
WebSocket.prototype.call = function call() {
|
WebSocket.prototype.call = function call(...args) {
|
||||||
let socket = this.socket;
|
let socket = this.socket;
|
||||||
let args = new Array(arguments.length);
|
|
||||||
|
|
||||||
for (let i = 0; i < arguments.length; i++)
|
|
||||||
args[i] = arguments[i];
|
|
||||||
|
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
args.push(co.wrap(resolve, reject));
|
args.push(co.wrap(resolve, reject));
|
||||||
socket.emit.apply(socket, args);
|
socket.emit(...args);
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@ -388,8 +388,8 @@ Logger.prototype.setLevel = function setLevel(name) {
|
|||||||
* @param {...Object} args
|
* @param {...Object} args
|
||||||
*/
|
*/
|
||||||
|
|
||||||
Logger.prototype.error = function error(err) {
|
Logger.prototype.error = function error(...args) {
|
||||||
let args;
|
let err = args[0];
|
||||||
|
|
||||||
if (this.level < Logger.levels.ERROR)
|
if (this.level < Logger.levels.ERROR)
|
||||||
return;
|
return;
|
||||||
@ -397,11 +397,6 @@ Logger.prototype.error = function error(err) {
|
|||||||
if (err instanceof Error)
|
if (err instanceof Error)
|
||||||
return this.logError(Logger.levels.ERROR, null, err);
|
return this.logError(Logger.levels.ERROR, null, err);
|
||||||
|
|
||||||
args = new Array(arguments.length);
|
|
||||||
|
|
||||||
for (let i = 0; i < args.length; i++)
|
|
||||||
args[i] = arguments[i];
|
|
||||||
|
|
||||||
this.log(Logger.levels.ERROR, null, args);
|
this.log(Logger.levels.ERROR, null, args);
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -411,8 +406,8 @@ Logger.prototype.error = function error(err) {
|
|||||||
* @param {...Object} args
|
* @param {...Object} args
|
||||||
*/
|
*/
|
||||||
|
|
||||||
Logger.prototype.warning = function warning(err) {
|
Logger.prototype.warning = function warning(...args) {
|
||||||
let args;
|
let err = args[0];
|
||||||
|
|
||||||
if (this.level < Logger.levels.WARNING)
|
if (this.level < Logger.levels.WARNING)
|
||||||
return;
|
return;
|
||||||
@ -420,11 +415,6 @@ Logger.prototype.warning = function warning(err) {
|
|||||||
if (err instanceof Error)
|
if (err instanceof Error)
|
||||||
return this.logError(Logger.levels.WARNING, null, err);
|
return this.logError(Logger.levels.WARNING, null, err);
|
||||||
|
|
||||||
args = new Array(arguments.length);
|
|
||||||
|
|
||||||
for (let i = 0; i < args.length; i++)
|
|
||||||
args[i] = arguments[i];
|
|
||||||
|
|
||||||
this.log(Logger.levels.WARNING, null, args);
|
this.log(Logger.levels.WARNING, null, args);
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -434,8 +424,8 @@ Logger.prototype.warning = function warning(err) {
|
|||||||
* @param {...Object} args
|
* @param {...Object} args
|
||||||
*/
|
*/
|
||||||
|
|
||||||
Logger.prototype.info = function info(err) {
|
Logger.prototype.info = function info(...args) {
|
||||||
let args;
|
let err = args[0];
|
||||||
|
|
||||||
if (this.level < Logger.levels.INFO)
|
if (this.level < Logger.levels.INFO)
|
||||||
return;
|
return;
|
||||||
@ -443,11 +433,6 @@ Logger.prototype.info = function info(err) {
|
|||||||
if (err instanceof Error)
|
if (err instanceof Error)
|
||||||
return this.logError(Logger.levels.INFO, null, err);
|
return this.logError(Logger.levels.INFO, null, err);
|
||||||
|
|
||||||
args = new Array(arguments.length);
|
|
||||||
|
|
||||||
for (let i = 0; i < args.length; i++)
|
|
||||||
args[i] = arguments[i];
|
|
||||||
|
|
||||||
this.log(Logger.levels.INFO, null, args);
|
this.log(Logger.levels.INFO, null, args);
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -457,8 +442,8 @@ Logger.prototype.info = function info(err) {
|
|||||||
* @param {...Object} args
|
* @param {...Object} args
|
||||||
*/
|
*/
|
||||||
|
|
||||||
Logger.prototype.debug = function debug(err) {
|
Logger.prototype.debug = function debug(...args) {
|
||||||
let args;
|
let err = args[0];
|
||||||
|
|
||||||
if (this.level < Logger.levels.DEBUG)
|
if (this.level < Logger.levels.DEBUG)
|
||||||
return;
|
return;
|
||||||
@ -466,11 +451,6 @@ Logger.prototype.debug = function debug(err) {
|
|||||||
if (err instanceof Error)
|
if (err instanceof Error)
|
||||||
return this.logError(Logger.levels.DEBUG, null, err);
|
return this.logError(Logger.levels.DEBUG, null, err);
|
||||||
|
|
||||||
args = new Array(arguments.length);
|
|
||||||
|
|
||||||
for (let i = 0; i < args.length; i++)
|
|
||||||
args[i] = arguments[i];
|
|
||||||
|
|
||||||
this.log(Logger.levels.DEBUG, null, args);
|
this.log(Logger.levels.DEBUG, null, args);
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -480,8 +460,8 @@ Logger.prototype.debug = function debug(err) {
|
|||||||
* @param {...Object} args
|
* @param {...Object} args
|
||||||
*/
|
*/
|
||||||
|
|
||||||
Logger.prototype.spam = function spam(err) {
|
Logger.prototype.spam = function spam(...args) {
|
||||||
let args;
|
let err = args[0];
|
||||||
|
|
||||||
if (this.level < Logger.levels.SPAM)
|
if (this.level < Logger.levels.SPAM)
|
||||||
return;
|
return;
|
||||||
@ -489,11 +469,6 @@ Logger.prototype.spam = function spam(err) {
|
|||||||
if (err instanceof Error)
|
if (err instanceof Error)
|
||||||
return this.logError(Logger.levels.SPAM, null, err);
|
return this.logError(Logger.levels.SPAM, null, err);
|
||||||
|
|
||||||
args = new Array(arguments.length);
|
|
||||||
|
|
||||||
for (let i = 0; i < args.length; i++)
|
|
||||||
args[i] = arguments[i];
|
|
||||||
|
|
||||||
this.log(Logger.levels.SPAM, null, args);
|
this.log(Logger.levels.SPAM, null, args);
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -744,11 +719,6 @@ LoggerContext.prototype.error = function error(err) {
|
|||||||
if (err instanceof Error)
|
if (err instanceof Error)
|
||||||
return this.logError(Logger.levels.ERROR, err);
|
return this.logError(Logger.levels.ERROR, err);
|
||||||
|
|
||||||
args = new Array(arguments.length);
|
|
||||||
|
|
||||||
for (let i = 0; i < args.length; i++)
|
|
||||||
args[i] = arguments[i];
|
|
||||||
|
|
||||||
this.log(Logger.levels.ERROR, args);
|
this.log(Logger.levels.ERROR, args);
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -770,8 +740,8 @@ LoggerContext.prototype.logError = function logError(level, err) {
|
|||||||
* @param {...Object} args
|
* @param {...Object} args
|
||||||
*/
|
*/
|
||||||
|
|
||||||
LoggerContext.prototype.warning = function warning(err) {
|
LoggerContext.prototype.warning = function warning(...args) {
|
||||||
let args;
|
let err = args[0];
|
||||||
|
|
||||||
if (this.logger.level < Logger.levels.WARNING)
|
if (this.logger.level < Logger.levels.WARNING)
|
||||||
return;
|
return;
|
||||||
@ -779,11 +749,6 @@ LoggerContext.prototype.warning = function warning(err) {
|
|||||||
if (err instanceof Error)
|
if (err instanceof Error)
|
||||||
return this.logError(Logger.levels.WARNING, err);
|
return this.logError(Logger.levels.WARNING, err);
|
||||||
|
|
||||||
args = new Array(arguments.length);
|
|
||||||
|
|
||||||
for (let i = 0; i < args.length; i++)
|
|
||||||
args[i] = arguments[i];
|
|
||||||
|
|
||||||
this.log(Logger.levels.WARNING, args);
|
this.log(Logger.levels.WARNING, args);
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -793,8 +758,8 @@ LoggerContext.prototype.warning = function warning(err) {
|
|||||||
* @param {...Object} args
|
* @param {...Object} args
|
||||||
*/
|
*/
|
||||||
|
|
||||||
LoggerContext.prototype.info = function info(err) {
|
LoggerContext.prototype.info = function info(...args) {
|
||||||
let args;
|
let err = args[0];
|
||||||
|
|
||||||
if (this.logger.level < Logger.levels.INFO)
|
if (this.logger.level < Logger.levels.INFO)
|
||||||
return;
|
return;
|
||||||
@ -802,11 +767,6 @@ LoggerContext.prototype.info = function info(err) {
|
|||||||
if (err instanceof Error)
|
if (err instanceof Error)
|
||||||
return this.logError(Logger.levels.INFO, err);
|
return this.logError(Logger.levels.INFO, err);
|
||||||
|
|
||||||
args = new Array(arguments.length);
|
|
||||||
|
|
||||||
for (let i = 0; i < args.length; i++)
|
|
||||||
args[i] = arguments[i];
|
|
||||||
|
|
||||||
this.log(Logger.levels.INFO, args);
|
this.log(Logger.levels.INFO, args);
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -816,8 +776,8 @@ LoggerContext.prototype.info = function info(err) {
|
|||||||
* @param {...Object} args
|
* @param {...Object} args
|
||||||
*/
|
*/
|
||||||
|
|
||||||
LoggerContext.prototype.debug = function debug(err) {
|
LoggerContext.prototype.debug = function debug(...args) {
|
||||||
let args;
|
let err = args[0];
|
||||||
|
|
||||||
if (this.logger.level < Logger.levels.DEBUG)
|
if (this.logger.level < Logger.levels.DEBUG)
|
||||||
return;
|
return;
|
||||||
@ -825,11 +785,6 @@ LoggerContext.prototype.debug = function debug(err) {
|
|||||||
if (err instanceof Error)
|
if (err instanceof Error)
|
||||||
return this.logError(Logger.levels.DEBUG, err);
|
return this.logError(Logger.levels.DEBUG, err);
|
||||||
|
|
||||||
args = new Array(arguments.length);
|
|
||||||
|
|
||||||
for (let i = 0; i < args.length; i++)
|
|
||||||
args[i] = arguments[i];
|
|
||||||
|
|
||||||
this.log(Logger.levels.DEBUG, args);
|
this.log(Logger.levels.DEBUG, args);
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -839,8 +794,8 @@ LoggerContext.prototype.debug = function debug(err) {
|
|||||||
* @param {...Object} args
|
* @param {...Object} args
|
||||||
*/
|
*/
|
||||||
|
|
||||||
LoggerContext.prototype.spam = function spam(err) {
|
LoggerContext.prototype.spam = function spam(...args) {
|
||||||
let args;
|
let err = args[0];
|
||||||
|
|
||||||
if (this.logger.level < Logger.levels.SPAM)
|
if (this.logger.level < Logger.levels.SPAM)
|
||||||
return;
|
return;
|
||||||
@ -848,11 +803,6 @@ LoggerContext.prototype.spam = function spam(err) {
|
|||||||
if (err instanceof Error)
|
if (err instanceof Error)
|
||||||
return this.logError(Logger.levels.SPAM, err);
|
return this.logError(Logger.levels.SPAM, err);
|
||||||
|
|
||||||
args = new Array(arguments.length);
|
|
||||||
|
|
||||||
for (let i = 0; i < args.length; i++)
|
|
||||||
args[i] = arguments[i];
|
|
||||||
|
|
||||||
this.log(Logger.levels.SPAM, args);
|
this.log(Logger.levels.SPAM, args);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@ -63,12 +63,12 @@ function exec(gen) {
|
|||||||
* Execute generator function
|
* Execute generator function
|
||||||
* with a context and execute.
|
* with a context and execute.
|
||||||
* @param {GeneratorFunction} generator
|
* @param {GeneratorFunction} generator
|
||||||
* @param {Object} ctx
|
* @param {Object?} self
|
||||||
* @returns {Promise}
|
* @returns {Promise}
|
||||||
*/
|
*/
|
||||||
|
|
||||||
function spawn(generator, ctx) {
|
function spawn(generator, self) {
|
||||||
let gen = generator.call(ctx);
|
let gen = generator.call(self);
|
||||||
return exec(gen);
|
return exec(gen);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -97,37 +97,6 @@ function isPromise(obj) {
|
|||||||
return obj && typeof obj.then === 'function';
|
return obj && typeof obj.then === 'function';
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Wrap an async function to be
|
|
||||||
* executed into a function that
|
|
||||||
* accepts a node.js style callback.
|
|
||||||
* @param {AsyncFunction}
|
|
||||||
* @returns {Function}
|
|
||||||
*/
|
|
||||||
|
|
||||||
function cob(func) {
|
|
||||||
return function(_) {
|
|
||||||
let args, callback;
|
|
||||||
|
|
||||||
if (arguments.length === 0
|
|
||||||
|| typeof arguments[arguments.length - 1] !== 'function') {
|
|
||||||
throw new Error((func.name || 'Function') + ' requires a callback.');
|
|
||||||
}
|
|
||||||
|
|
||||||
args = new Array(arguments.length - 1);
|
|
||||||
callback = arguments[arguments.length - 1];
|
|
||||||
|
|
||||||
for (let i = 0; i < args.length; i++)
|
|
||||||
args[i] = arguments[i];
|
|
||||||
|
|
||||||
func.apply(this, args).then((value) => {
|
|
||||||
setImmediate(() => callback(null, value));
|
|
||||||
}, (err) => {
|
|
||||||
setImmediate(() => callback(err));
|
|
||||||
});
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Wait for a nextTick with a promise.
|
* Wait for a nextTick with a promise.
|
||||||
* @returns {Promise}
|
* @returns {Promise}
|
||||||
@ -170,20 +139,41 @@ function wrap(resolve, reject) {
|
|||||||
* style callbacks into a function that
|
* style callbacks into a function that
|
||||||
* returns a promise.
|
* returns a promise.
|
||||||
* @param {Function} func
|
* @param {Function} func
|
||||||
* @param {Object?} ctx
|
* @returns {AsyncFunction}
|
||||||
|
*/
|
||||||
|
|
||||||
|
function promisify(func) {
|
||||||
|
return function(...args) {
|
||||||
|
return new Promise((resolve, reject) => {
|
||||||
|
args.push(wrap(resolve, reject));
|
||||||
|
func.call(this, ...args);
|
||||||
|
});
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Wrap a promise-returning function
|
||||||
|
* into a function that accepts a
|
||||||
|
* node.js style callback.
|
||||||
|
* @param {AsyncFunction} func
|
||||||
* @returns {Function}
|
* @returns {Function}
|
||||||
*/
|
*/
|
||||||
|
|
||||||
function promisify(func, ctx) {
|
function callbackify(func) {
|
||||||
return function() {
|
return function(...args) {
|
||||||
let args = new Array(arguments.length);
|
let callback;
|
||||||
|
|
||||||
for (let i = 0; i < arguments.length; i++)
|
if (args.length === 0
|
||||||
args[i] = arguments[i];
|
|| typeof args[args.length - 1] !== 'function') {
|
||||||
|
throw new Error((func.name || 'Function') + ' requires a callback.');
|
||||||
|
}
|
||||||
|
|
||||||
return new Promise((resolve, reject) => {
|
callback = args.pop();
|
||||||
args.push(wrap(resolve, reject));
|
|
||||||
func.apply(ctx || this, args);
|
func.call(this, ...args).then((value) => {
|
||||||
|
setImmediate(() => callback(null, value));
|
||||||
|
}, (err) => {
|
||||||
|
setImmediate(() => callback(err));
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
@ -314,11 +304,11 @@ exports = co;
|
|||||||
exports.exec = exec;
|
exports.exec = exec;
|
||||||
exports.spawn = spawn;
|
exports.spawn = spawn;
|
||||||
exports.co = co;
|
exports.co = co;
|
||||||
exports.cob = cob;
|
|
||||||
exports.wait = wait;
|
exports.wait = wait;
|
||||||
exports.timeout = timeout;
|
exports.timeout = timeout;
|
||||||
exports.wrap = wrap;
|
exports.wrap = wrap;
|
||||||
exports.promisify = promisify;
|
exports.promisify = promisify;
|
||||||
|
exports.callbackify = callbackify;
|
||||||
exports.every = every;
|
exports.every = every;
|
||||||
exports.setInterval = startInterval;
|
exports.setInterval = startInterval;
|
||||||
exports.clearInterval = stopInterval;
|
exports.clearInterval = stopInterval;
|
||||||
|
|||||||
@ -338,13 +338,9 @@ util.format = function format(args, color) {
|
|||||||
* @param {...String} args
|
* @param {...String} args
|
||||||
*/
|
*/
|
||||||
|
|
||||||
util.log = function log() {
|
util.log = function log(...args) {
|
||||||
let args = new Array(arguments.length);
|
|
||||||
let msg;
|
let msg;
|
||||||
|
|
||||||
for (let i = 0; i < args.length; i++)
|
|
||||||
args[i] = arguments[i];
|
|
||||||
|
|
||||||
if (!process.stdout) {
|
if (!process.stdout) {
|
||||||
msg = typeof args[0] !== 'object'
|
msg = typeof args[0] !== 'object'
|
||||||
? util.format(args, false)
|
? util.format(args, false)
|
||||||
@ -363,13 +359,9 @@ util.log = function log() {
|
|||||||
* @param {...String} args
|
* @param {...String} args
|
||||||
*/
|
*/
|
||||||
|
|
||||||
util.error = function error() {
|
util.error = function error(...args) {
|
||||||
let args = new Array(arguments.length);
|
|
||||||
let msg;
|
let msg;
|
||||||
|
|
||||||
for (let i = 0; i < args.length; i++)
|
|
||||||
args[i] = arguments[i];
|
|
||||||
|
|
||||||
if (!process.stderr) {
|
if (!process.stderr) {
|
||||||
msg = typeof args[0] !== 'object'
|
msg = typeof args[0] !== 'object'
|
||||||
? util.format(args, false)
|
? util.format(args, false)
|
||||||
|
|||||||
@ -159,12 +159,7 @@ Master.prototype.send = function send(packet) {
|
|||||||
* @returns {Boolean}
|
* @returns {Boolean}
|
||||||
*/
|
*/
|
||||||
|
|
||||||
Master.prototype.sendEvent = function sendEvent() {
|
Master.prototype.sendEvent = function sendEvent(...items) {
|
||||||
let items = new Array(arguments.length);
|
|
||||||
|
|
||||||
for (let i = 0; i < items.length; i++)
|
|
||||||
items[i] = arguments[i];
|
|
||||||
|
|
||||||
return this.send(new packets.EventPacket(items));
|
return this.send(new packets.EventPacket(items));
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -184,15 +179,8 @@ Master.prototype.destroy = function destroy() {
|
|||||||
* @param {...String} args
|
* @param {...String} args
|
||||||
*/
|
*/
|
||||||
|
|
||||||
Master.prototype.log = function log() {
|
Master.prototype.log = function log(...items) {
|
||||||
let items = new Array(arguments.length);
|
let text = util.format(items, this.color);
|
||||||
let text;
|
|
||||||
|
|
||||||
for (let i = 0; i < items.length; i++)
|
|
||||||
items[i] = arguments[i];
|
|
||||||
|
|
||||||
text = util.format(items, this.color);
|
|
||||||
|
|
||||||
this.send(new packets.LogPacket(text));
|
this.send(new packets.LogPacket(text));
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@ -709,12 +709,7 @@ Worker.prototype.send = function send(packet) {
|
|||||||
* @returns {Boolean}
|
* @returns {Boolean}
|
||||||
*/
|
*/
|
||||||
|
|
||||||
Worker.prototype.sendEvent = function sendEvent() {
|
Worker.prototype.sendEvent = function sendEvent(...items) {
|
||||||
let items = new Array(arguments.length);
|
|
||||||
|
|
||||||
for (let i = 0; i < items.length; i++)
|
|
||||||
items[i] = arguments[i];
|
|
||||||
|
|
||||||
return this.send(new packets.EventPacket(items));
|
return this.send(new packets.EventPacket(items));
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user