| 123456789101112131415161718192021222324252627282930313233343536373839 | 
							- 'use strict';
 
- // Older verions of Node.js might not have `util.getSystemErrorName()`.
 
- // In that case, fall back to a deprecated internal.
 
- const util = require('util');
 
- let uv;
 
- if (typeof util.getSystemErrorName === 'function') {
 
- 	module.exports = util.getSystemErrorName;
 
- } else {
 
- 	try {
 
- 		uv = process.binding('uv');
 
- 		if (typeof uv.errname !== 'function') {
 
- 			throw new TypeError('uv.errname is not a function');
 
- 		}
 
- 	} catch (err) {
 
- 		console.error('execa/lib/errname: unable to establish process.binding(\'uv\')', err);
 
- 		uv = null;
 
- 	}
 
- 	module.exports = code => errname(uv, code);
 
- }
 
- // Used for testing the fallback behavior
 
- module.exports.__test__ = errname;
 
- function errname(uv, code) {
 
- 	if (uv) {
 
- 		return uv.errname(code);
 
- 	}
 
- 	if (!(code < 0)) {
 
- 		throw new Error('err >= 0');
 
- 	}
 
- 	return `Unknown system error ${code}`;
 
- }
 
 
  |