code: public static Result compile(DiagnosticListener<JavaFileObject> listener, String[] args) {
      return ErrorProneCompiler.builder().listenToDiagnostics(listener).build().run(args);
    }
docs: Compiles in-process.
  
  @param listener listens to the diagnostics produced by error-prone
  @param args the same args which would be passed to javac on the command line
  @return result from the compiler invocation