code: function tryCatchNextTick(object, method, args) {
    try {
      return method.apply(object, args);
    } catch (error) {
      process.nextTick(function () {
        throw error;
      });
    }
  }
docs: Invoke method with args against object in a try-catch block, re-throwing any exceptions in the next tick of the event loop, so that they won't get captured/swallowed by the caller.