• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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