docs: function parseYargs(yargs, args, callback) {
    // Since yargs doesn't nextTick its callback, this function must be careful
    // that exceptions thrown from callback (which propagate through yargs.parse)
    // are not caught and passed to a second invocation of callback.
    let called = false;
    try {
      yargs.parse(args, function(...cbargs) {
        called = true;
        return callback.apply(this, cbargs);
      });
    } catch (err) {
      if (called) {
        // err was thrown after or by callback.  Let it propagate.
        throw err;
      } else {
        callback(err);
      }
    }
  }