Browse Source

lint

v0.7.4-release
Ryan Dahl 14 years ago
parent
commit
dd53ceebe4
  1. 28
      lib/stream.js
  2. 15
      lib/string_decoder.js
  3. 5
      lib/sys.js
  4. 46
      lib/timers.js
  5. 33
      lib/tls.js
  6. 162
      lib/util.js
  7. 2
      lib/vm.js

28
lib/stream.js

@ -7,22 +7,22 @@ function Stream() {
util.inherits(Stream, events.EventEmitter); util.inherits(Stream, events.EventEmitter);
exports.Stream = Stream; exports.Stream = Stream;
Stream.prototype.pipe = function (dest, options) { Stream.prototype.pipe = function(dest, options) {
var source = this; var source = this;
function ondata (chunk) { function ondata(chunk) {
if (dest.writable) { if (dest.writable) {
if (false === dest.write(chunk)) source.pause(); if (false === dest.write(chunk)) source.pause();
} }
} }
source.on("data", ondata); source.on('data', ondata);
function ondrain () { function ondrain() {
if (source.readable) source.resume(); if (source.readable) source.resume();
} }
dest.on("drain", ondrain); dest.on('drain', ondrain);
/* /*
* If the 'end' option is not supplied, dest.end() will be called when * If the 'end' option is not supplied, dest.end() will be called when
@ -30,14 +30,14 @@ Stream.prototype.pipe = function (dest, options) {
*/ */
if (!options || options.end !== false) { if (!options || options.end !== false) {
function onend () { function onend() {
dest.end(); dest.end();
} }
source.on("end", onend); source.on('end', onend);
} }
dest.on('close', function () { dest.on('close', function() {
source.removeListener('data', ondata); source.removeListener('data', ondata);
dest.removeListener('drain', ondrain); dest.removeListener('drain', ondrain);
source.removeListener('end', onend); source.removeListener('end', onend);
@ -49,22 +49,22 @@ Stream.prototype.pipe = function (dest, options) {
*/ */
if (!source.pause) { if (!source.pause) {
source.pause = function () { source.pause = function() {
source.emit("pause"); source.emit('pause');
}; };
} }
if (!source.resume) { if (!source.resume) {
source.resume = function () { source.resume = function() {
source.emit("resume"); source.emit('resume');
}; };
} }
dest.on("pause", function () { dest.on('pause', function() {
source.pause(); source.pause();
}); });
dest.on("resume", function () { dest.on('resume', function() {
if (source.readable) source.resume(); if (source.readable) source.resume();
}); });
}; };

15
lib/string_decoder.js

@ -1,5 +1,5 @@
var StringDecoder = exports.StringDecoder = function (encoding) { var StringDecoder = exports.StringDecoder = function(encoding) {
this.encoding = (encoding || 'utf8').toLowerCase().replace(/[-_]/,''); this.encoding = (encoding || 'utf8').toLowerCase().replace(/[-_]/, '');
if (this.encoding === 'utf8') { if (this.encoding === 'utf8') {
this.charBuffer = new Buffer(4); this.charBuffer = new Buffer(4);
this.charReceived = 0; this.charReceived = 0;
@ -8,7 +8,7 @@ var StringDecoder = exports.StringDecoder = function (encoding) {
}; };
StringDecoder.prototype.write = function (buffer) { StringDecoder.prototype.write = function(buffer) {
// If not utf8... // If not utf8...
if (this.encoding !== 'utf8') { if (this.encoding !== 'utf8') {
return buffer.toString(this.encoding); return buffer.toString(this.encoding);
@ -18,9 +18,9 @@ StringDecoder.prototype.write = function (buffer) {
// if our last write ended with an incomplete multibyte character // if our last write ended with an incomplete multibyte character
if (this.charLength) { if (this.charLength) {
// determine how many remaining bytes this buffer has to offer for this char // determine how many remaining bytes this buffer has to offer for this char
var i = (buffer.length >= this.charLength - this.charReceived) var i = (buffer.length >= this.charLength - this.charReceived) ?
? this.charLength - this.charReceived this.charLength - this.charReceived :
: buffer.length; buffer.length;
// add the new bytes to the char buffer // add the new bytes to the char buffer
buffer.copy(this.charBuffer, this.charReceived, 0, i); buffer.copy(this.charBuffer, this.charReceived, 0, i);
@ -46,7 +46,8 @@ StringDecoder.prototype.write = function (buffer) {
// determine how many bytes we have to check at the end of this buffer // determine how many bytes we have to check at the end of this buffer
var i = (buffer.length >= 3) ? 3 : buffer.length; var i = (buffer.length >= 3) ? 3 : buffer.length;
// figure out if one of the last i bytes of our buffer announces an incomplete char // Figure out if one of the last i bytes of our buffer announces an
// incomplete char.
for (; i > 0; i--) { for (; i > 0; i--) {
c = buffer[buffer.length - i]; c = buffer[buffer.length - i];

5
lib/sys.js

@ -1,8 +1,9 @@
var util = require("util"); var util = require('util');
var sysWarning; var sysWarning;
if (!sysWarning) { if (!sysWarning) {
sysWarning = "The 'sys' module is now called 'util'. It should have a similar interface."; sysWarning = 'The "sys" module is now called "util". ' +
'It should have a similar interface.';
// Uncomment in 2011 // Uncomment in 2011
//util.error(sysWarning); //util.error(sysWarning);
} }

46
lib/timers.js

@ -5,12 +5,14 @@ var assert = process.assert;
* To enable debug statements for the timers do NODE_DEBUG=8 ./node script.js * To enable debug statements for the timers do NODE_DEBUG=8 ./node script.js
*/ */
var debugLevel = parseInt(process.env.NODE_DEBUG, 16); var debugLevel = parseInt(process.env.NODE_DEBUG, 16);
function debug () { var debug;
if (debugLevel & 0x8) { if (debugLevel & 0x8) {
require('util').error.apply(this, arguments); debug = function() { require('util').error.apply(this, arguments); };
} } else {
debug = function() { };
} }
// IDLE TIMEOUTS // IDLE TIMEOUTS
// //
// Because often many sockets will have the same idle timeout we will not // Because often many sockets will have the same idle timeout we will not
@ -25,14 +27,14 @@ function debug () {
var lists = {}; var lists = {};
// show the most idle item // show the most idle item
function peek (list) { function peek(list) {
if (list._idlePrev == list) return null; if (list._idlePrev == list) return null;
return list._idlePrev; return list._idlePrev;
} }
// remove the most idle item from the list // remove the most idle item from the list
function shift (list) { function shift(list) {
var first = list._idlePrev; var first = list._idlePrev;
remove(first); remove(first);
return first; return first;
@ -40,14 +42,14 @@ function shift (list) {
// remove a item from its list // remove a item from its list
function remove (item) { function remove(item) {
item._idleNext._idlePrev = item._idlePrev; item._idleNext._idlePrev = item._idlePrev;
item._idlePrev._idleNext = item._idleNext; item._idlePrev._idleNext = item._idleNext;
} }
// remove a item from its list and place at the end. // remove a item from its list and place at the end.
function append (list, item) { function append(list, item) {
item._idleNext = list._idleNext; item._idleNext = list._idleNext;
list._idleNext._idlePrev = item; list._idleNext._idlePrev = item;
item._idlePrev = list; item._idlePrev = list;
@ -57,7 +59,7 @@ function append (list, item) {
// the main function - creates lists on demand and the watchers associated // the main function - creates lists on demand and the watchers associated
// with them. // with them.
function insert (item, msecs) { function insert(item, msecs) {
item._idleStart = new Date(); item._idleStart = new Date();
item._idleTimeout = msecs; item._idleTimeout = msecs;
@ -74,18 +76,18 @@ function insert (item, msecs) {
lists[msecs] = list; lists[msecs] = list;
list.callback = function () { list.callback = function() {
debug('timeout callback ' + msecs); debug('timeout callback ' + msecs);
// TODO - don't stop and start the watcher all the time. // TODO - don't stop and start the watcher all the time.
// just set its repeat // just set its repeat
var now = new Date(); var now = new Date();
debug("now: " + now); debug('now: ' + now);
var first; var first;
while (first = peek(list)) { while (first = peek(list)) {
var diff = now - first._idleStart; var diff = now - first._idleStart;
if (diff < msecs) { if (diff < msecs) {
list.again(msecs - diff); list.again(msecs - diff);
debug(msecs + ' list wait because diff is ' + diff); debug(msecs + ' list wait because diff is ' + diff);
return; return;
} else { } else {
remove(first); remove(first);
@ -109,7 +111,7 @@ function insert (item, msecs) {
} }
var unenroll = exports.unenroll = function (item) { var unenroll = exports.unenroll = function(item) {
if (item._idleNext) { if (item._idleNext) {
remove(item); remove(item);
@ -125,7 +127,7 @@ var unenroll = exports.unenroll = function (item) {
// Does not start the time, just sets up the members needed. // Does not start the time, just sets up the members needed.
exports.enroll = function (item, msecs) { exports.enroll = function(item, msecs) {
// if this item was already in a list somewhere // if this item was already in a list somewhere
// then we should unenroll it from that // then we should unenroll it from that
if (item._idleNext) unenroll(item); if (item._idleNext) unenroll(item);
@ -137,7 +139,7 @@ exports.enroll = function (item, msecs) {
// call this whenever the item is active (not idle) // call this whenever the item is active (not idle)
// it will reset its timeout. // it will reset its timeout.
exports.active = function (item) { exports.active = function(item) {
var msecs = item._idleTimeout; var msecs = item._idleTimeout;
if (msecs >= 0) { if (msecs >= 0) {
var list = lists[msecs]; var list = lists[msecs];
@ -162,8 +164,8 @@ exports.active = function (item) {
*/ */
exports.setTimeout = function (callback, after) { exports.setTimeout = function(callback, after) {
var timer; var timer;
if (after <= 0) { if (after <= 0) {
// Use the slow case for after == 0 // Use the slow case for after == 0
@ -186,7 +188,7 @@ exports.setTimeout = function (callback, after) {
*/ */
if (arguments.length > 2) { if (arguments.length > 2) {
var args = Array.prototype.slice.call(arguments, 2); var args = Array.prototype.slice.call(arguments, 2);
var c = function () { var c = function() {
callback.apply(timer, args); callback.apply(timer, args);
}; };
@ -207,7 +209,7 @@ exports.setTimeout = function (callback, after) {
}; };
exports.clearTimeout = function (timer) { exports.clearTimeout = function(timer) {
if (timer && (timer.callback || timer._onTimeout)) { if (timer && (timer.callback || timer._onTimeout)) {
timer.callback = timer._onTimeout = null; timer.callback = timer._onTimeout = null;
exports.unenroll(timer); exports.unenroll(timer);
@ -216,12 +218,12 @@ exports.clearTimeout = function (timer) {
}; };
exports.setInterval = function (callback, repeat) { exports.setInterval = function(callback, repeat) {
var timer = new Timer(); var timer = new Timer();
if (arguments.length > 2) { if (arguments.length > 2) {
var args = Array.prototype.slice.call(arguments, 2); var args = Array.prototype.slice.call(arguments, 2);
timer.callback = function () { timer.callback = function() {
callback.apply(timer, args); callback.apply(timer, args);
}; };
} else { } else {
@ -233,7 +235,7 @@ exports.setInterval = function (callback, repeat) {
}; };
exports.clearInterval = function (timer) { exports.clearInterval = function(timer) {
if (timer instanceof Timer) { if (timer instanceof Timer) {
timer.callback = null; timer.callback = null;
timer.stop(); timer.stop();

33
lib/tls.js

@ -36,12 +36,12 @@ var inherits = require('util').inherits;
// TODO: // TODO:
// cleartext.credentials (by mirroring from pair object) // cleartext.credentials (by mirroring from pair object)
// cleartext.getCertificate() (by mirroring from pair.credentials.context) // cleartext.getCertificate() (by mirroring from pair.credentials.context)
function Server ( /* [options], listener */) { function Server(/* [options], listener */) {
var options, listener; var options, listener;
if (typeof arguments[0] == "object") { if (typeof arguments[0] == 'object') {
options = arguments[0]; options = arguments[0];
listener = arguments[1]; listener = arguments[1];
} else if (typeof arguments[0] == "function") { } else if (typeof arguments[0] == 'function') {
options = {}; options = {};
listener = arguments[0]; listener = arguments[0];
} }
@ -51,10 +51,9 @@ function Server ( /* [options], listener */) {
var self = this; var self = this;
// constructor call // constructor call
net.Server.call(this, function (socket) { net.Server.call(this, function(socket) {
var creds = crypto.createCredentials({ key: self.key, var creds = crypto.createCredentials(
cert: self.cert, { key: self.key, cert: self.cert, ca: self.ca });
ca: self.ca });
creds.context.setCiphers('RC4-SHA:AES128-SHA:AES256-SHA'); creds.context.setCiphers('RC4-SHA:AES128-SHA:AES256-SHA');
var pair = crypto.createPair(creds, var pair = crypto.createPair(creds,
@ -63,14 +62,14 @@ function Server ( /* [options], listener */) {
pair.encrypted.pipe(socket); pair.encrypted.pipe(socket);
socket.pipe(pair.encrypted); socket.pipe(pair.encrypted);
pair.on('secure', function () { pair.on('secure', function() {
var verifyError = pair._ssl.verifyError(); var verifyError = pair._ssl.verifyError();
if (verifyError) { if (verifyError) {
if (self.unauthorizedPeers) { if (self.unauthorizedPeers) {
self.emit('unauthorized', pair.cleartext, verifyError); self.emit('unauthorized', pair.cleartext, verifyError);
} else { } else {
console.error("REJECT PEER. verify error: %s", verifyError); console.error('REJECT PEER. verify error: %s', verifyError);
socket.destroy(); socket.destroy();
} }
} else { } else {
@ -78,15 +77,9 @@ function Server ( /* [options], listener */) {
} }
}); });
pair.on('error', function (e) { pair.on('error', function(e) {
console.log('pair got error: ' + e); console.log('pair got error: ' + e);
self.emit('error', e);
// TODO better way to get error code.
if (/no shared cipher/.test(e.message)) {
;
} else {
self.emit('error', e);
}
}); });
pair.cleartext.on('error', function(err) { pair.cleartext.on('error', function(err) {
@ -110,13 +103,13 @@ function Server ( /* [options], listener */) {
inherits(Server, net.Server); inherits(Server, net.Server);
exports.Server = Server; exports.Server = Server;
exports.createServer = function (options, listener) { exports.createServer = function(options, listener) {
return new Server(options, listener); return new Server(options, listener);
}; };
Server.prototype.setOptions = function (options) { Server.prototype.setOptions = function(options) {
if (typeof options.unauthorizedPeers == "boolean") { if (typeof options.unauthorizedPeers == 'boolean') {
this.unauthorizedPeers = options.unauthorizedPeers; this.unauthorizedPeers = options.unauthorizedPeers;
} else { } else {
this.unauthorizedPeers = false; this.unauthorizedPeers = false;

162
lib/util.js

@ -1,26 +1,26 @@
var events = require('events'); var events = require('events');
exports.print = function () { exports.print = function() {
for (var i = 0, len = arguments.length; i < len; ++i) { for (var i = 0, len = arguments.length; i < len; ++i) {
process.stdout.write(String(arguments[i])); process.stdout.write(String(arguments[i]));
} }
}; };
exports.puts = function () { exports.puts = function() {
for (var i = 0, len = arguments.length; i < len; ++i) { for (var i = 0, len = arguments.length; i < len; ++i) {
process.stdout.write(arguments[i] + '\n'); process.stdout.write(arguments[i] + '\n');
} }
}; };
exports.debug = function (x) { exports.debug = function(x) {
process.binding('stdio').writeError("DEBUG: " + x + "\n"); process.binding('stdio').writeError('DEBUG: ' + x + '\n');
}; };
var error = exports.error = function (x) { var error = exports.error = function(x) {
for (var i = 0, len = arguments.length; i < len; ++i) { for (var i = 0, len = arguments.length; i < len; ++i) {
process.binding('stdio').writeError(arguments[i] + '\n'); process.binding('stdio').writeError(arguments[i] + '\n');
} }
@ -31,41 +31,41 @@ var error = exports.error = function (x) {
* Echos the value of a value. Trys to print the value out * Echos the value of a value. Trys to print the value out
* in the best way possible given the different types. * in the best way possible given the different types.
* *
* @param {Object} value The object to print out * @param {Object} value The object to print out.
* @param {Boolean} showHidden Flag that shows hidden (not enumerable) * @param {Boolean} showHidden Flag that shows hidden (not enumerable)
* properties of objects. * properties of objects.
* @param {Number} depth Depth in which to descend in object. Default is 2. * @param {Number} depth Depth in which to descend in object. Default is 2.
* @param {Boolean} colors Flag to turn on ANSI escape codes to color the * @param {Boolean} colors Flag to turn on ANSI escape codes to color the
* output. Default is false (no coloring). * output. Default is false (no coloring).
*/ */
exports.inspect = function (obj, showHidden, depth, colors) { exports.inspect = function(obj, showHidden, depth, colors) {
var seen = []; var seen = [];
var stylize = function (str, styleType) { var stylize = function(str, styleType) {
// http://en.wikipedia.org/wiki/ANSI_escape_code#graphics // http://en.wikipedia.org/wiki/ANSI_escape_code#graphics
var styles = { 'bold' : [1, 22] var styles = { 'bold' : [1, 22]
, 'italic' : [3, 23] , 'italic' : [3, 23]
, 'underline' : [4, 24] , 'underline' : [4, 24]
, 'inverse' : [7, 27] , 'inverse' : [7, 27]
, 'white' : [37, 39] , 'white' : [37, 39]
, 'grey' : [90, 39] , 'grey' : [90, 39]
, 'black' : [30, 39] , 'black' : [30, 39]
, 'blue' : [34, 39] , 'blue' : [34, 39]
, 'cyan' : [36, 39] , 'cyan' : [36, 39]
, 'green' : [32, 39] , 'green' : [32, 39]
, 'magenta' : [35, 39] , 'magenta' : [35, 39]
, 'red' : [31, 39] , 'red' : [31, 39]
, 'yellow' : [33, 39] , 'yellow' : [33, 39]
}; };
var style = { "special": "grey" var style = { 'special': 'grey'
, "number": "blue" , 'number': 'blue'
, "boolean": "blue" , 'boolean': 'blue'
, "undefined": "red" , 'undefined': 'red'
, "null": "red" , 'null': 'red'
, "string": "green" , 'string': 'green'
, "date": "magenta" , 'date': 'magenta'
//, "name": intentionally not styling //, "name": intentionally not styling
, "regexp": "cyan" , 'regexp': 'cyan'
}[styleType]; }[styleType];
if (style) { if (style) {
return '\033[' + styles[style][0] + 'm' + str + return '\033[' + styles[style][0] + 'm' + str +
@ -92,13 +92,13 @@ exports.inspect = function (obj, showHidden, depth, colors) {
// Primitive types cannot have properties // Primitive types cannot have properties
switch (typeof value) { switch (typeof value) {
case 'undefined': return stylize('undefined', 'undefined'); case 'undefined': return stylize('undefined', 'undefined');
case 'string': return stylize( case 'string': return stylize(
JSON.stringify(value).replace(/'/g, "\\'") JSON.stringify(value).replace(/'/g, "\\'")
.replace(/\\"/g, '"') .replace(/\\"/g, '"')
.replace(/(^"|"$)/g, "'"), .replace(/(^"|"$)/g, "'"),
'string'); 'string');
case 'number': return stylize('' + value, 'number'); case 'number': return stylize('' + value, 'number');
case 'boolean': return stylize('' + value, 'boolean'); case 'boolean': return stylize('' + value, 'boolean');
} }
// For some reason typeof null is "object", so special case here. // For some reason typeof null is "object", so special case here.
if (value === null) { if (value === null) {
@ -114,7 +114,7 @@ exports.inspect = function (obj, showHidden, depth, colors) {
if (isRegExp(value)) { if (isRegExp(value)) {
return stylize('' + value, 'regexp'); return stylize('' + value, 'regexp');
} else { } else {
return stylize('[Function'+ (value.name ? ': '+ value.name : '')+ ']', 'special'); return stylize('[Function' + (value.name ? ': ' + value.name : '') + ']', 'special');
} }
} }
@ -127,17 +127,17 @@ exports.inspect = function (obj, showHidden, depth, colors) {
// Determine the object type // Determine the object type
if (isArray(value)) { if (isArray(value)) {
type = 'Array'; type = 'Array';
braces = ["[", "]"]; braces = ['[', ']'];
} else { } else {
type = 'Object'; type = 'Object';
braces = ["{", "}"]; braces = ['{', '}'];
} }
// Make functions say that they are functions // Make functions say that they are functions
if (typeof value === 'function') { if (typeof value === 'function') {
base = (isRegExp(value)) ? ' ' + value : ' [Function'+ (value.name ? ': '+ value.name : '')+ ']'; base = (isRegExp(value)) ? ' ' + value : ' [Function' + (value.name ? ': ' + value.name : '') + ']';
} else { } else {
base = ""; base = '';
} }
// Make dates with properties first say the date // Make dates with properties first say the date
@ -151,35 +151,35 @@ exports.inspect = function (obj, showHidden, depth, colors) {
if (recurseTimes < 0) { if (recurseTimes < 0) {
if (isRegExp(value)) { if (isRegExp(value)) {
return stylize('' + value, "regexp"); return stylize('' + value, 'regexp');
} else { } else {
return stylize("[Object]", "special"); return stylize('[Object]', 'special');
} }
} }
seen.push(value); seen.push(value);
var output = keys.map(function (key) { var output = keys.map(function(key) {
var name, str; var name, str;
if (value.__lookupGetter__) { if (value.__lookupGetter__) {
if (value.__lookupGetter__(key)) { if (value.__lookupGetter__(key)) {
if (value.__lookupSetter__(key)) { if (value.__lookupSetter__(key)) {
str = stylize("[Getter/Setter]", "special"); str = stylize('[Getter/Setter]', 'special');
} else { } else {
str = stylize("[Getter]", "special"); str = stylize('[Getter]', 'special');
} }
} else { } else {
if (value.__lookupSetter__(key)) { if (value.__lookupSetter__(key)) {
str = stylize("[Setter]", "special"); str = stylize('[Setter]', 'special');
} }
} }
} }
if (visible_keys.indexOf(key) < 0) { if (visible_keys.indexOf(key) < 0) {
name = "[" + key + "]"; name = '[' + key + ']';
} }
if (!str) { if (!str) {
if (seen.indexOf(value[key]) < 0) { if (seen.indexOf(value[key]) < 0) {
if ( recurseTimes === null) { if (recurseTimes === null) {
str = format(value[key]); str = format(value[key]);
} else { } else {
str = format(value[key], recurseTimes - 1); str = format(value[key], recurseTimes - 1);
@ -205,17 +205,17 @@ exports.inspect = function (obj, showHidden, depth, colors) {
} }
name = JSON.stringify('' + key); name = JSON.stringify('' + key);
if (name.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)) { if (name.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)) {
name = name.substr(1, name.length-2); name = name.substr(1, name.length - 2);
name = stylize(name, "name"); name = stylize(name, 'name');
} else { } else {
name = name.replace(/'/g, "\\'") name = name.replace(/'/g, "\\'")
.replace(/\\"/g, '"') .replace(/\\"/g, '"')
.replace(/(^"|"$)/g, "'"); .replace(/(^"|"$)/g, "'");
name = stylize(name, "string"); name = stylize(name, 'string');
} }
} }
return name + ": " + str; return name + ': ' + str;
}); });
seen.pop(); seen.pop();
@ -223,7 +223,7 @@ exports.inspect = function (obj, showHidden, depth, colors) {
var numLinesEst = 0; var numLinesEst = 0;
var length = output.reduce(function(prev, cur) { var length = output.reduce(function(prev, cur) {
numLinesEst++; numLinesEst++;
if( cur.indexOf('\n') >= 0 ) { if (cur.indexOf('\n') >= 0) {
numLinesEst++; numLinesEst++;
} }
return prev + cur.length + 1; return prev + cur.length + 1;
@ -235,8 +235,8 @@ exports.inspect = function (obj, showHidden, depth, colors) {
+ ' ' + ' '
+ output.join(',\n ') + output.join(',\n ')
+ ' ' + ' '
+ braces[1] + braces[1];
;
} else { } else {
output = braces[0] + base + ' ' + output.join(', ') + ' ' + braces[1]; output = braces[0] + base + ' ' + output.join(', ') + ' ' + braces[1];
} }
@ -247,18 +247,18 @@ exports.inspect = function (obj, showHidden, depth, colors) {
}; };
function isArray (ar) { function isArray(ar) {
return ar instanceof Array return ar instanceof Array
|| Array.isArray(ar) || Array.isArray(ar)
|| (ar && ar !== Object.prototype && isArray(ar.__proto__)); || (ar && ar !== Object.prototype && isArray(ar.__proto__));
} }
function isRegExp (re) { function isRegExp(re) {
var s = ""+re; var s = ''+ re;
return re instanceof RegExp // easy case return re instanceof RegExp // easy case
|| typeof(re) === "function" // duck-type for context-switching evalcx case || typeof(re) === 'function' // duck-type for context-switching evalcx case
&& re.constructor.name === "RegExp" && re.constructor.name === 'RegExp'
&& re.compile && re.compile
&& re.test && re.test
&& re.exec && re.exec
@ -266,9 +266,9 @@ function isRegExp (re) {
} }
function isDate (d) { function isDate(d) {
if (d instanceof Date) return true; if (d instanceof Date) return true;
if (typeof d !== "object") return false; if (typeof d !== 'object') return false;
var properties = Date.prototype && Object.getOwnPropertyNames(Date.prototype); var properties = Date.prototype && Object.getOwnPropertyNames(Date.prototype);
var proto = d.__proto__ && Object.getOwnPropertyNames(d.__proto__); var proto = d.__proto__ && Object.getOwnPropertyNames(d.__proto__);
return JSON.stringify(proto) === JSON.stringify(properties); return JSON.stringify(proto) === JSON.stringify(properties);
@ -277,9 +277,9 @@ function isDate (d) {
var pWarning; var pWarning;
exports.p = function () { exports.p = function() {
if (!pWarning) { if (!pWarning) {
pWarning = "util.p will be removed in future versions of Node. Use util.puts(util.inspect()) instead.\n"; pWarning = 'util.p will be removed in future versions of Node. Use util.puts(util.inspect()) instead.\n';
exports.error(pWarning); exports.error(pWarning);
} }
for (var i = 0, len = arguments.length; i < len; ++i) { for (var i = 0, len = arguments.length; i < len; ++i) {
@ -288,7 +288,7 @@ exports.p = function () {
}; };
function pad (n) { function pad(n) {
return n < 10 ? '0' + n.toString(10) : n.toString(10); return n < 10 ? '0' + n.toString(10) : n.toString(10);
} }
@ -296,22 +296,22 @@ function pad (n) {
var months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']; var months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'];
// 26 Feb 16:19:34 // 26 Feb 16:19:34
function timestamp () { function timestamp() {
var d = new Date(); var d = new Date();
return [ d.getDate() return [d.getDate()
, months[d.getMonth()] , months[d.getMonth()]
, [pad(d.getHours()), pad(d.getMinutes()), pad(d.getSeconds())].join(':') , [pad(d.getHours()), pad(d.getMinutes()), pad(d.getSeconds())].join(':')
].join(' '); ].join(' ');
} }
exports.log = function (msg) { exports.log = function(msg) {
exports.puts(timestamp() + ' - ' + msg.toString()); exports.puts(timestamp() + ' - ' + msg.toString());
}; };
var execWarning; var execWarning;
exports.exec = function () { exports.exec = function() {
if (!execWarning) { if (!execWarning) {
execWarning = 'util.exec has moved to the "child_process" module. Please update your source code.'; execWarning = 'util.exec has moved to the "child_process" module. Please update your source code.';
error(execWarning); error(execWarning);
@ -320,49 +320,49 @@ exports.exec = function () {
}; };
exports.pump = function (readStream, writeStream, callback) { exports.pump = function(readStream, writeStream, callback) {
var callbackCalled = false; var callbackCalled = false;
function call (a, b, c) { function call(a, b, c) {
if (callback && !callbackCalled) { if (callback && !callbackCalled) {
callback(a, b, c); callback(a, b, c);
callbackCalled = true; callbackCalled = true;
} }
} }
if (!readStream.pause) readStream.pause = function () {readStream.emit("pause");}; if (!readStream.pause) readStream.pause = function() {readStream.emit('pause');};
if (!readStream.resume) readStream.resume = function () {readStream.emit("resume");}; if (!readStream.resume) readStream.resume = function() {readStream.emit('resume');};
readStream.addListener("data", function (chunk) { readStream.addListener('data', function(chunk) {
if (writeStream.write(chunk) === false) readStream.pause(); if (writeStream.write(chunk) === false) readStream.pause();
}); });
writeStream.addListener("pause", function () { writeStream.addListener('pause', function() {
readStream.pause(); readStream.pause();
}); });
writeStream.addListener("drain", function () { writeStream.addListener('drain', function() {
readStream.resume(); readStream.resume();
}); });
writeStream.addListener("resume", function () { writeStream.addListener('resume', function() {
readStream.resume(); readStream.resume();
}); });
readStream.addListener("end", function () { readStream.addListener('end', function() {
writeStream.end(); writeStream.end();
}); });
readStream.addListener("close", function () { readStream.addListener('close', function() {
call(); call();
}); });
readStream.addListener("error", function (err) { readStream.addListener('error', function(err) {
writeStream.end(); writeStream.end();
call(err); call(err);
}); });
writeStream.addListener("error", function (err) { writeStream.addListener('error', function(err) {
readStream.destroy(); readStream.destroy();
call(err); call(err);
}); });
@ -378,10 +378,10 @@ exports.pump = function (readStream, writeStream, callback) {
* expected during bootstrapping (see mirror.js in r114903). * expected during bootstrapping (see mirror.js in r114903).
* *
* @param {function} ctor Constructor function which needs to inherit the * @param {function} ctor Constructor function which needs to inherit the
* prototype * prototype.
* @param {function} superCtor Constructor function to inherit prototype from * @param {function} superCtor Constructor function to inherit prototype from.
*/ */
exports.inherits = function (ctor, superCtor) { exports.inherits = function(ctor, superCtor) {
ctor.super_ = superCtor; ctor.super_ = superCtor;
ctor.prototype = Object.create(superCtor.prototype, { ctor.prototype = Object.create(superCtor.prototype, {
constructor: { constructor: {

2
lib/vm.js

@ -1,7 +1,7 @@
var binding = process.binding('evals'); var binding = process.binding('evals');
exports.Script = binding.Script; exports.Script = binding.Script;
exports.createScript = function (code, ctx, name) { exports.createScript = function(code, ctx, name) {
return new exports.Script(code, ctx, name); return new exports.Script(code, ctx, name);
}; };

Loading…
Cancel
Save