def apply()

in scrooge-linter/src/main/scala/com/twitter/scrooge/linter/Linter.scala [63:94]


  def apply(doc: Document, inputFile: String): Int = {

    val messages = LintRule.all(rules)(doc)

    val errorCount = messages.count(_.level == Error)
    val warnCount = messages.count(_.level == Warning)

    if (cfg.fatalWarnings) {
      val errorAndWarnCount = errorCount + warnCount
      messages.foreach {
        case LintMessage(msg, _) =>
          addError(msg, inputFile)
      }

      if (errorAndWarnCount > 0) {
        warning("%d warnings and %d errors found".format(0, errorAndWarnCount))
      }
      errorAndWarnCount
    } else {
      messages.foreach {
        case LintMessage(msg, Error) =>
          addError(msg, inputFile)
        case LintMessage(msg, Warning) =>
          warning(s"$inputFile\n$msg")
        case _ => ()
      }
      if (errorCount + warnCount > 0) {
        warning("%d warnings and %d errors found".format(warnCount, errorCount))
      }
      errorCount
    }
  }