diff options
author | Ryan Dahl <ry@tinyclouds.org> | 2010-12-01 18:07:20 -0800 |
---|---|---|
committer | Ryan Dahl <ry@tinyclouds.org> | 2010-12-01 20:28:28 -0800 |
commit | e232f6e7356531bb6ab50cdf9c82386538ae2c79 (patch) | |
tree | 47b85cd89ab2b14dd577d37a42e0954c10dd0427 /lib/path.js | |
parent | ddbaeef1b36fc97c7bbd721e52b8b2df0cb61dfe (diff) | |
download | android-node-v8-e232f6e7356531bb6ab50cdf9c82386538ae2c79.tar.gz android-node-v8-e232f6e7356531bb6ab50cdf9c82386538ae2c79.tar.bz2 android-node-v8-e232f6e7356531bb6ab50cdf9c82386538ae2c79.zip |
more lint
Diffstat (limited to 'lib/path.js')
-rw-r--r-- | lib/path.js | 82 |
1 files changed, 38 insertions, 44 deletions
diff --git a/lib/path.js b/lib/path.js index 9e530084c7..fc7f4c3ba6 100644 --- a/lib/path.js +++ b/lib/path.js @@ -1,28 +1,28 @@ -function validPathPart (p, keepBlanks) { - return typeof p === "string" && (p || keepBlanks); +function validPathPart(p, keepBlanks) { + return typeof p === 'string' && (p || keepBlanks); } -exports.join = function () { +exports.join = function() { var args = Array.prototype.slice.call(arguments); // edge case flag to switch into url-resolve-mode var keepBlanks = false; - if (args[ args.length - 1 ] === true) { + if (args[args.length - 1] === true) { keepBlanks = args.pop(); } // return exports.split(args.join("/"), keepBlanks).join("/"); - var joined = exports.normalizeArray(args, keepBlanks).join("/"); + var joined = exports.normalizeArray(args, keepBlanks).join('/'); return joined; }; -exports.split = function (path, keepBlanks) { +exports.split = function(path, keepBlanks) { // split based on /, but only if that / is not at the start or end. return exports.normalizeArray(path.split(/^|\/(?!$)/), keepBlanks); }; -function cleanArray (parts, keepBlanks) { +function cleanArray(parts, keepBlanks) { var i = 0; var l = parts.length - 1; var stripped = false; @@ -30,13 +30,13 @@ function cleanArray (parts, keepBlanks) { // strip leading empty args while (i < l && !validPathPart(parts[i], keepBlanks)) { stripped = true; - i ++; + i++; } // strip tailing empty args while (l >= i && !validPathPart(parts[l], keepBlanks)) { stripped = true; - l --; + l--; } if (stripped) { @@ -44,52 +44,46 @@ function cleanArray (parts, keepBlanks) { parts = Array.prototype.slice.call(parts, i, l + 1); } - return parts.filter(function (p) { return validPathPart(p, keepBlanks) }) + return parts.filter(function(p) { return validPathPart(p, keepBlanks) }) .join('/') .split(/^|\/(?!$)/); } -exports.normalizeArray = function (original, keepBlanks) { +exports.normalizeArray = function(original, keepBlanks) { var parts = cleanArray(original, keepBlanks); - if (!parts.length || (parts.length === 1 && !parts[0])) return ["."]; + if (!parts.length || (parts.length === 1 && !parts[0])) return ['.']; // now we're fully ready to rock. // leading/trailing invalids have been stripped off. // if it comes in starting with a slash, or ending with a slash, - var leadingSlash = (parts[0].charAt(0) === "/"); + var leadingSlash = (parts[0].charAt(0) === '/'); if (leadingSlash) parts[0] = parts[0].substr(1); var last = parts.slice(-1)[0]; - var tailingSlash = (last.substr(-1) === "/"); + var tailingSlash = (last.substr(-1) === '/'); if (tailingSlash) parts[parts.length - 1] = last.slice(0, -1); var directories = []; var prev; - for (var i = 0, l = parts.length - 1 ; i <= l ; i ++) { + for (var i = 0, l = parts.length - 1; i <= l; i++) { var directory = parts[i]; // if it's blank, and we're not keeping blanks, then skip it. - if (directory === "" && !keepBlanks) continue; + if (directory === '' && !keepBlanks) continue; // if it's a dot, then skip it - if (directory === "." && ( - directories.length - || (i === 0 && !(tailingSlash && i === l)) - || (i === 0 && leadingSlash) - )) continue; + if (directory === '.' && (directories.length || + (i === 0 && !(tailingSlash && i === l)) || + (i === 0 && leadingSlash))) continue; // if we're dealing with an absolute path, then discard ..s that go // above that the base. - if (leadingSlash && directories.length === 0 && directory === "..") { + if (leadingSlash && directories.length === 0 && directory === '..') { continue; } // trying to go up a dir - if ( - directory === ".." - && directories.length - && prev !== ".." - && prev !== undefined - ) { + if (directory === '..' && directories.length && prev !== '..' && + prev !== undefined) { directories.pop(); prev = directories.slice(-1)[0]; } else { @@ -98,27 +92,27 @@ exports.normalizeArray = function (original, keepBlanks) { } } if (!directories.length) { - directories = [ leadingSlash || tailingSlash ? "" : "." ]; + directories = [leadingSlash || tailingSlash ? '' : '.']; } var last = directories.slice(-1)[0]; - if (tailingSlash && last.substr(-1) !== "/") { - directories[directories.length-1] += "/"; + if (tailingSlash && last.substr(-1) !== '/') { + directories[directories.length - 1] += '/'; } - if (leadingSlash && directories[0].charAt(0) !== "/") { - if (directories[0] === ".") directories[0] = ""; - directories[0] = "/" + directories[0]; + if (leadingSlash && directories[0].charAt(0) !== '/') { + if (directories[0] === '.') directories[0] = ''; + directories[0] = '/' + directories[0]; } return directories; }; -exports.normalize = function (path, keepBlanks) { +exports.normalize = function(path, keepBlanks) { return exports.join(path, keepBlanks || false); }; -exports.dirname = function (path) { - if (path.length > 1 && '/' === path[path.length-1]) { +exports.dirname = function(path) { + if (path.length > 1 && '/' === path[path.length - 1]) { path = path.replace(/\/+$/, ''); } var lastSlash = path.lastIndexOf('/'); @@ -133,8 +127,8 @@ exports.dirname = function (path) { }; -exports.basename = function (path, ext) { - var f = path.substr(path.lastIndexOf("/") + 1); +exports.basename = function(path, ext) { + var f = path.substr(path.lastIndexOf('/') + 1); if (ext && f.substr(-1 * ext.length) === ext) { f = f.substr(0, f.length - ext.length); } @@ -142,7 +136,7 @@ exports.basename = function (path, ext) { }; -exports.extname = function (path) { +exports.extname = function(path) { var dot = path.lastIndexOf('.'), slash = path.lastIndexOf('/'); // The last dot must be in the last path component, and it (the last dot) must @@ -152,18 +146,18 @@ exports.extname = function (path) { }; -exports.exists = function (path, callback) { - process.binding('fs').stat(path, function (err, stats) { +exports.exists = function(path, callback) { + process.binding('fs').stat(path, function(err, stats) { if (callback) callback(err ? false : true); }); }; -exports.existsSync = function (path) { +exports.existsSync = function(path) { try { process.binding('fs').stat(path); return true; - } catch(e){ + } catch (e) { return false; } }; |