override def invoke()

in src/main/scala/kotlin/KotlinCompile.scala [205:223]


      override def invoke(proxy: scala.Any, method: Method, args: Array[AnyRef]): AnyRef = {
        if (method.getName == "report") {
          val Array(severity, message, location) = args
          val l = location.asInstanceOf[CompilerMessageLocation]
          val msg = Option(l).map(x => x.getPath).fold(message.toString)(loc =>
            loc + ": " + l.getLine + ", " + l.getColumn + ": " + message)
          severity.toString match {
            case "INFO"                 => s.log.info(msg)
            case "WARNING"              => s.log.warn(msg)
            case "STRONG_WARNING"       => s.log.warn(msg)
            case "ERROR"  | "EXCEPTION" => s.log.error(msg)
            case "OUTPUT" | "LOGGING"   => s.log.debug(msg)
          }
          return null
        } else if (method.getName == "hasErrors") {
          return java.lang.Boolean.FALSE
        }
        null
      }