| 20248 | return reverse.split("").reverse().join(""); |
| 20249 | } |
| 20250 | _cloneExecOptions(options) { |
| 20251 | options = options || {}; |
| 20252 | const result = { |
| 20253 | cwd: options.cwd || process.cwd(), |
| 20254 | env: options.env || process.env, |
| 20255 | silent: options.silent || false, |
| 20256 | windowsVerbatimArguments: options.windowsVerbatimArguments || false, |
| 20257 | failOnStdErr: options.failOnStdErr || false, |
| 20258 | ignoreReturnCode: options.ignoreReturnCode || false, |
| 20259 | delay: options.delay || 1e4 |
| 20260 | }; |
| 20261 | result.outStream = options.outStream || process.stdout; |
| 20262 | result.errStream = options.errStream || process.stderr; |
| 20263 | return result; |
| 20264 | } |
| 20265 | _getSpawnOptions(options, toolPath) { |
| 20266 | options = options || {}; |
| 20267 | const result = {}; |