mirror of
https://github.com/realm/SwiftLint.git
synced 2026-06-06 20:18:40 +00:00
29 lines
934 B
Swift
29 lines
934 B
Swift
//
|
|
// XcodeReporter.swift
|
|
// SwiftLint
|
|
//
|
|
// Created by JP Simard on 9/19/15.
|
|
// Copyright © 2015 Realm. All rights reserved.
|
|
//
|
|
|
|
public struct XcodeReporter: Reporter {
|
|
public static let identifier = "xcode"
|
|
public static let isRealtime = true
|
|
|
|
public var description: String {
|
|
return "Reports violations in the format Xcode uses to display in the IDE. (default)"
|
|
}
|
|
|
|
public static func generateReport(violations: [StyleViolation]) -> String {
|
|
return violations.map(generateForSingleViolation).joinWithSeparator("\n")
|
|
}
|
|
|
|
internal static func generateForSingleViolation(violation: StyleViolation) -> String {
|
|
// {full_path_to_file}{:line}{:character}: {error,warning}: {content}
|
|
return "\(violation.location): " +
|
|
"\(violation.severity.rawValue.lowercaseString): " +
|
|
"\(violation.type) Violation: " +
|
|
(violation.reason ?? "")
|
|
}
|
|
}
|