1'use strict'; 2 3function posix(path) { 4 return path.charAt(0) === '/'; 5} 6 7function win32(path) { 8 // https://github.com/nodejs/node/blob/b3fcc245fb25539909ef1d5eaa01dbf92e168633/lib/path.js#L56 9 var splitDeviceRe = /^([a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/]+[^\\\/]+)?([\\\/])?([\s\S]*?)$/; 10 var result = splitDeviceRe.exec(path); 11 var device = result[1] || ''; 12 var isUnc = Boolean(device && device.charAt(1) !== ':'); 13 14 // UNC paths are always absolute 15 return Boolean(result[2] || isUnc); 16} 17 18module.exports = process.platform === 'win32' ? win32 : posix; 19module.exports.posix = posix; 20module.exports.win32 = win32; 21