Reduce visibility of rules to be `internal`

There's no reason to expose these publicly and this will make it nicer
to move to a new module outside of the core SwiftLint functionality.
This commit is contained in:
JP Simard 2022-11-08 11:49:12 -05:00
parent 2b0009daf4
commit 4501ea14bb
No known key found for this signature in database
GPG Key ID: 184C3F2916202C58
302 changed files with 1565 additions and 1569 deletions

View File

@ -1,4 +1,4 @@
import SwiftLintFramework
@testable import SwiftLintFramework
import SwiftLintTestHelpers
// swiftlint:disable file_length type_name

View File

@ -14,6 +14,11 @@
in a future release because it is now handled by the Swift compiler.
[JP Simard](https://github.com/jpsim)
* Built-in SwiftLint rules are no longer marked as `public` in
SwiftLintFramework. This only impacts the programmatic API for the
SwiftLintFramework module.
[JP Simard](https://github.com/jpsim)
#### Experimental
* None.

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct AnonymousArgumentInMultilineClosureRule: SwiftSyntaxRule, OptInRule, ConfigurationProviderRule {
public var configuration = SeverityConfiguration(.warning)
struct AnonymousArgumentInMultilineClosureRule: SwiftSyntaxRule, OptInRule, ConfigurationProviderRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "anonymous_argument_in_multiline_closure",
name: "Anonymous Argument in Multiline Closure",
description: "Use named arguments in multiline closures",
@ -33,7 +33,7 @@ public struct AnonymousArgumentInMultilineClosureRule: SwiftSyntaxRule, OptInRul
]
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(locationConverter: file.locationConverter)
}
}

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct BlockBasedKVORule: SwiftSyntaxRule, ConfigurationProviderRule {
public var configuration = SeverityConfiguration(.warning)
struct BlockBasedKVORule: SwiftSyntaxRule, ConfigurationProviderRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "block_based_kvo",
name: "Block Based KVO",
description: "Prefer the new block based KVO API with keypaths when using Swift 3.2 or later.",
@ -35,7 +35,7 @@ public struct BlockBasedKVORule: SwiftSyntaxRule, ConfigurationProviderRule {
]
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(viewMode: .sourceAccurate)
}
}

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct ConvenienceTypeRule: SwiftSyntaxRule, OptInRule, ConfigurationProviderRule {
public var configuration = SeverityConfiguration(.warning)
struct ConvenienceTypeRule: SwiftSyntaxRule, OptInRule, ConfigurationProviderRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "convenience_type",
name: "Convenience Type",
description: "Types used for hosting only static members should be implemented as a caseless enum " +
@ -117,7 +117,7 @@ public struct ConvenienceTypeRule: SwiftSyntaxRule, OptInRule, ConfigurationProv
]
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(viewMode: .sourceAccurate)
}
}

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct DiscouragedAssertRule: SwiftSyntaxRule, OptInRule, ConfigurationProviderRule {
struct DiscouragedAssertRule: SwiftSyntaxRule, OptInRule, ConfigurationProviderRule {
// MARK: - Properties
public var configuration = SeverityConfiguration(.warning)
var configuration = SeverityConfiguration(.warning)
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "discouraged_assert",
name: "Discouraged Assert",
description: "Prefer `assertionFailure()` and/or `preconditionFailure()` over `assert(false)`",
@ -27,11 +27,11 @@ public struct DiscouragedAssertRule: SwiftSyntaxRule, OptInRule, ConfigurationPr
// MARK: - Life cycle
public init() {}
init() {}
// MARK: - Public
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(viewMode: .sourceAccurate)
}
}

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct DiscouragedNoneNameRule: SwiftSyntaxRule, OptInRule, ConfigurationProviderRule {
public var configuration = SeverityConfiguration(.warning)
struct DiscouragedNoneNameRule: SwiftSyntaxRule, OptInRule, ConfigurationProviderRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static var description = RuleDescription(
static var description = RuleDescription(
identifier: "discouraged_none_name",
name: "Discouraged None Name",
description: "Discourages name cases/static members `none`, which can conflict with `Optional<T>.none`.",
@ -178,7 +178,7 @@ public struct DiscouragedNoneNameRule: SwiftSyntaxRule, OptInRule, Configuration
]
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(viewMode: .sourceAccurate)
}
}

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct DiscouragedObjectLiteralRule: SwiftSyntaxRule, OptInRule, ConfigurationProviderRule {
public var configuration = ObjectLiteralConfiguration()
struct DiscouragedObjectLiteralRule: SwiftSyntaxRule, OptInRule, ConfigurationProviderRule {
var configuration = ObjectLiteralConfiguration()
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "discouraged_object_literal",
name: "Discouraged Object Literal",
description: "Prefer initializers over object literals.",
@ -24,7 +24,7 @@ public struct DiscouragedObjectLiteralRule: SwiftSyntaxRule, OptInRule, Configur
]
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(configuration: configuration)
}
}

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct DiscouragedOptionalBooleanRule: OptInRule, ConfigurationProviderRule, SwiftSyntaxRule {
public var configuration = SeverityConfiguration(.warning)
struct DiscouragedOptionalBooleanRule: OptInRule, ConfigurationProviderRule, SwiftSyntaxRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "discouraged_optional_boolean",
name: "Discouraged Optional Boolean",
description: "Prefer non-optional booleans over optional booleans.",
@ -14,7 +14,7 @@ public struct DiscouragedOptionalBooleanRule: OptInRule, ConfigurationProviderRu
triggeringExamples: DiscouragedOptionalBooleanRuleExamples.triggeringExamples
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(viewMode: .sourceAccurate)
}
}

View File

@ -1,11 +1,11 @@
import SourceKittenFramework
public struct DiscouragedOptionalCollectionRule: ASTRule, OptInRule, ConfigurationProviderRule {
public var configuration = SeverityConfiguration(.warning)
struct DiscouragedOptionalCollectionRule: ASTRule, OptInRule, ConfigurationProviderRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "discouraged_optional_collection",
name: "Discouraged Optional Collection",
description: "Prefer empty collection over optional collection.",
@ -14,9 +14,9 @@ public struct DiscouragedOptionalCollectionRule: ASTRule, OptInRule, Configurati
triggeringExamples: DiscouragedOptionalCollectionExamples.triggeringExamples
)
public func validate(file: SwiftLintFile,
kind: SwiftDeclarationKind,
dictionary: SourceKittenDictionary) -> [StyleViolation] {
func validate(file: SwiftLintFile,
kind: SwiftDeclarationKind,
dictionary: SourceKittenDictionary) -> [StyleViolation] {
let offsets = variableViolations(file: file, kind: kind, dictionary: dictionary) +
functionViolations(file: file, kind: kind, dictionary: dictionary)

View File

@ -1,8 +1,8 @@
import Foundation
import SourceKittenFramework
public struct DuplicateImportsRule: ConfigurationProviderRule, CorrectableRule {
public var configuration = SeverityConfiguration(.warning)
struct DuplicateImportsRule: ConfigurationProviderRule, CorrectableRule {
var configuration = SeverityConfiguration(.warning)
// List of all possible import kinds
static let importKinds = [
@ -11,9 +11,9 @@ public struct DuplicateImportsRule: ConfigurationProviderRule, CorrectableRule {
"var", "func"
]
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "duplicate_imports",
name: "Duplicate Imports",
description: "Imports should be unique.",
@ -132,7 +132,7 @@ public struct DuplicateImportsRule: ConfigurationProviderRule, CorrectableRule {
})
}
public func validate(file: SwiftLintFile) -> [StyleViolation] {
func validate(file: SwiftLintFile) -> [StyleViolation] {
return duplicateImports(file: file).map { duplicateImport in
StyleViolation(
ruleDescription: Self.description,
@ -142,7 +142,7 @@ public struct DuplicateImportsRule: ConfigurationProviderRule, CorrectableRule {
}
}
public func correct(file: SwiftLintFile) -> [Correction] {
func correct(file: SwiftLintFile) -> [Correction] {
let duplicateImports = duplicateImports(file: file).reversed().filter {
file.ruleEnabled(violatingRange: $0.range, for: self) != nil
}

View File

@ -3,12 +3,12 @@ import SourceKittenFramework
private typealias SourceKittenElement = SourceKittenDictionary
public struct ExplicitACLRule: OptInRule, ConfigurationProviderRule {
public var configuration = SeverityConfiguration(.warning)
struct ExplicitACLRule: OptInRule, ConfigurationProviderRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "explicit_acl",
name: "Explicit ACL",
description: "All declarations should specify Access Control Level keywords explicitly.",
@ -122,7 +122,7 @@ public struct ExplicitACLRule: OptInRule, ConfigurationProviderRule {
}
}
public func validate(file: SwiftLintFile) -> [StyleViolation] {
func validate(file: SwiftLintFile) -> [StyleViolation] {
let implicitAndExplicitInternalElements = internalTypeElements(in: file.structureDictionary)
guard implicitAndExplicitInternalElements.isNotEmpty else {

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct ExplicitEnumRawValueRule: SwiftSyntaxRule, OptInRule, ConfigurationProviderRule {
public var configuration = SeverityConfiguration(.warning)
struct ExplicitEnumRawValueRule: SwiftSyntaxRule, OptInRule, ConfigurationProviderRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "explicit_enum_raw_value",
name: "Explicit Enum Raw Value",
description: "Enums should be explicitly assigned their raw values.",
@ -79,7 +79,7 @@ public struct ExplicitEnumRawValueRule: SwiftSyntaxRule, OptInRule, Configuratio
]
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(viewMode: .sourceAccurate)
}
}

View File

@ -1,12 +1,12 @@
import SwiftSyntax
import SwiftSyntaxBuilder
public struct ExplicitInitRule: SwiftSyntaxCorrectableRule, ConfigurationProviderRule, OptInRule {
public var configuration = SeverityConfiguration(.warning)
struct ExplicitInitRule: SwiftSyntaxCorrectableRule, ConfigurationProviderRule, OptInRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "explicit_init",
name: "Explicit Init",
description: "Explicitly calling .init() should be avoided.",
@ -171,11 +171,11 @@ public struct ExplicitInitRule: SwiftSyntaxCorrectableRule, ConfigurationProvide
]
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(viewMode: .sourceAccurate)
}
public func makeRewriter(file: SwiftLintFile) -> ViolationsSyntaxRewriter? {
func makeRewriter(file: SwiftLintFile) -> ViolationsSyntaxRewriter? {
Rewriter(
locationConverter: file.locationConverter,
disabledRegions: disabledRegions(file: file)

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct ExplicitTopLevelACLRule: SwiftSyntaxRule, OptInRule, ConfigurationProviderRule {
public var configuration = SeverityConfiguration(.warning)
struct ExplicitTopLevelACLRule: SwiftSyntaxRule, OptInRule, ConfigurationProviderRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "explicit_top_level_acl",
name: "Explicit Top Level ACL",
description: "Top-level declarations should specify Access Control Level keywords explicitly.",
@ -30,7 +30,7 @@ public struct ExplicitTopLevelACLRule: SwiftSyntaxRule, OptInRule, Configuration
]
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(viewMode: .sourceAccurate)
}
}

View File

@ -1,12 +1,12 @@
import Foundation
import SourceKittenFramework
public struct ExplicitTypeInterfaceRule: OptInRule, ConfigurationProviderRule {
public var configuration = ExplicitTypeInterfaceConfiguration()
struct ExplicitTypeInterfaceRule: OptInRule, ConfigurationProviderRule {
var configuration = ExplicitTypeInterfaceConfiguration()
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "explicit_type_interface",
name: "Explicit Type Interface",
description: "Properties should have a type interface",
@ -67,7 +67,7 @@ public struct ExplicitTypeInterfaceRule: OptInRule, ConfigurationProviderRule {
]
)
public func validate(file: SwiftLintFile) -> [StyleViolation] {
func validate(file: SwiftLintFile) -> [StyleViolation] {
let captureGroupRanges = Lazy(self.captureGroupRanges(in: file))
return file.structureDictionary.traverseWithParentsDepthFirst { parents, subDict in
guard let kind = subDict.declarationKind,

View File

@ -1,12 +1,12 @@
import Foundation
import SourceKittenFramework
public struct ExtensionAccessModifierRule: ASTRule, ConfigurationProviderRule, OptInRule {
public var configuration = SeverityConfiguration(.warning)
struct ExtensionAccessModifierRule: ASTRule, ConfigurationProviderRule, OptInRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "extension_access_modifier",
name: "Extension Access Modifier",
description: "Prefer to use extension access modifiers",
@ -92,8 +92,8 @@ public struct ExtensionAccessModifierRule: ASTRule, ConfigurationProviderRule, O
]
)
public func validate(file: SwiftLintFile, kind: SwiftDeclarationKind,
dictionary: SourceKittenDictionary) -> [StyleViolation] {
func validate(file: SwiftLintFile, kind: SwiftDeclarationKind,
dictionary: SourceKittenDictionary) -> [StyleViolation] {
guard kind == .extension, let offset = dictionary.offset,
dictionary.inheritedTypes.isEmpty
else {

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct FallthroughRule: SwiftSyntaxRule, ConfigurationProviderRule, OptInRule {
public var configuration = SeverityConfiguration(.warning)
struct FallthroughRule: SwiftSyntaxRule, ConfigurationProviderRule, OptInRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "fallthrough",
name: "Fallthrough",
description: "Fallthrough should be avoided.",
@ -30,7 +30,7 @@ public struct FallthroughRule: SwiftSyntaxRule, ConfigurationProviderRule, OptIn
]
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(viewMode: .sourceAccurate)
}
}

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct FatalErrorMessageRule: SwiftSyntaxRule, ConfigurationProviderRule, OptInRule {
public var configuration = SeverityConfiguration(.warning)
struct FatalErrorMessageRule: SwiftSyntaxRule, ConfigurationProviderRule, OptInRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "fatal_error_message",
name: "Fatal Error Message",
description: "A fatalError call should have a message.",
@ -36,7 +36,7 @@ public struct FatalErrorMessageRule: SwiftSyntaxRule, ConfigurationProviderRule,
]
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(viewMode: .sourceAccurate)
}
}

View File

@ -1,22 +1,22 @@
import Foundation
import SourceKittenFramework
public struct FileNameNoSpaceRule: ConfigurationProviderRule, OptInRule, SourceKitFreeRule {
public var configuration = FileNameNoSpaceConfiguration(
struct FileNameNoSpaceRule: ConfigurationProviderRule, OptInRule, SourceKitFreeRule {
var configuration = FileNameNoSpaceConfiguration(
severity: .warning,
excluded: []
)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "file_name_no_space",
name: "File Name No Space",
description: "File name should not contain any whitespace.",
kind: .idiomatic
)
public func validate(file: SwiftLintFile) -> [StyleViolation] {
func validate(file: SwiftLintFile) -> [StyleViolation] {
guard let filePath = file.path,
case let fileName = filePath.bridge().lastPathComponent,
!configuration.excluded.contains(fileName),

View File

@ -1,7 +1,7 @@
import SwiftSyntax
public struct FileNameRule: ConfigurationProviderRule, OptInRule, SourceKitFreeRule {
public var configuration = FileNameConfiguration(
struct FileNameRule: ConfigurationProviderRule, OptInRule, SourceKitFreeRule {
var configuration = FileNameConfiguration(
severity: .warning,
excluded: ["main.swift", "LinuxMain.swift"],
prefixPattern: "",
@ -9,16 +9,16 @@ public struct FileNameRule: ConfigurationProviderRule, OptInRule, SourceKitFreeR
nestedTypeSeparator: "."
)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "file_name",
name: "File Name",
description: "File name should match a type or extension declared in the file (if any).",
kind: .idiomatic
)
public func validate(file: SwiftLintFile) -> [StyleViolation] {
func validate(file: SwiftLintFile) -> [StyleViolation] {
guard let filePath = file.path,
case let fileName = filePath.bridge().lastPathComponent,
!configuration.excluded.contains(fileName) else {

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct ForWhereRule: SwiftSyntaxRule, ConfigurationProviderRule {
public var configuration = ForWhereRuleConfiguration()
struct ForWhereRule: SwiftSyntaxRule, ConfigurationProviderRule {
var configuration = ForWhereRuleConfiguration()
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "for_where",
name: "For Where",
description: "`where` clauses are preferred over a single `if` inside a `for`.",
@ -118,7 +118,7 @@ public struct ForWhereRule: SwiftSyntaxRule, ConfigurationProviderRule {
]
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(allowForAsFilter: configuration.allowForAsFilter)
}
}

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct ForceCastRule: ConfigurationProviderRule, SwiftSyntaxRule {
public var configuration = SeverityConfiguration(.error)
struct ForceCastRule: ConfigurationProviderRule, SwiftSyntaxRule {
var configuration = SeverityConfiguration(.error)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "force_cast",
name: "Force Cast",
description: "Force casts should be avoided.",
@ -16,7 +16,7 @@ public struct ForceCastRule: ConfigurationProviderRule, SwiftSyntaxRule {
triggeringExamples: [ Example("NSNumber() ↓as! Int\n") ]
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
ForceCastRuleVisitor(viewMode: .sourceAccurate)
}
}

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct ForceTryRule: ConfigurationProviderRule, SwiftSyntaxRule {
public var configuration = SeverityConfiguration(.error)
struct ForceTryRule: ConfigurationProviderRule, SwiftSyntaxRule {
var configuration = SeverityConfiguration(.error)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "force_try",
name: "Force Try",
description: "Force tries should be avoided.",
@ -26,7 +26,7 @@ public struct ForceTryRule: ConfigurationProviderRule, SwiftSyntaxRule {
]
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(viewMode: .sourceAccurate)
}
}

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct ForceUnwrappingRule: OptInRule, SwiftSyntaxRule, ConfigurationProviderRule {
public var configuration = SeverityConfiguration(.warning)
struct ForceUnwrappingRule: OptInRule, SwiftSyntaxRule, ConfigurationProviderRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "force_unwrapping",
name: "Force Unwrapping",
description: "Force unwrapping should be avoided.",
@ -67,7 +67,7 @@ public struct ForceUnwrappingRule: OptInRule, SwiftSyntaxRule, ConfigurationProv
]
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
ForceUnwrappingVisitor(viewMode: .sourceAccurate)
}
}

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct FunctionDefaultParameterAtEndRule: SwiftSyntaxRule, ConfigurationProviderRule, OptInRule {
public var configuration = SeverityConfiguration(.warning)
struct FunctionDefaultParameterAtEndRule: SwiftSyntaxRule, ConfigurationProviderRule, OptInRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "function_default_parameter_at_end",
name: "Function Default Parameter at End",
description: "Prefer to locate parameters with defaults toward the end of the parameter list.",
@ -51,7 +51,7 @@ public struct FunctionDefaultParameterAtEndRule: SwiftSyntaxRule, ConfigurationP
]
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(viewMode: .sourceAccurate)
}
}

View File

@ -1,15 +1,15 @@
import Foundation
import SwiftSyntax
public struct GenericTypeNameRule: SwiftSyntaxRule, ConfigurationProviderRule {
public var configuration = NameConfiguration(minLengthWarning: 1,
minLengthError: 0,
maxLengthWarning: 20,
maxLengthError: 1000)
struct GenericTypeNameRule: SwiftSyntaxRule, ConfigurationProviderRule {
var configuration = NameConfiguration(minLengthWarning: 1,
minLengthError: 0,
maxLengthWarning: 20,
maxLengthError: 1000)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "generic_type_name",
name: "Generic Type Name",
description: "Generic type name should only contain alphanumeric characters, start with an " +
@ -50,7 +50,7 @@ public struct GenericTypeNameRule: SwiftSyntaxRule, ConfigurationProviderRule {
}
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(configuration: configuration)
}
}

View File

@ -1,14 +1,14 @@
import SwiftSyntax
public struct ImplicitlyUnwrappedOptionalRule: SwiftSyntaxRule, ConfigurationProviderRule, OptInRule {
public var configuration = ImplicitlyUnwrappedOptionalConfiguration(
struct ImplicitlyUnwrappedOptionalRule: SwiftSyntaxRule, ConfigurationProviderRule, OptInRule {
var configuration = ImplicitlyUnwrappedOptionalConfiguration(
mode: .allExceptIBOutlets,
severityConfiguration: SeverityConfiguration(.warning)
)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "implicitly_unwrapped_optional",
name: "Implicitly Unwrapped Optional",
description: "Implicitly unwrapped optionals should be avoided when possible.",
@ -35,7 +35,7 @@ public struct ImplicitlyUnwrappedOptionalRule: SwiftSyntaxRule, ConfigurationPro
]
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(mode: configuration.mode)
}
}

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct IsDisjointRule: SwiftSyntaxRule, ConfigurationProviderRule {
public var configuration = SeverityConfiguration(.warning)
struct IsDisjointRule: SwiftSyntaxRule, ConfigurationProviderRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "is_disjoint",
name: "Is Disjoint",
description: "Prefer using `Set.isDisjoint(with:)` over `Set.intersection(_:).isEmpty`.",
@ -22,7 +22,7 @@ public struct IsDisjointRule: SwiftSyntaxRule, ConfigurationProviderRule {
]
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(viewMode: .sourceAccurate)
}
}

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct JoinedDefaultParameterRule: SwiftSyntaxCorrectableRule, ConfigurationProviderRule, OptInRule {
public var configuration = SeverityConfiguration(.warning)
struct JoinedDefaultParameterRule: SwiftSyntaxCorrectableRule, ConfigurationProviderRule, OptInRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "joined_default_parameter",
name: "Joined Default Parameter",
description: "Discouraged explicit usage of the default separator.",
@ -38,11 +38,11 @@ public struct JoinedDefaultParameterRule: SwiftSyntaxCorrectableRule, Configurat
]
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(viewMode: .sourceAccurate)
}
public func makeRewriter(file: SwiftLintFile) -> ViolationsSyntaxRewriter? {
func makeRewriter(file: SwiftLintFile) -> ViolationsSyntaxRewriter? {
Rewriter(
locationConverter: file.locationConverter,
disabledRegions: disabledRegions(file: file)

View File

@ -1,9 +1,9 @@
public struct LegacyCGGeometryFunctionsRule: SwiftSyntaxCorrectableRule, ConfigurationProviderRule {
public var configuration = SeverityConfiguration(.warning)
struct LegacyCGGeometryFunctionsRule: SwiftSyntaxCorrectableRule, ConfigurationProviderRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "legacy_cggeometry_functions",
name: "Legacy CGGeometry Functions",
description: "Struct extension properties and methods are preferred over legacy functions",
@ -102,11 +102,11 @@ public struct LegacyCGGeometryFunctionsRule: SwiftSyntaxCorrectableRule, Configu
"CGRectIntersection": .function(name: "intersect", argumentLabels: [""])
]
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
LegacyFunctionRuleHelper.Visitor(legacyFunctions: Self.legacyFunctions)
}
public func makeRewriter(file: SwiftLintFile) -> ViolationsSyntaxRewriter? {
func makeRewriter(file: SwiftLintFile) -> ViolationsSyntaxRewriter? {
LegacyFunctionRuleHelper.Rewriter(
legacyFunctions: Self.legacyFunctions,
locationConverter: file.locationConverter,

View File

@ -1,12 +1,12 @@
import SwiftSyntax
import SwiftSyntaxBuilder
public struct LegacyConstantRule: SwiftSyntaxCorrectableRule, ConfigurationProviderRule {
public var configuration = SeverityConfiguration(.warning)
struct LegacyConstantRule: SwiftSyntaxCorrectableRule, ConfigurationProviderRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "legacy_constant",
name: "Legacy Constant",
description: "Struct-scoped constants are preferred over legacy global constants.",
@ -16,11 +16,11 @@ public struct LegacyConstantRule: SwiftSyntaxCorrectableRule, ConfigurationProvi
corrections: LegacyConstantRuleExamples.corrections
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(viewMode: .sourceAccurate)
}
public func makeRewriter(file: SwiftLintFile) -> ViolationsSyntaxRewriter? {
func makeRewriter(file: SwiftLintFile) -> ViolationsSyntaxRewriter? {
Rewriter(
locationConverter: file.locationConverter,
disabledRegions: disabledRegions(file: file)

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct LegacyConstructorRule: SwiftSyntaxCorrectableRule, ConfigurationProviderRule {
public var configuration = SeverityConfiguration(.warning)
struct LegacyConstructorRule: SwiftSyntaxCorrectableRule, ConfigurationProviderRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "legacy_constructor",
name: "Legacy Constructor",
description: "Swift constructors are preferred over legacy convenience functions.",
@ -124,11 +124,11 @@ public struct LegacyConstructorRule: SwiftSyntaxCorrectableRule, ConfigurationPr
"NSEdgeInsetsMake": "NSEdgeInsets",
"UIOffsetMake": "UIOffset"]
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(viewMode: .sourceAccurate)
}
public func makeRewriter(file: SwiftLintFile) -> ViolationsSyntaxRewriter? {
func makeRewriter(file: SwiftLintFile) -> ViolationsSyntaxRewriter? {
Rewriter(
locationConverter: file.locationConverter,
disabledRegions: disabledRegions(file: file)

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct LegacyHashingRule: SwiftSyntaxRule, ConfigurationProviderRule {
public var configuration = SeverityConfiguration(.warning)
struct LegacyHashingRule: SwiftSyntaxRule, ConfigurationProviderRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "legacy_hashing",
name: "Legacy Hashing",
description: "Prefer using the `hash(into:)` function instead of overriding `hashValue`",
@ -75,7 +75,7 @@ public struct LegacyHashingRule: SwiftSyntaxRule, ConfigurationProviderRule {
]
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(viewMode: .sourceAccurate)
}
}

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct LegacyMultipleRule: OptInRule, ConfigurationProviderRule, SwiftSyntaxRule {
public var configuration = SeverityConfiguration(.warning)
struct LegacyMultipleRule: OptInRule, ConfigurationProviderRule, SwiftSyntaxRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "legacy_multiple",
name: "Legacy Multiple",
description: "Prefer using the `isMultiple(of:)` function instead of using the remainder operator (`%`).",
@ -39,11 +39,11 @@ public struct LegacyMultipleRule: OptInRule, ConfigurationProviderRule, SwiftSyn
]
)
public func preprocess(syntaxTree: SourceFileSyntax) -> SourceFileSyntax? {
func preprocess(syntaxTree: SourceFileSyntax) -> SourceFileSyntax? {
syntaxTree.folded()
}
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(viewMode: .sourceAccurate)
}
}

View File

@ -1,9 +1,9 @@
public struct LegacyNSGeometryFunctionsRule: SwiftSyntaxCorrectableRule, ConfigurationProviderRule {
public var configuration = SeverityConfiguration(.warning)
struct LegacyNSGeometryFunctionsRule: SwiftSyntaxCorrectableRule, ConfigurationProviderRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "legacy_nsgeometry_functions",
name: "Legacy NSGeometry Functions",
description: "Struct extension properties and methods are preferred over legacy functions",
@ -102,11 +102,11 @@ public struct LegacyNSGeometryFunctionsRule: SwiftSyntaxCorrectableRule, Configu
"NSPointInRect": .function(name: "contains", argumentLabels: [""], reversed: true)
]
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
LegacyFunctionRuleHelper.Visitor(legacyFunctions: Self.legacyFunctions)
}
public func makeRewriter(file: SwiftLintFile) -> ViolationsSyntaxRewriter? {
func makeRewriter(file: SwiftLintFile) -> ViolationsSyntaxRewriter? {
LegacyFunctionRuleHelper.Rewriter(
legacyFunctions: Self.legacyFunctions,
locationConverter: file.locationConverter,

View File

@ -28,12 +28,12 @@ private let legacyObjcTypes = [
"NSUUID"
]
public struct LegacyObjcTypeRule: SwiftSyntaxRule, OptInRule, ConfigurationProviderRule {
public var configuration = SeverityConfiguration(.warning)
struct LegacyObjcTypeRule: SwiftSyntaxRule, OptInRule, ConfigurationProviderRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "legacy_objc_type",
name: "Legacy Objective-C Reference Type",
description: "Prefer Swift value types to bridged Objective-C reference types",
@ -68,7 +68,7 @@ public struct LegacyObjcTypeRule: SwiftSyntaxRule, OptInRule, ConfigurationProvi
]
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(viewMode: .sourceAccurate)
}
}

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct LegacyRandomRule: SwiftSyntaxRule, ConfigurationProviderRule {
public var configuration = SeverityConfiguration(.warning)
struct LegacyRandomRule: SwiftSyntaxRule, ConfigurationProviderRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static var description = RuleDescription(
static var description = RuleDescription(
identifier: "legacy_random",
name: "Legacy Random",
description: "Prefer using `type.random(in:)` over legacy functions.",
@ -22,7 +22,7 @@ public struct LegacyRandomRule: SwiftSyntaxRule, ConfigurationProviderRule {
]
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(viewMode: .sourceAccurate)
}
}

View File

@ -1,12 +1,12 @@
import Foundation
import SourceKittenFramework
public struct NimbleOperatorRule: ConfigurationProviderRule, OptInRule, CorrectableRule {
public var configuration = SeverityConfiguration(.warning)
struct NimbleOperatorRule: ConfigurationProviderRule, OptInRule, CorrectableRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "nimble_operator",
name: "Nimble Operator",
description: "Prefer Nimble operator overloads over free matcher functions.",
@ -98,7 +98,7 @@ public struct NimbleOperatorRule: ConfigurationProviderRule, OptInRule, Correcta
"beNil": (to: "==", toNot: "!=", .nullary(analogueValue: "nil"))
]
public func validate(file: SwiftLintFile) -> [StyleViolation] {
func validate(file: SwiftLintFile) -> [StyleViolation] {
let matches = violationMatchesRanges(in: file)
return matches.map {
StyleViolation(ruleDescription: Self.description,
@ -144,7 +144,7 @@ public struct NimbleOperatorRule: ConfigurationProviderRule, OptInRule, Correcta
.map { $0.0 }
}
public func correct(file: SwiftLintFile) -> [Correction] {
func correct(file: SwiftLintFile) -> [Correction] {
let matches = violationMatchesRanges(in: file)
.filter { file.ruleEnabled(violatingRanges: [$0], for: self).isNotEmpty }
guard matches.isNotEmpty else { return [] }

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct NoExtensionAccessModifierRule: SwiftSyntaxRule, OptInRule, ConfigurationProviderRule {
public var configuration = SeverityConfiguration(.error)
struct NoExtensionAccessModifierRule: SwiftSyntaxRule, OptInRule, ConfigurationProviderRule {
var configuration = SeverityConfiguration(.error)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "no_extension_access_modifier",
name: "No Extension Access Modifier",
description: "Prefer not to use extension access modifiers",
@ -23,7 +23,7 @@ public struct NoExtensionAccessModifierRule: SwiftSyntaxRule, OptInRule, Configu
]
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(viewMode: .sourceAccurate)
}
}

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct NoFallthroughOnlyRule: SwiftSyntaxRule, ConfigurationProviderRule {
public var configuration = SeverityConfiguration(.warning)
struct NoFallthroughOnlyRule: SwiftSyntaxRule, ConfigurationProviderRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "no_fallthrough_only",
name: "No Fallthrough Only",
description: "Fallthroughs can only be used if the `case` contains at least one other statement.",
@ -14,7 +14,7 @@ public struct NoFallthroughOnlyRule: SwiftSyntaxRule, ConfigurationProviderRule
triggeringExamples: NoFallthroughOnlyRuleExamples.triggeringExamples
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(viewMode: .sourceAccurate)
}
}

View File

@ -1,11 +1,11 @@
import SourceKittenFramework
public struct NoGroupingExtensionRule: OptInRule, ConfigurationProviderRule {
public var configuration = SeverityConfiguration(.warning)
struct NoGroupingExtensionRule: OptInRule, ConfigurationProviderRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "no_grouping_extension",
name: "No Grouping Extension",
description: "Extensions shouldn't be used to group code within the same source file.",
@ -23,7 +23,7 @@ public struct NoGroupingExtensionRule: OptInRule, ConfigurationProviderRule {
]
)
public func validate(file: SwiftLintFile) -> [StyleViolation] {
func validate(file: SwiftLintFile) -> [StyleViolation] {
let collector = NamespaceCollector(dictionary: file.structureDictionary)
let elements = collector.findAllElements(of: [.class, .enum, .struct, .extension])

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct NoMagicNumbersRule: SwiftSyntaxRule, OptInRule, ConfigurationProviderRule {
public init() {}
struct NoMagicNumbersRule: SwiftSyntaxRule, OptInRule, ConfigurationProviderRule {
init() {}
public var configuration = SeverityConfiguration(.warning)
var configuration = SeverityConfiguration(.warning)
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "no_magic_numbers",
name: "No Magic Numbers",
description: "Magic numbers should be replaced by named constants.",
@ -50,7 +50,7 @@ public struct NoMagicNumbersRule: SwiftSyntaxRule, OptInRule, ConfigurationProvi
]
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(viewMode: .sourceAccurate)
}
}

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct ObjectLiteralRule: SwiftSyntaxRule, ConfigurationProviderRule, OptInRule {
public var configuration = ObjectLiteralConfiguration()
struct ObjectLiteralRule: SwiftSyntaxRule, ConfigurationProviderRule, OptInRule {
var configuration = ObjectLiteralConfiguration()
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "object_literal",
name: "Object Literal",
description: "Prefer object literals over image and color inits.",
@ -33,7 +33,7 @@ public struct ObjectLiteralRule: SwiftSyntaxRule, ConfigurationProviderRule, Opt
}
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(validateImageLiteral: configuration.imageLiteral, validateColorLiteral: configuration.colorLiteral)
}
}

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct PatternMatchingKeywordsRule: SwiftSyntaxRule, ConfigurationProviderRule, OptInRule {
public var configuration = SeverityConfiguration(.warning)
struct PatternMatchingKeywordsRule: SwiftSyntaxRule, ConfigurationProviderRule, OptInRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "pattern_matching_keywords",
name: "Pattern Matching Keywords",
description: "Combine multiple pattern matching bindings by moving keywords out of tuples.",
@ -35,7 +35,7 @@ public struct PatternMatchingKeywordsRule: SwiftSyntaxRule, ConfigurationProvide
].map(wrapInSwitch)
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(viewMode: .sourceAccurate)
}
}

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct PreferNimbleRule: SwiftSyntaxRule, OptInRule, ConfigurationProviderRule {
public var configuration = SeverityConfiguration(.warning)
struct PreferNimbleRule: SwiftSyntaxRule, OptInRule, ConfigurationProviderRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "prefer_nimble",
name: "Prefer Nimble",
description: "Prefer Nimble matchers over XCTAssert functions.",
@ -24,7 +24,7 @@ public struct PreferNimbleRule: SwiftSyntaxRule, OptInRule, ConfigurationProvide
]
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(viewMode: .sourceAccurate)
}
}

View File

@ -1,9 +1,9 @@
import SwiftSyntax
public struct PreferZeroOverExplicitInitRule: SwiftSyntaxCorrectableRule, OptInRule, ConfigurationProviderRule {
public var configuration = SeverityConfiguration(.warning)
struct PreferZeroOverExplicitInitRule: SwiftSyntaxCorrectableRule, OptInRule, ConfigurationProviderRule {
var configuration = SeverityConfiguration(.warning)
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "prefer_zero_over_explicit_init",
name: "Prefer Zero Over Explicit Init",
description: "Prefer `.zero` over explicit init with zero parameters (e.g. `CGPoint(x: 0, y: 0)`)",
@ -34,13 +34,13 @@ public struct PreferZeroOverExplicitInitRule: SwiftSyntaxCorrectableRule, OptInR
]
)
public init() {}
init() {}
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(viewMode: .sourceAccurate)
}
public func makeRewriter(file: SwiftLintFile) -> ViolationsSyntaxRewriter? {
func makeRewriter(file: SwiftLintFile) -> ViolationsSyntaxRewriter? {
Rewriter(
locationConverter: file.locationConverter,
disabledRegions: disabledRegions(file: file)

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct PrivateOverFilePrivateRule: ConfigurationProviderRule, SwiftSyntaxCorrectableRule {
public var configuration = PrivateOverFilePrivateRuleConfiguration()
struct PrivateOverFilePrivateRule: ConfigurationProviderRule, SwiftSyntaxCorrectableRule {
var configuration = PrivateOverFilePrivateRuleConfiguration()
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "private_over_fileprivate",
name: "Private over fileprivate",
description: "Prefer `private` over `fileprivate` declarations.",
@ -56,11 +56,11 @@ public struct PrivateOverFilePrivateRule: ConfigurationProviderRule, SwiftSyntax
]
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(validateExtensions: configuration.validateExtensions)
}
public func makeRewriter(file: SwiftLintFile) -> ViolationsSyntaxRewriter? {
func makeRewriter(file: SwiftLintFile) -> ViolationsSyntaxRewriter? {
Rewriter(
validateExtensions: configuration.validateExtensions,
locationConverter: file.locationConverter,

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct RedundantNilCoalescingRule: OptInRule, SwiftSyntaxCorrectableRule, ConfigurationProviderRule {
public var configuration = SeverityConfiguration(.warning)
struct RedundantNilCoalescingRule: OptInRule, SwiftSyntaxCorrectableRule, ConfigurationProviderRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "redundant_nil_coalescing",
name: "Redundant Nil Coalescing",
description: "nil coalescing operator is only evaluated if the lhs is nil" +
@ -23,11 +23,11 @@ public struct RedundantNilCoalescingRule: OptInRule, SwiftSyntaxCorrectableRule,
]
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(viewMode: .sourceAccurate)
}
public func makeRewriter(file: SwiftLintFile) -> ViolationsSyntaxRewriter? {
func makeRewriter(file: SwiftLintFile) -> ViolationsSyntaxRewriter? {
Rewriter(
locationConverter: file.locationConverter,
disabledRegions: disabledRegions(file: file)

View File

@ -5,12 +5,12 @@ private let attributeNamesImplyingObjc: Set<String> = [
"IBAction", "IBOutlet", "IBInspectable", "GKInspectable", "IBDesignable", "NSManaged"
]
public struct RedundantObjcAttributeRule: SwiftSyntaxRule, SubstitutionCorrectableRule, ConfigurationProviderRule {
public var configuration = SeverityConfiguration(.warning)
struct RedundantObjcAttributeRule: SwiftSyntaxRule, SubstitutionCorrectableRule, ConfigurationProviderRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "redundant_objc_attribute",
name: "Redundant @objc Attribute",
description: "Objective-C attribute (@objc) is redundant in declaration.",
@ -20,7 +20,7 @@ public struct RedundantObjcAttributeRule: SwiftSyntaxRule, SubstitutionCorrectab
corrections: RedundantObjcAttributeRuleExamples.corrections
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
final class Visitor: ViolationsSyntaxVisitor {
override func visitPost(_ node: AttributeListSyntax) {
if let objcAttribute = node.violatingObjCAttribute {
@ -31,7 +31,7 @@ public struct RedundantObjcAttributeRule: SwiftSyntaxRule, SubstitutionCorrectab
return Visitor(viewMode: .sourceAccurate)
}
public func violationRanges(in file: SwiftLintFile) -> [NSRange] {
func violationRanges(in file: SwiftLintFile) -> [NSRange] {
makeVisitor(file: file)
.walk(tree: file.syntaxTree, handler: \.violations)
.compactMap { violation in
@ -100,7 +100,7 @@ private extension AttributeListSyntax {
}
}
public extension RedundantObjcAttributeRule {
extension RedundantObjcAttributeRule {
func substitution(for violationRange: NSRange, in file: SwiftLintFile) -> (NSRange, String)? {
var whitespaceAndNewlineOffset = 0
let nsCharSet = CharacterSet.whitespacesAndNewlines.bridge()

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct RedundantOptionalInitializationRule: SwiftSyntaxCorrectableRule, ConfigurationProviderRule {
public var configuration = SeverityConfiguration(.warning)
struct RedundantOptionalInitializationRule: SwiftSyntaxCorrectableRule, ConfigurationProviderRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "redundant_optional_initialization",
name: "Redundant Optional Initialization",
description: "Initializing an optional variable with nil is redundant.",
@ -106,11 +106,11 @@ public struct RedundantOptionalInitializationRule: SwiftSyntaxCorrectableRule, C
""")
]
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(viewMode: .sourceAccurate)
}
public func makeRewriter(file: SwiftLintFile) -> ViolationsSyntaxRewriter? {
func makeRewriter(file: SwiftLintFile) -> ViolationsSyntaxRewriter? {
Rewriter(
locationConverter: file.locationConverter,
disabledRegions: disabledRegions(file: file)

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct RedundantSetAccessControlRule: ConfigurationProviderRule, SwiftSyntaxRule {
public var configuration = SeverityConfiguration(.warning)
struct RedundantSetAccessControlRule: ConfigurationProviderRule, SwiftSyntaxRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "redundant_set_access_control",
name: "Redundant Set Access Control Rule",
description: "Property setter access level shouldn't be explicit if " +
@ -60,7 +60,7 @@ public struct RedundantSetAccessControlRule: ConfigurationProviderRule, SwiftSyn
]
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(viewMode: .sourceAccurate)
}
}

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct RedundantStringEnumValueRule: SwiftSyntaxRule, ConfigurationProviderRule {
public var configuration = SeverityConfiguration(.warning)
struct RedundantStringEnumValueRule: SwiftSyntaxRule, ConfigurationProviderRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "redundant_string_enum_value",
name: "Redundant String Enum Value",
description: "String enum values can be omitted when they are equal to the enumcase name.",
@ -61,7 +61,7 @@ public struct RedundantStringEnumValueRule: SwiftSyntaxRule, ConfigurationProvid
]
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(viewMode: .sourceAccurate)
}
}

View File

@ -1,10 +1,10 @@
import Foundation
import SourceKittenFramework
public struct RedundantTypeAnnotationRule: OptInRule, SubstitutionCorrectableRule, ConfigurationProviderRule {
public var configuration = SeverityConfiguration(.warning)
struct RedundantTypeAnnotationRule: OptInRule, SubstitutionCorrectableRule, ConfigurationProviderRule {
var configuration = SeverityConfiguration(.warning)
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "redundant_type_annotation",
name: "Redundant Type Annotation",
description: "Variables should not have redundant type annotation",
@ -76,7 +76,7 @@ public struct RedundantTypeAnnotationRule: OptInRule, SubstitutionCorrectableRul
]
)
public func validate(file: SwiftLintFile) -> [StyleViolation] {
func validate(file: SwiftLintFile) -> [StyleViolation] {
return violationRanges(in: file).map { range in
StyleViolation(
ruleDescription: Self.description,
@ -86,14 +86,14 @@ public struct RedundantTypeAnnotationRule: OptInRule, SubstitutionCorrectableRul
}
}
public func substitution(for violationRange: NSRange, in file: SwiftLintFile) -> (NSRange, String)? {
func substitution(for violationRange: NSRange, in file: SwiftLintFile) -> (NSRange, String)? {
return (violationRange, "")
}
private let typeAnnotationPattern: String
private let expressionPattern: String
public init() {
init() {
typeAnnotationPattern =
":\\s*" + // semicolon and any number of whitespaces
"\\w+" // type name
@ -109,7 +109,7 @@ public struct RedundantTypeAnnotationRule: OptInRule, SubstitutionCorrectableRul
"[\\(\\.]?" // possible opening parenthesis or dot
}
public func violationRanges(in file: SwiftLintFile) -> [NSRange] {
func violationRanges(in file: SwiftLintFile) -> [NSRange] {
let violatingRanges = file
.match(pattern: expressionPattern)
.filter {

View File

@ -1,12 +1,12 @@
import Foundation
import SourceKittenFramework
public struct RedundantVoidReturnRule: ConfigurationProviderRule, SubstitutionCorrectableASTRule {
public var configuration = SeverityConfiguration(.warning)
struct RedundantVoidReturnRule: ConfigurationProviderRule, SubstitutionCorrectableASTRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "redundant_void_return",
name: "Redundant Void Return",
description: "Returning Void in a function declaration is redundant.",
@ -60,8 +60,8 @@ public struct RedundantVoidReturnRule: ConfigurationProviderRule, SubstitutionCo
private let excludingKinds = SyntaxKind.allKinds.subtracting([.typeidentifier])
private let functionKinds = SwiftDeclarationKind.functionKinds.subtracting([.functionSubscript])
public func validate(file: SwiftLintFile, kind: SwiftDeclarationKind,
dictionary: SourceKittenDictionary) -> [StyleViolation] {
func validate(file: SwiftLintFile, kind: SwiftDeclarationKind,
dictionary: SourceKittenDictionary) -> [StyleViolation] {
return violationRanges(in: file, kind: kind, dictionary: dictionary).map {
StyleViolation(ruleDescription: Self.description,
severity: configuration.severity,
@ -69,8 +69,8 @@ public struct RedundantVoidReturnRule: ConfigurationProviderRule, SubstitutionCo
}
}
public func violationRanges(in file: SwiftLintFile, kind: SwiftDeclarationKind,
dictionary: SourceKittenDictionary) -> [NSRange] {
func violationRanges(in file: SwiftLintFile, kind: SwiftDeclarationKind,
dictionary: SourceKittenDictionary) -> [NSRange] {
guard functionKinds.contains(kind),
containsVoidReturnTypeBasedOnTypeName(dictionary: dictionary),
let nameOffset = dictionary.nameOffset,
@ -90,7 +90,7 @@ public struct RedundantVoidReturnRule: ConfigurationProviderRule, SubstitutionCo
return [match]
}
public func substitution(for violationRange: NSRange, in file: SwiftLintFile) -> (NSRange, String)? {
func substitution(for violationRange: NSRange, in file: SwiftLintFile) -> (NSRange, String)? {
return (violationRange, "")
}

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct ReturnValueFromVoidFunctionRule: ConfigurationProviderRule, OptInRule, SwiftSyntaxRule {
public var configuration = SeverityConfiguration(.warning)
struct ReturnValueFromVoidFunctionRule: ConfigurationProviderRule, OptInRule, SwiftSyntaxRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "return_value_from_void_function",
name: "Return Value from Void Function",
description: "Returning values from Void functions should be avoided.",
@ -15,7 +15,7 @@ public struct ReturnValueFromVoidFunctionRule: ConfigurationProviderRule, OptInR
triggeringExamples: ReturnValueFromVoidFunctionRuleExamples.triggeringExamples
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
ReturnValueFromVoidFunctionVisitor(viewMode: .sourceAccurate)
}
}

View File

@ -1,9 +1,9 @@
import SwiftSyntax
public struct ShorthandOptionalBindingRule: OptInRule, SwiftSyntaxCorrectableRule, ConfigurationProviderRule {
public var configuration = SeverityConfiguration(.warning)
struct ShorthandOptionalBindingRule: OptInRule, SwiftSyntaxCorrectableRule, ConfigurationProviderRule {
var configuration = SeverityConfiguration(.warning)
public static var description = RuleDescription(
static var description = RuleDescription(
identifier: "shorthand_optional_binding",
name: "Shorthand Optional Binding",
description: "Use shorthand syntax for optional binding",
@ -79,13 +79,13 @@ public struct ShorthandOptionalBindingRule: OptInRule, SwiftSyntaxCorrectableRul
deprecatedAliases: ["if_let_shadowing"]
)
public init() {}
init() {}
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(viewMode: .sourceAccurate)
}
public func makeRewriter(file: SwiftLintFile) -> ViolationsSyntaxRewriter? {
func makeRewriter(file: SwiftLintFile) -> ViolationsSyntaxRewriter? {
Rewriter(
locationConverter: file.locationConverter,
disabledRegions: disabledRegions(file: file)

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct StaticOperatorRule: SwiftSyntaxRule, ConfigurationProviderRule, OptInRule {
public var configuration = SeverityConfiguration(.warning)
struct StaticOperatorRule: SwiftSyntaxRule, ConfigurationProviderRule, OptInRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "static_operator",
name: "Static Operator",
description: "Operators should be declared as static functions, not free functions.",
@ -78,7 +78,7 @@ public struct StaticOperatorRule: SwiftSyntaxRule, ConfigurationProviderRule, Op
]
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(viewMode: .sourceAccurate)
}
}

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct StrictFilePrivateRule: OptInRule, ConfigurationProviderRule, SwiftSyntaxRule {
public var configuration = SeverityConfiguration(.warning)
struct StrictFilePrivateRule: OptInRule, ConfigurationProviderRule, SwiftSyntaxRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "strict_fileprivate",
name: "Strict fileprivate",
description: "`fileprivate` should be avoided.",
@ -58,7 +58,7 @@ public struct StrictFilePrivateRule: OptInRule, ConfigurationProviderRule, Swift
]
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(viewMode: .sourceAccurate)
}
}

View File

@ -2,12 +2,12 @@ import Foundation
import SourceKittenFramework
import SwiftSyntax
public struct SyntacticSugarRule: CorrectableRule, ConfigurationProviderRule, SourceKitFreeRule {
public var configuration = SeverityConfiguration(.warning)
struct SyntacticSugarRule: CorrectableRule, ConfigurationProviderRule, SourceKitFreeRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "syntactic_sugar",
name: "Syntactic Sugar",
description: "Shorthand syntactic sugar should be used, i.e. [Int] instead of Array<Int>.",
@ -17,7 +17,7 @@ public struct SyntacticSugarRule: CorrectableRule, ConfigurationProviderRule, So
corrections: SyntacticSugarRuleExamples.corrections
)
public func validate(file: SwiftLintFile) -> [StyleViolation] {
func validate(file: SwiftLintFile) -> [StyleViolation] {
let visitor = SyntacticSugarRuleVisitor(viewMode: .sourceAccurate)
return visitor.walk(file: file) { visitor in
flattenViolations(visitor.violations)
@ -33,7 +33,7 @@ public struct SyntacticSugarRule: CorrectableRule, ConfigurationProviderRule, So
return violations.flatMap { [$0] + flattenViolations($0.children) }
}
public func correct(file: SwiftLintFile) -> [Correction] {
func correct(file: SwiftLintFile) -> [Correction] {
let visitor = SyntacticSugarRuleVisitor(viewMode: .sourceAccurate)
return visitor.walk(file: file) { visitor in
var context = CorrectingContext(rule: self, file: file, contents: file.contents)

View File

@ -1,12 +1,12 @@
import SwiftSyntax
import SwiftSyntaxBuilder
public struct ToggleBoolRule: SwiftSyntaxCorrectableRule, ConfigurationProviderRule, OptInRule {
public var configuration = SeverityConfiguration(.warning)
struct ToggleBoolRule: SwiftSyntaxCorrectableRule, ConfigurationProviderRule, OptInRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static var description = RuleDescription(
static var description = RuleDescription(
identifier: "toggle_bool",
name: "Toggle Bool",
description: "Prefer `someBool.toggle()` over `someBool = !someBool`.",
@ -31,11 +31,11 @@ public struct ToggleBoolRule: SwiftSyntaxCorrectableRule, ConfigurationProviderR
]
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(viewMode: .sourceAccurate)
}
public func makeRewriter(file: SwiftLintFile) -> ViolationsSyntaxRewriter? {
func makeRewriter(file: SwiftLintFile) -> ViolationsSyntaxRewriter? {
Rewriter(
locationConverter: file.locationConverter,
disabledRegions: disabledRegions(file: file)

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct TrailingSemicolonRule: SwiftSyntaxCorrectableRule, ConfigurationProviderRule {
public var configuration = SeverityConfiguration(.warning)
struct TrailingSemicolonRule: SwiftSyntaxCorrectableRule, ConfigurationProviderRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "trailing_semicolon",
name: "Trailing Semicolon",
description: "Lines should not have trailing semicolons.",
@ -24,11 +24,11 @@ public struct TrailingSemicolonRule: SwiftSyntaxCorrectableRule, ConfigurationPr
]
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(viewMode: .sourceAccurate)
}
public func makeRewriter(file: SwiftLintFile) -> ViolationsSyntaxRewriter? {
func makeRewriter(file: SwiftLintFile) -> ViolationsSyntaxRewriter? {
Rewriter(
locationConverter: file.locationConverter,
disabledRegions: disabledRegions(file: file)

View File

@ -1,12 +1,12 @@
import Foundation
import SwiftSyntax
public struct TypeNameRule: SwiftSyntaxRule, ConfigurationProviderRule {
public var configuration = TypeNameRuleConfiguration()
struct TypeNameRule: SwiftSyntaxRule, ConfigurationProviderRule {
var configuration = TypeNameRuleConfiguration()
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "type_name",
name: "Type Name",
description: "Type name should only contain alphanumeric characters, start with an " +
@ -17,7 +17,7 @@ public struct TypeNameRule: SwiftSyntaxRule, ConfigurationProviderRule {
triggeringExamples: TypeNameRuleExamples.triggeringExamples
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(configuration: configuration)
}
}

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct UnavailableConditionRule: ConfigurationProviderRule, SwiftSyntaxRule {
public var configuration = SeverityConfiguration(.warning)
struct UnavailableConditionRule: ConfigurationProviderRule, SwiftSyntaxRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "unavailable_condition",
name: "Unavailable Condition",
description: "Use #unavailable/#available instead of #available/#unavailable with an empty body.",
@ -71,7 +71,7 @@ public struct UnavailableConditionRule: ConfigurationProviderRule, SwiftSyntaxRu
]
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
UnavailableConditionRuleVisitor(viewMode: .sourceAccurate)
}
}

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct UnavailableFunctionRule: SwiftSyntaxRule, ConfigurationProviderRule, OptInRule {
public var configuration = SeverityConfiguration(.warning)
struct UnavailableFunctionRule: SwiftSyntaxRule, ConfigurationProviderRule, OptInRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "unavailable_function",
name: "Unavailable Function",
description: "Unimplemented functions should be marked as unavailable.",
@ -72,7 +72,7 @@ public struct UnavailableFunctionRule: SwiftSyntaxRule, ConfigurationProviderRul
]
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(viewMode: .sourceAccurate)
}
}

View File

@ -12,12 +12,12 @@ private func embedInSwitch(
""", file: file, line: line)
}
public struct UnneededBreakInSwitchRule: SwiftSyntaxRule, ConfigurationProviderRule {
public var configuration = SeverityConfiguration(.warning)
struct UnneededBreakInSwitchRule: SwiftSyntaxRule, ConfigurationProviderRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "unneeded_break_in_switch",
name: "Unneeded Break in Switch",
description: "Avoid using unneeded break statements.",
@ -50,7 +50,7 @@ public struct UnneededBreakInSwitchRule: SwiftSyntaxRule, ConfigurationProviderR
]
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
UnneededBreakInSwitchRuleVisitor(viewMode: .sourceAccurate)
}
}

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct UntypedErrorInCatchRule: OptInRule, ConfigurationProviderRule, SwiftSyntaxCorrectableRule {
public var configuration = SeverityConfiguration(.warning)
struct UntypedErrorInCatchRule: OptInRule, ConfigurationProviderRule, SwiftSyntaxCorrectableRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "untyped_error_in_catch",
name: "Untyped Error in Catch",
description: "Catch statements should not declare error variables without type casting.",
@ -87,11 +87,11 @@ public struct UntypedErrorInCatchRule: OptInRule, ConfigurationProviderRule, Swi
Example("do {\n try foo() \n} ↓catch (let error) {}"): Example("do {\n try foo() \n} catch {}")
])
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
UntypedErrorInCatchRuleVisitor(viewMode: .sourceAccurate)
}
public func makeRewriter(file: SwiftLintFile) -> ViolationsSyntaxRewriter? {
func makeRewriter(file: SwiftLintFile) -> ViolationsSyntaxRewriter? {
UntypedErrorInCatchRuleRewriter(
locationConverter: file.locationConverter,
disabledRegions: disabledRegions(file: file)

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct UnusedEnumeratedRule: SwiftSyntaxRule, ConfigurationProviderRule {
public var configuration = SeverityConfiguration(.warning)
struct UnusedEnumeratedRule: SwiftSyntaxRule, ConfigurationProviderRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "unused_enumerated",
name: "Unused Enumerated",
description: "When the index or the item is not used, `.enumerated()` can be removed.",
@ -29,7 +29,7 @@ public struct UnusedEnumeratedRule: SwiftSyntaxRule, ConfigurationProviderRule {
]
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(viewMode: .sourceAccurate)
}
}

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct VoidFunctionInTernaryConditionRule: ConfigurationProviderRule, SwiftSyntaxRule {
public var configuration = SeverityConfiguration(.warning)
struct VoidFunctionInTernaryConditionRule: ConfigurationProviderRule, SwiftSyntaxRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "void_function_in_ternary",
name: "Void Function in Ternary",
description: "Using ternary to call Void functions should be avoided.",
@ -108,7 +108,7 @@ public struct VoidFunctionInTernaryConditionRule: ConfigurationProviderRule, Swi
]
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
VoidFunctionInTernaryConditionVisitor(viewMode: .sourceAccurate)
}
}

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct XCTFailMessageRule: SwiftSyntaxRule, ConfigurationProviderRule {
public var configuration = SeverityConfiguration(.warning)
struct XCTFailMessageRule: SwiftSyntaxRule, ConfigurationProviderRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "xctfail_message",
name: "XCTFail Message",
description: "An XCTFail call should include a description of the assertion.",
@ -36,7 +36,7 @@ public struct XCTFailMessageRule: SwiftSyntaxRule, ConfigurationProviderRule {
]
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(viewMode: .sourceAccurate)
}
}

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct XCTSpecificMatcherRule: SwiftSyntaxRule, OptInRule, ConfigurationProviderRule {
public var configuration = SeverityConfiguration(.warning)
struct XCTSpecificMatcherRule: SwiftSyntaxRule, OptInRule, ConfigurationProviderRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "xct_specific_matcher",
name: "XCTest Specific Matcher",
description: "Prefer specific XCTest matchers over `XCTAssertEqual` and `XCTAssertNotEqual`",
@ -14,7 +14,7 @@ public struct XCTSpecificMatcherRule: SwiftSyntaxRule, OptInRule, ConfigurationP
triggeringExamples: XCTSpecificMatcherRuleExamples.triggeringExamples
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(viewMode: .sourceAccurate)
}
}

View File

@ -9,12 +9,12 @@ import SourceKittenFramework
/// Known false negatives for Images declared as instance variables and containers that provide a label but are
/// not accessibility elements. Known false positives for Images created in a separate function from where they
/// have accessibility properties applied.
public struct AccessibilityLabelForImageRule: ASTRule, ConfigurationProviderRule, OptInRule {
public var configuration = SeverityConfiguration(.warning)
struct AccessibilityLabelForImageRule: ASTRule, ConfigurationProviderRule, OptInRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "accessibility_label_for_image",
name: "Accessibility Label for Image",
description: "All Images that provide context should have an accessibility label. " +
@ -27,8 +27,8 @@ public struct AccessibilityLabelForImageRule: ASTRule, ConfigurationProviderRule
// MARK: AST Rule
public func validate(file: SwiftLintFile, kind: SwiftDeclarationKind,
dictionary: SourceKittenDictionary) -> [StyleViolation] {
func validate(file: SwiftLintFile, kind: SwiftDeclarationKind,
dictionary: SourceKittenDictionary) -> [StyleViolation] {
// Only proceed to check View structs.
guard kind == .struct,
dictionary.inheritedTypes.contains("View"),

View File

@ -7,12 +7,12 @@ import SourceKittenFramework
/// element, you need to explicitly add the button or link trait. In most cases the button trait should be used, but for
/// buttons that open a URL in an external browser we use the link trait instead. This rule attempts to catch uses of
/// the SwiftUI `.onTapGesture` modifier where the `.isButton` or `.isLink` trait is not explicitly applied.
public struct AccessibilityTraitForButtonRule: ASTRule, ConfigurationProviderRule, OptInRule {
public var configuration = SeverityConfiguration(.warning)
struct AccessibilityTraitForButtonRule: ASTRule, ConfigurationProviderRule, OptInRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "accessibility_trait_for_button",
name: "Accessibility Trait for Button",
description: "All views with tap gestures added should include the .isButton " +
@ -26,8 +26,8 @@ public struct AccessibilityTraitForButtonRule: ASTRule, ConfigurationProviderRul
// MARK: AST Rule
public func validate(file: SwiftLintFile, kind: SwiftDeclarationKind,
dictionary: SourceKittenDictionary) -> [StyleViolation] {
func validate(file: SwiftLintFile, kind: SwiftDeclarationKind,
dictionary: SourceKittenDictionary) -> [StyleViolation] {
// Only proceed to check View structs.
guard kind == .struct,
dictionary.inheritedTypes.contains("View"),

View File

@ -11,12 +11,12 @@ private func warnDeprecatedOnce() {
_ = warnDeprecatedOnceImpl
}
public struct AnyObjectProtocolRule: SwiftSyntaxCorrectableRule, OptInRule, ConfigurationProviderRule {
public var configuration = SeverityConfiguration(.warning)
struct AnyObjectProtocolRule: SwiftSyntaxCorrectableRule, OptInRule, ConfigurationProviderRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "anyobject_protocol",
name: "AnyObject Protocol",
description: "Prefer using `AnyObject` over `class` for class-only protocols.",
@ -42,12 +42,12 @@ public struct AnyObjectProtocolRule: SwiftSyntaxCorrectableRule, OptInRule, Conf
]
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
warnDeprecatedOnce()
return Visitor(viewMode: .sourceAccurate)
}
public func makeRewriter(file: SwiftLintFile) -> ViolationsSyntaxRewriter? {
func makeRewriter(file: SwiftLintFile) -> ViolationsSyntaxRewriter? {
Rewriter(
locationConverter: file.locationConverter,
disabledRegions: disabledRegions(file: file)

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct ArrayInitRule: SwiftSyntaxRule, ConfigurationProviderRule, OptInRule {
public var configuration = SeverityConfiguration(.warning)
struct ArrayInitRule: SwiftSyntaxRule, ConfigurationProviderRule, OptInRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "array_init",
name: "Array Init",
description: "Prefer using `Array(seq)` over `seq.map { $0 }` to convert a sequence into an Array.",
@ -51,7 +51,7 @@ public struct ArrayInitRule: SwiftSyntaxRule, ConfigurationProviderRule, OptInRu
]
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(viewMode: .sourceAccurate)
}
}

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct BalancedXCTestLifecycleRule: SwiftSyntaxRule, OptInRule, ConfigurationProviderRule {
struct BalancedXCTestLifecycleRule: SwiftSyntaxRule, OptInRule, ConfigurationProviderRule {
// MARK: - Properties
public var configuration = SeverityConfiguration(.warning)
var configuration = SeverityConfiguration(.warning)
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "balanced_xctest_lifecycle",
name: "Balanced XCTest life-cycle",
description: "Test classes must implement balanced setUp and tearDown methods.",
@ -108,11 +108,11 @@ public struct BalancedXCTestLifecycleRule: SwiftSyntaxRule, OptInRule, Configura
// MARK: - Life cycle
public init() {}
init() {}
// MARK: - Public
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(viewMode: .sourceAccurate)
}
}

View File

@ -1,15 +1,15 @@
import SourceKittenFramework
public struct CaptureVariableRule: ConfigurationProviderRule, AnalyzerRule, CollectingRule {
public struct Variable: Hashable {
struct CaptureVariableRule: ConfigurationProviderRule, AnalyzerRule, CollectingRule {
struct Variable: Hashable {
let usr: String
let offset: ByteCount
}
public typealias USR = String
public typealias FileInfo = Set<USR>
typealias USR = String
typealias FileInfo = Set<USR>
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "capture_variable",
name: "Capture Variable",
description: "Non-constant variables should not be listed in a closure's capture list" +
@ -152,16 +152,16 @@ public struct CaptureVariableRule: ConfigurationProviderRule, AnalyzerRule, Coll
requiresFileOnDisk: true
)
public var configuration = SeverityConfiguration(.warning)
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public func collectInfo(for file: SwiftLintFile, compilerArguments: [String]) -> CaptureVariableRule.FileInfo {
func collectInfo(for file: SwiftLintFile, compilerArguments: [String]) -> CaptureVariableRule.FileInfo {
file.declaredVariables(compilerArguments: compilerArguments)
}
public func validate(file: SwiftLintFile, collectedInfo: [SwiftLintFile: CaptureVariableRule.FileInfo],
compilerArguments: [String]) -> [StyleViolation] {
func validate(file: SwiftLintFile, collectedInfo: [SwiftLintFile: CaptureVariableRule.FileInfo],
compilerArguments: [String]) -> [StyleViolation] {
file.captureListVariables(compilerArguments: compilerArguments)
.filter { capturedVariable in collectedInfo.values.contains { $0.contains(capturedVariable.usr) } }
.map {

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct ClassDelegateProtocolRule: SwiftSyntaxRule, ConfigurationProviderRule {
public var configuration = SeverityConfiguration(.warning)
struct ClassDelegateProtocolRule: SwiftSyntaxRule, ConfigurationProviderRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "class_delegate_protocol",
name: "Class Delegate Protocol",
description: "Delegate protocols should be class-only so they can be weakly referenced.",
@ -31,7 +31,7 @@ public struct ClassDelegateProtocolRule: SwiftSyntaxRule, ConfigurationProviderR
]
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(viewMode: .sourceAccurate)
}
}

View File

@ -2,12 +2,12 @@ import Foundation
import IDEUtils
import SourceKittenFramework
public struct CommentSpacingRule: SourceKitFreeRule, ConfigurationProviderRule, SubstitutionCorrectableRule {
public var configuration = SeverityConfiguration(.warning)
struct CommentSpacingRule: SourceKitFreeRule, ConfigurationProviderRule, SubstitutionCorrectableRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "comment_spacing",
name: "Comment Spacing",
description: "Prefer at least one space after slashes for comments.",
@ -119,7 +119,7 @@ public struct CommentSpacingRule: SourceKitFreeRule, ConfigurationProviderRule,
]
)
public func violationRanges(in file: SwiftLintFile) -> [NSRange] {
func violationRanges(in file: SwiftLintFile) -> [NSRange] {
// Find all comment tokens in the file and regex search them for violations
file.syntaxClassifications
.compactMap { (classifiedRange: SyntaxClassifiedRange) -> [NSRange]? in
@ -156,7 +156,7 @@ public struct CommentSpacingRule: SourceKitFreeRule, ConfigurationProviderRule,
.flatMap { $0 }
}
public func validate(file: SwiftLintFile) -> [StyleViolation] {
func validate(file: SwiftLintFile) -> [StyleViolation] {
return violationRanges(in: file).map { range in
StyleViolation(
ruleDescription: Self.description,
@ -166,7 +166,7 @@ public struct CommentSpacingRule: SourceKitFreeRule, ConfigurationProviderRule,
}
}
public func substitution(for violationRange: NSRange, in file: SwiftLintFile) -> (NSRange, String)? {
func substitution(for violationRange: NSRange, in file: SwiftLintFile) -> (NSRange, String)? {
return (violationRange, " ")
}
}

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct CompilerProtocolInitRule: SwiftSyntaxRule, ConfigurationProviderRule {
public var configuration = SeverityConfiguration(.warning)
struct CompilerProtocolInitRule: SwiftSyntaxRule, ConfigurationProviderRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "compiler_protocol_init",
name: "Compiler Protocol Init",
description: Self.violationReason(
@ -30,7 +30,7 @@ public struct CompilerProtocolInitRule: SwiftSyntaxRule, ConfigurationProviderRu
"shouldn't be called directly."
}
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(viewMode: .sourceAccurate)
}
}

View File

@ -1,12 +1,12 @@
import SwiftSyntax
public struct DeploymentTargetRule: ConfigurationProviderRule, SwiftSyntaxRule {
struct DeploymentTargetRule: ConfigurationProviderRule, SwiftSyntaxRule {
private typealias Version = DeploymentTargetConfiguration.Version
public var configuration = DeploymentTargetConfiguration()
var configuration = DeploymentTargetConfiguration()
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "deployment_target",
name: "Deployment Target",
description: "Availability checks or attributes shouldn't be using older versions " +
@ -16,7 +16,7 @@ public struct DeploymentTargetRule: ConfigurationProviderRule, SwiftSyntaxRule {
triggeringExamples: DeploymentTargetRuleExamples.triggeringExamples
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(platformToConfiguredMinVersion: platformToConfiguredMinVersion)
}

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct DiscardedNotificationCenterObserverRule: SwiftSyntaxRule, ConfigurationProviderRule, OptInRule {
public var configuration = SeverityConfiguration(.warning)
struct DiscardedNotificationCenterObserverRule: SwiftSyntaxRule, ConfigurationProviderRule, OptInRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "discarded_notification_center_observer",
name: "Discarded Notification Center Observer",
description: "When registering for a notification using a block, the opaque observer that is " +
@ -50,7 +50,7 @@ public struct DiscardedNotificationCenterObserverRule: SwiftSyntaxRule, Configur
]
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(viewMode: .sourceAccurate)
}
}

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct DiscouragedDirectInitRule: SwiftSyntaxRule, ConfigurationProviderRule {
public var configuration = DiscouragedDirectInitConfiguration()
struct DiscouragedDirectInitRule: SwiftSyntaxRule, ConfigurationProviderRule {
var configuration = DiscouragedDirectInitConfiguration()
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "discouraged_direct_init",
name: "Discouraged Direct Initialization",
description: "Discouraged direct initialization of types that can be harmful.",
@ -37,7 +37,7 @@ public struct DiscouragedDirectInitRule: SwiftSyntaxRule, ConfigurationProviderR
]
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(discouragedInits: configuration.discouragedInits)
}
}

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct DuplicateEnumCasesRule: ConfigurationProviderRule, SwiftSyntaxRule {
public var configuration = SeverityConfiguration(.error)
struct DuplicateEnumCasesRule: ConfigurationProviderRule, SwiftSyntaxRule {
var configuration = SeverityConfiguration(.error)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "duplicate_enum_cases",
name: "Duplicate Enum Cases",
description: "Enum can't contain multiple cases with the same name.",
@ -57,7 +57,7 @@ public struct DuplicateEnumCasesRule: ConfigurationProviderRule, SwiftSyntaxRule
]
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(viewMode: .sourceAccurate)
}
}

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct DuplicatedKeyInDictionaryLiteralRule: SwiftSyntaxRule, ConfigurationProviderRule {
public var configuration = SeverityConfiguration(.warning)
struct DuplicatedKeyInDictionaryLiteralRule: SwiftSyntaxRule, ConfigurationProviderRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static var description = RuleDescription(
static var description = RuleDescription(
identifier: "duplicated_key_in_dictionary_literal",
name: "Duplicated Key in Dictionary Literal",
description: "Dictionary literals with duplicated keys will crash in runtime.",
@ -79,7 +79,7 @@ public struct DuplicatedKeyInDictionaryLiteralRule: SwiftSyntaxRule, Configurati
]
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(viewMode: .sourceAccurate)
}
}

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct DynamicInlineRule: SwiftSyntaxRule, ConfigurationProviderRule {
public var configuration = SeverityConfiguration(.error)
struct DynamicInlineRule: SwiftSyntaxRule, ConfigurationProviderRule {
var configuration = SeverityConfiguration(.error)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "dynamic_inline",
name: "Dynamic Inline",
description: "Avoid using 'dynamic' and '@inline(__always)' together.",
@ -24,7 +24,7 @@ public struct DynamicInlineRule: SwiftSyntaxRule, ConfigurationProviderRule {
]
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(viewMode: .sourceAccurate)
}
}

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct EmptyXCTestMethodRule: OptInRule, ConfigurationProviderRule, SwiftSyntaxRule {
public var configuration = SeverityConfiguration(.warning)
struct EmptyXCTestMethodRule: OptInRule, ConfigurationProviderRule, SwiftSyntaxRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "empty_xctest_method",
name: "Empty XCTest Method",
description: "Empty XCTest method should be avoided.",
@ -14,7 +14,7 @@ public struct EmptyXCTestMethodRule: OptInRule, ConfigurationProviderRule, Swift
triggeringExamples: EmptyXCTestMethodRuleExamples.triggeringExamples
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
EmptyXCTestMethodRuleVisitor(viewMode: .sourceAccurate)
}
}

View File

@ -1,7 +1,7 @@
import Foundation
import SourceKittenFramework
public struct ExpiringTodoRule: ConfigurationProviderRule, OptInRule {
struct ExpiringTodoRule: ConfigurationProviderRule, OptInRule {
enum ExpiryViolationLevel {
case approachingExpiry
case expired
@ -19,7 +19,7 @@ public struct ExpiringTodoRule: ConfigurationProviderRule, OptInRule {
}
}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "expiring_todo",
name: "Expiring Todo",
description: "TODOs and FIXMEs should be resolved prior to their expiry date.",
@ -44,11 +44,11 @@ public struct ExpiringTodoRule: ConfigurationProviderRule, OptInRule {
].skipWrappingInCommentTests()
)
public var configuration: ExpiringTodoConfiguration = .init()
var configuration: ExpiringTodoConfiguration = .init()
public init() {}
init() {}
public func validate(file: SwiftLintFile) -> [StyleViolation] {
func validate(file: SwiftLintFile) -> [StyleViolation] {
let regex = #"""
\b(?:TODO|FIXME)(?::|\b)(?:(?!\b(?:TODO|FIXME)(?::|\b)).)*?\#
\\#(configuration.dateDelimiters.opening)\#

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct IBInspectableInExtensionRule: SwiftSyntaxRule, ConfigurationProviderRule, OptInRule {
public var configuration = SeverityConfiguration(.warning)
struct IBInspectableInExtensionRule: SwiftSyntaxRule, ConfigurationProviderRule, OptInRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "ibinspectable_in_extension",
name: "IBInspectable in Extension",
description: "Extensions shouldn't add @IBInspectable properties.",
@ -26,7 +26,7 @@ public struct IBInspectableInExtensionRule: SwiftSyntaxRule, ConfigurationProvid
]
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(viewMode: .sourceAccurate)
}
}

View File

@ -1,13 +1,13 @@
import SwiftSyntax
public struct IdenticalOperandsRule: ConfigurationProviderRule, SwiftSyntaxRule, OptInRule {
public var configuration = SeverityConfiguration(.warning)
struct IdenticalOperandsRule: ConfigurationProviderRule, SwiftSyntaxRule, OptInRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
private static let operators = ["==", "!=", "===", "!==", ">", ">=", "<", "<="]
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "identical_operands",
name: "Identical Operands",
description: "Comparing two identical operands is likely a mistake.",
@ -72,11 +72,11 @@ public struct IdenticalOperandsRule: ConfigurationProviderRule, SwiftSyntaxRule,
]
)
public func preprocess(syntaxTree: SourceFileSyntax) -> SourceFileSyntax? {
func preprocess(syntaxTree: SourceFileSyntax) -> SourceFileSyntax? {
syntaxTree.folded()
}
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(viewMode: .sourceAccurate)
}
}

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct InertDeferRule: ConfigurationProviderRule, SwiftSyntaxRule {
public var configuration = SeverityConfiguration(.warning)
struct InertDeferRule: ConfigurationProviderRule, SwiftSyntaxRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "inert_defer",
name: "Inert Defer",
description: "If defer is at the end of its parent scope, it will be executed right where it is anyway.",
@ -50,7 +50,7 @@ public struct InertDeferRule: ConfigurationProviderRule, SwiftSyntaxRule {
]
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(viewMode: .sourceAccurate)
}
}

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct LowerACLThanParentRule: OptInRule, ConfigurationProviderRule, SwiftSyntaxCorrectableRule {
public var configuration = SeverityConfiguration(.warning)
struct LowerACLThanParentRule: OptInRule, ConfigurationProviderRule, SwiftSyntaxCorrectableRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "lower_acl_than_parent",
name: "Lower ACL than parent",
description: "Ensure declarations have a lower access control level than their enclosing parent",
@ -56,11 +56,11 @@ public struct LowerACLThanParentRule: OptInRule, ConfigurationProviderRule, Swif
]
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(viewMode: .sourceAccurate)
}
public func makeRewriter(file: SwiftLintFile) -> ViolationsSyntaxRewriter? {
func makeRewriter(file: SwiftLintFile) -> ViolationsSyntaxRewriter? {
Rewriter(
locationConverter: file.locationConverter,
disabledRegions: disabledRegions(file: file)

View File

@ -1,12 +1,12 @@
import Foundation
import SourceKittenFramework
public struct MarkRule: CorrectableRule, ConfigurationProviderRule {
public var configuration = SeverityConfiguration(.warning)
struct MarkRule: CorrectableRule, ConfigurationProviderRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "mark",
name: "Mark",
description: "MARK comment should be in valid format. e.g. '// MARK: ...' or '// MARK: - ...'",
@ -102,7 +102,7 @@ public struct MarkRule: CorrectableRule, ConfigurationProviderRule {
].joined(separator: "|")
}
public func validate(file: SwiftLintFile) -> [StyleViolation] {
func validate(file: SwiftLintFile) -> [StyleViolation] {
return violationRanges(in: file, matching: pattern).map {
StyleViolation(ruleDescription: Self.description,
severity: configuration.severity,
@ -110,7 +110,7 @@ public struct MarkRule: CorrectableRule, ConfigurationProviderRule {
}
}
public func correct(file: SwiftLintFile) -> [Correction] {
func correct(file: SwiftLintFile) -> [Correction] {
var result = [Correction]()
result.append(contentsOf: correct(file: file,

View File

@ -43,15 +43,15 @@ private extension SwiftLintFile {
}
}
public struct MissingDocsRule: OptInRule, ConfigurationProviderRule {
public init() {
struct MissingDocsRule: OptInRule, ConfigurationProviderRule {
init() {
configuration = MissingDocsRuleConfiguration()
}
public typealias ConfigurationType = MissingDocsRuleConfiguration
public var configuration: MissingDocsRuleConfiguration
typealias ConfigurationType = MissingDocsRuleConfiguration
var configuration: MissingDocsRuleConfiguration
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "missing_docs",
name: "Missing Docs",
description: "Declarations should be documented.",
@ -119,7 +119,7 @@ public struct MissingDocsRule: OptInRule, ConfigurationProviderRule {
]
)
public func validate(file: SwiftLintFile) -> [StyleViolation] {
func validate(file: SwiftLintFile) -> [StyleViolation] {
let acls = configuration.parameters.map { $0.value }
let dict = file.structureDictionary
return file.missingDocOffsets(

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct NSLocalizedStringKeyRule: SwiftSyntaxRule, OptInRule, ConfigurationProviderRule {
public var configuration = SeverityConfiguration(.warning)
struct NSLocalizedStringKeyRule: SwiftSyntaxRule, OptInRule, ConfigurationProviderRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "nslocalizedstring_key",
name: "NSLocalizedString Key",
description: "Static strings should be used as key/comment" +
@ -33,7 +33,7 @@ public struct NSLocalizedStringKeyRule: SwiftSyntaxRule, OptInRule, Configuratio
]
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(viewMode: .sourceAccurate)
}
}

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct NSLocalizedStringRequireBundleRule: SwiftSyntaxRule, OptInRule, ConfigurationProviderRule {
public var configuration = SeverityConfiguration(.warning)
struct NSLocalizedStringRequireBundleRule: SwiftSyntaxRule, OptInRule, ConfigurationProviderRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "nslocalizedstring_require_bundle",
name: "NSLocalizedString Require Bundle",
description: "Calls to NSLocalizedString should specify the bundle which contains the strings file.",
@ -42,7 +42,7 @@ public struct NSLocalizedStringRequireBundleRule: SwiftSyntaxRule, OptInRule, Co
]
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(viewMode: .sourceAccurate)
}
}

View File

@ -1,12 +1,12 @@
import SwiftSyntax
// this rule exists due to a compiler bug: https://github.com/apple/swift/issues/51036
public struct NSNumberInitAsFunctionReferenceRule: SwiftSyntaxRule, ConfigurationProviderRule {
public var configuration = SeverityConfiguration(.warning)
struct NSNumberInitAsFunctionReferenceRule: SwiftSyntaxRule, ConfigurationProviderRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "ns_number_init_as_function_reference",
name: "NSNumber Init as Function Reference",
description: "Passing `NSNumber.init` or `NSDecimalNumber.init` as a function reference is dangerous " +
@ -24,7 +24,7 @@ public struct NSNumberInitAsFunctionReferenceRule: SwiftSyntaxRule, Configuratio
]
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(viewMode: .sourceAccurate)
}
}

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct NSObjectPreferIsEqualRule: SwiftSyntaxRule, ConfigurationProviderRule {
public var configuration = SeverityConfiguration(.warning)
struct NSObjectPreferIsEqualRule: SwiftSyntaxRule, ConfigurationProviderRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "nsobject_prefer_isequal",
name: "NSObject Prefer isEqual",
description: "NSObject subclasses should implement isEqual instead of ==.",
@ -14,7 +14,7 @@ public struct NSObjectPreferIsEqualRule: SwiftSyntaxRule, ConfigurationProviderR
triggeringExamples: NSObjectPreferIsEqualRuleExamples.triggeringExamples
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(viewMode: .sourceAccurate)
}
}

View File

@ -1,11 +1,11 @@
import SwiftSyntax
public struct NotificationCenterDetachmentRule: SwiftSyntaxRule, ConfigurationProviderRule {
public var configuration = SeverityConfiguration(.warning)
struct NotificationCenterDetachmentRule: SwiftSyntaxRule, ConfigurationProviderRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "notification_center_detachment",
name: "Notification Center Detachment",
description: "An object should only remove itself as an observer in `deinit`.",
@ -14,7 +14,7 @@ public struct NotificationCenterDetachmentRule: SwiftSyntaxRule, ConfigurationPr
triggeringExamples: NotificationCenterDetachmentRuleExamples.triggeringExamples
)
public func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
func makeVisitor(file: SwiftLintFile) -> ViolationsSyntaxVisitor {
Visitor(viewMode: .sourceAccurate)
}
}

View File

@ -1,12 +1,12 @@
import IDEUtils
import SwiftSyntax
public struct OrphanedDocCommentRule: SourceKitFreeRule, ConfigurationProviderRule {
public var configuration = SeverityConfiguration(.warning)
struct OrphanedDocCommentRule: SourceKitFreeRule, ConfigurationProviderRule {
var configuration = SeverityConfiguration(.warning)
public init() {}
init() {}
public static let description = RuleDescription(
static let description = RuleDescription(
identifier: "orphaned_doc_comment",
name: "Orphaned Doc Comment",
description: "A doc comment should be attached to a declaration.",
@ -53,7 +53,7 @@ public struct OrphanedDocCommentRule: SourceKitFreeRule, ConfigurationProviderRu
]
)
public func validate(file: SwiftLintFile) -> [StyleViolation] {
func validate(file: SwiftLintFile) -> [StyleViolation] {
let classifications = file.syntaxClassifications
.filter { $0.kind != .none }
let docstringsWithOtherComments = classifications

Some files were not shown because too many files have changed in this diff Show More