code: @SneakyThrows(InterruptedException.class)
      public static <ExceptionT extends Exception, ResultT> ResultT handleInterruptedCall(InterruptibleCall<ExceptionT, ResultT> call)
              throws ExceptionT {
          try {
              return call.call();
          } catch (InterruptedException e) {
              Thread.currentThread().interrupt();
              throw e;
          }
      }
docs: Eliminates boilerplate code of catching and re-interrupting the thread.
  <p>
  NOTE: This method currently has the limitation that it can only handle functions that throw up to one additional
  exception besides {@link InterruptedException}. This is a limitation of the Compiler.
  
  @param call         A method that should be run handling interrupts automatically
  @param <ExceptionT> The type of exception.
  @param <ResultT>    The type of the result.
  @throws ExceptionT If thrown by call.
  @return The result of the call.