* @param {!Function} fn . * @return {!Promise } . * @template T
(fn)
| 27 | * @template T |
| 28 | */ |
| 29 | function checkedCall(fn) { |
| 30 | return new Promise((resolve, reject) => { |
| 31 | try { |
| 32 | fn((err, value) => { |
| 33 | if (err) { |
| 34 | reject(err) |
| 35 | } else { |
| 36 | resolve(value) |
| 37 | } |
| 38 | }) |
| 39 | } catch (e) { |
| 40 | reject(e) |
| 41 | } |
| 42 | }) |
| 43 | } |
| 44 | |
| 45 | /** |
| 46 | * Recursively removes a directory and all of its contents. This is equivalent |