diff --git a/Source/SwiftLintBuiltInRules/Rules/Lint/UnneededOverrideRule.swift b/Source/SwiftLintBuiltInRules/Rules/Lint/UnneededOverrideRule.swift index 9a21737b6..087c54db3 100644 --- a/Source/SwiftLintBuiltInRules/Rules/Lint/UnneededOverrideRule.swift +++ b/Source/SwiftLintBuiltInRules/Rules/Lint/UnneededOverrideRule.swift @@ -3,7 +3,7 @@ import SwiftSyntaxBuilder @SwiftSyntaxRule(explicitRewriter: true) struct UnneededOverrideRule: Rule { - var configuration = UnneededOverrideRuleConfiguration() + var configuration = UnneededOverrideConfiguration() static let description = RuleDescription( identifier: "unneeded_override", diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/AttributesConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/AttributesConfiguration.swift index da8917e26..dde347564 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/AttributesConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/AttributesConfiguration.swift @@ -2,8 +2,6 @@ import SwiftLintCore @AutoConfigParser struct AttributesConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = AttributesRule - @ConfigurationElement(key: "severity") private(set) var severityConfiguration = SeverityConfiguration(.warning) @ConfigurationElement(key: "attributes_with_arguments_always_on_line_above") diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/BlanketDisableCommandConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/BlanketDisableCommandConfiguration.swift index c960606aa..e0b421fc7 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/BlanketDisableCommandConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/BlanketDisableCommandConfiguration.swift @@ -2,8 +2,6 @@ import SwiftLintCore @AutoConfigParser struct BlanketDisableCommandConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = BlanketDisableCommandRule - @ConfigurationElement(key: "severity") private(set) var severityConfiguration = SeverityConfiguration(.warning) @ConfigurationElement(key: "allowed_rules") diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/CollectionAlignmentConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/CollectionAlignmentConfiguration.swift index 0c2ba8ead..0ecaff477 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/CollectionAlignmentConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/CollectionAlignmentConfiguration.swift @@ -2,8 +2,6 @@ import SwiftLintCore @AutoConfigParser struct CollectionAlignmentConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = CollectionAlignmentRule - @ConfigurationElement(key: "severity") private(set) var severityConfiguration = SeverityConfiguration(.warning) @ConfigurationElement(key: "align_colons") diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/ColonConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/ColonConfiguration.swift index 078ecded5..3fec74b96 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/ColonConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/ColonConfiguration.swift @@ -2,8 +2,6 @@ import SwiftLintCore @AutoConfigParser struct ColonConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = ColonRule - @ConfigurationElement(key: "severity") private(set) var severityConfiguration = SeverityConfiguration(.warning) @ConfigurationElement(key: "flexible_right_spacing") diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/ComputedAccessorsOrderConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/ComputedAccessorsOrderConfiguration.swift index ce06b9dfa..dc68b1b7d 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/ComputedAccessorsOrderConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/ComputedAccessorsOrderConfiguration.swift @@ -2,8 +2,6 @@ import SwiftLintCore @AutoConfigParser struct ComputedAccessorsOrderConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = ComputedAccessorsOrderRule - @AcceptableByConfigurationElement enum Order: String { case getSet = "get_set" diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/ConditionalReturnsOnNewlineConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/ConditionalReturnsOnNewlineConfiguration.swift index 29f948bef..ef343be5a 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/ConditionalReturnsOnNewlineConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/ConditionalReturnsOnNewlineConfiguration.swift @@ -2,8 +2,6 @@ import SwiftLintCore @AutoConfigParser struct ConditionalReturnsOnNewlineConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = ConditionalReturnsOnNewlineRule - @ConfigurationElement(key: "severity") private(set) var severityConfiguration = SeverityConfiguration(.warning) @ConfigurationElement(key: "if_only") diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/CyclomaticComplexityConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/CyclomaticComplexityConfiguration.swift index 0ebcd63fe..42fbfe14a 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/CyclomaticComplexityConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/CyclomaticComplexityConfiguration.swift @@ -3,8 +3,6 @@ import SwiftLintCore @AutoConfigParser struct CyclomaticComplexityConfiguration: RuleConfiguration { - typealias Parent = CyclomaticComplexityRule - @ConfigurationElement(inline: true) private(set) var length = SeverityLevelsConfiguration(warning: 10, error: 20) @ConfigurationElement(key: "ignores_case_statements") diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/DiscouragedDirectInitConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/DiscouragedDirectInitConfiguration.swift index 72753bf38..580e3cfe1 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/DiscouragedDirectInitConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/DiscouragedDirectInitConfiguration.swift @@ -2,8 +2,6 @@ import SwiftLintCore @AutoConfigParser struct DiscouragedDirectInitConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = DiscouragedDirectInitRule - @ConfigurationElement(key: "severity") var severityConfiguration = SeverityConfiguration(.warning) diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/EmptyCountConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/EmptyCountConfiguration.swift index 8216adce8..0e7d3e8ff 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/EmptyCountConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/EmptyCountConfiguration.swift @@ -2,8 +2,6 @@ import SwiftLintCore @AutoConfigParser struct EmptyCountConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = EmptyCountRule - @ConfigurationElement(key: "severity") private(set) var severityConfiguration = SeverityConfiguration(.error) @ConfigurationElement(key: "only_after_dot") diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/ExpiringTodoConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/ExpiringTodoConfiguration.swift index 72bd3d184..bd518ead9 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/ExpiringTodoConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/ExpiringTodoConfiguration.swift @@ -2,7 +2,6 @@ import SwiftLintCore @AutoConfigParser struct ExpiringTodoConfiguration: RuleConfiguration { - typealias Parent = ExpiringTodoRule typealias Severity = SeverityConfiguration struct DelimiterConfiguration: Equatable, AcceptableByConfigurationElement { diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/ExplicitInitConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/ExplicitInitConfiguration.swift index 6fd03935d..f44bd7312 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/ExplicitInitConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/ExplicitInitConfiguration.swift @@ -1,7 +1,5 @@ @AutoConfigParser struct ExplicitInitConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = ExplicitInitRule - @ConfigurationElement(key: "severity") private(set) var severityConfiguration = SeverityConfiguration(.warning) @ConfigurationElement(key: "include_bare_init") diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/ExplicitTypeInterfaceConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/ExplicitTypeInterfaceConfiguration.swift index 89d4b8a2e..b794debb3 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/ExplicitTypeInterfaceConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/ExplicitTypeInterfaceConfiguration.swift @@ -2,8 +2,6 @@ import SwiftLintCore @AutoConfigParser struct ExplicitTypeInterfaceConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = ExplicitTypeInterfaceRule - @AcceptableByConfigurationElement enum VariableKind: String, CaseIterable { case instance diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/FileLengthConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/FileLengthConfiguration.swift index e5a167507..0d24a7be9 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/FileLengthConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/FileLengthConfiguration.swift @@ -2,8 +2,6 @@ import SwiftLintCore @AutoConfigParser struct FileLengthConfiguration: RuleConfiguration { - typealias Parent = FileLengthRule - @ConfigurationElement(inline: true) private(set) var severityConfiguration = SeverityLevelsConfiguration(warning: 400, error: 1000) @ConfigurationElement(key: "ignore_comment_only_lines") diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/FileNameConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/FileNameConfiguration.swift index 8e485fc86..2890ec5f3 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/FileNameConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/FileNameConfiguration.swift @@ -4,8 +4,6 @@ import SwiftLintCore @AutoConfigParser struct FileNameConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = FileNameRule - @ConfigurationElement(key: "severity") private(set) var severityConfiguration = SeverityConfiguration(.warning) @ConfigurationElement(key: "excluded") diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/FileNameNoSpaceConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/FileNameNoSpaceConfiguration.swift index e9f812839..52d45bc4b 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/FileNameNoSpaceConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/FileNameNoSpaceConfiguration.swift @@ -2,8 +2,6 @@ import SwiftLintCore @AutoConfigParser struct FileNameNoSpaceConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = FileNameNoSpaceRule - @ConfigurationElement(key: "severity") private(set) var severityConfiguration = SeverityConfiguration.warning @ConfigurationElement(key: "excluded") diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/FileTypesOrderConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/FileTypesOrderConfiguration.swift index 4ec1bc066..c302fa955 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/FileTypesOrderConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/FileTypesOrderConfiguration.swift @@ -2,8 +2,6 @@ import SwiftLintCore @AutoConfigParser struct FileTypesOrderConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = FileTypesOrderRule - @AcceptableByConfigurationElement enum FileType: String { case supportingType = "supporting_type" diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/ForWhereConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/ForWhereConfiguration.swift index 3a2971211..20e5eb0b1 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/ForWhereConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/ForWhereConfiguration.swift @@ -2,8 +2,6 @@ import SwiftLintCore @AutoConfigParser struct ForWhereConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = ForWhereRule - @ConfigurationElement(key: "severity") private(set) var severityConfiguration = SeverityConfiguration(.warning) @ConfigurationElement(key: "allow_for_as_filter") diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/FunctionDefaultParameterAtEndConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/FunctionDefaultParameterAtEndConfiguration.swift index 71d4d33bb..e6e8b6576 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/FunctionDefaultParameterAtEndConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/FunctionDefaultParameterAtEndConfiguration.swift @@ -4,8 +4,6 @@ import SwiftLintCore struct FunctionDefaultParameterAtEndConfiguration: SeverityBasedRuleConfiguration { // swiftlint:disable:previous type_name - typealias Parent = FunctionDefaultParameterAtEndRule - @ConfigurationElement(key: "severity") private(set) var severityConfiguration = SeverityConfiguration(.warning) @ConfigurationElement(key: "ignore_first_isolation_inheritance_parameter") diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/FunctionNameWhitespaceConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/FunctionNameWhitespaceConfiguration.swift index 4a42c36c6..94a1f52c8 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/FunctionNameWhitespaceConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/FunctionNameWhitespaceConfiguration.swift @@ -2,8 +2,6 @@ import SwiftLintCore @AutoConfigParser struct FunctionNameWhitespaceConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = FunctionNameWhitespaceRule - @ConfigurationElement(key: "severity") private(set) var severityConfiguration = SeverityConfiguration(.warning) @ConfigurationElement(key: "generic_spacing") diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/FunctionParameterCountConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/FunctionParameterCountConfiguration.swift index f72993a7a..450ec99ef 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/FunctionParameterCountConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/FunctionParameterCountConfiguration.swift @@ -2,8 +2,6 @@ import SwiftLintCore @AutoConfigParser struct FunctionParameterCountConfiguration: RuleConfiguration { - typealias Parent = FunctionParameterCountRule - @ConfigurationElement(inline: true) private(set) var severityConfiguration = SeverityLevelsConfiguration(warning: 5, error: 8) @ConfigurationElement(key: "ignores_default_parameters") diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/IdentifierNameConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/IdentifierNameConfiguration.swift index 7cdb33754..d63ebf8e4 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/IdentifierNameConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/IdentifierNameConfiguration.swift @@ -2,8 +2,6 @@ import SwiftLintCore @AutoConfigParser struct IdentifierNameConfiguration: RuleConfiguration { - typealias Parent = IdentifierNameRule - private static let defaultOperators = ["/", "=", "-", "+", "!", "*", "|", "^", "~", "?", ".", "%", "<", ">", "&"] @ConfigurationElement(inline: true) diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/ImplicitOptionalInitializationConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/ImplicitOptionalInitializationConfiguration.swift index 34a8ab346..cf9d75bef 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/ImplicitOptionalInitializationConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/ImplicitOptionalInitializationConfiguration.swift @@ -2,8 +2,6 @@ import SwiftLintCore @AutoConfigParser struct ImplicitOptionalInitializationConfiguration: SeverityBasedRuleConfiguration { // swiftlint:disable:this type_name - typealias Parent = ImplicitOptionalInitializationRule - @AcceptableByConfigurationElement enum Style: String { case always diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/ImplicitReturnConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/ImplicitReturnConfiguration.swift index d4bbe24d7..5c0b60760 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/ImplicitReturnConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/ImplicitReturnConfiguration.swift @@ -2,8 +2,6 @@ import SwiftLintCore @AutoConfigParser struct ImplicitReturnConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = ImplicitReturnRule - @AcceptableByConfigurationElement enum ReturnKind: String, CaseIterable, Comparable { case closure diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/ImplicitlyUnwrappedOptionalConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/ImplicitlyUnwrappedOptionalConfiguration.swift index d60c7a8cf..6bcf885b4 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/ImplicitlyUnwrappedOptionalConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/ImplicitlyUnwrappedOptionalConfiguration.swift @@ -2,8 +2,6 @@ import SwiftLintCore @AutoConfigParser struct ImplicitlyUnwrappedOptionalConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = ImplicitlyUnwrappedOptionalRule - @AcceptableByConfigurationElement enum ImplicitlyUnwrappedOptionalModeConfiguration: String { // swiftlint:disable:this type_name case all = "all" diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/InclusiveLanguageConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/InclusiveLanguageConfiguration.swift index 8139a3cd3..63115f141 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/InclusiveLanguageConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/InclusiveLanguageConfiguration.swift @@ -2,8 +2,6 @@ import SwiftLintCore @AutoConfigParser struct InclusiveLanguageConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = InclusiveLanguageRule - private static let defaultTerms: Set = [ "whitelist", "blacklist", diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/IncompatibleConcurrencyAnnotationConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/IncompatibleConcurrencyAnnotationConfiguration.swift index 32742eddb..5199d03c2 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/IncompatibleConcurrencyAnnotationConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/IncompatibleConcurrencyAnnotationConfiguration.swift @@ -4,8 +4,6 @@ import SwiftLintCore struct IncompatibleConcurrencyAnnotationConfiguration: SeverityBasedRuleConfiguration { // swiftlint:disable:previous type_name - typealias Parent = IncompatibleConcurrencyAnnotationRule - @ConfigurationElement(key: "severity") private(set) var severityConfiguration = SeverityConfiguration(.warning) @ConfigurationElement(key: "global_actors", postprocessor: { $0.insert("MainActor") }) diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/IndentationWidthConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/IndentationWidthConfiguration.swift index 8e79864f5..4133e2fc8 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/IndentationWidthConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/IndentationWidthConfiguration.swift @@ -2,8 +2,6 @@ import SwiftLintCore @AutoConfigParser struct IndentationWidthConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = IndentationWidthRule - private static let defaultIndentationWidth = 4 @ConfigurationElement(key: "severity") diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/LegacyObjcTypeConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/LegacyObjcTypeConfiguration.swift index 7ecb334a9..12cc8a648 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/LegacyObjcTypeConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/LegacyObjcTypeConfiguration.swift @@ -2,8 +2,6 @@ import SwiftLintCore @AutoConfigParser struct LegacyObjcTypeConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = LegacyObjcTypeRule - @ConfigurationElement(key: "severity") private(set) var severityConfiguration = SeverityConfiguration.warning @ConfigurationElement(key: "allowed_types") diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/LineLengthConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/LineLengthConfiguration.swift index 3c8edbcac..ebe2026aa 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/LineLengthConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/LineLengthConfiguration.swift @@ -2,8 +2,6 @@ import SwiftLintCore @AutoConfigParser struct LineLengthConfiguration: RuleConfiguration { - typealias Parent = LineLengthRule - @ConfigurationElement(inline: true) private(set) var length = SeverityLevelsConfiguration(warning: 120, error: 200) @ConfigurationElement(key: "ignores_urls") diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/ModifierOrderConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/ModifierOrderConfiguration.swift index 8b69fa1fe..841db57f0 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/ModifierOrderConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/ModifierOrderConfiguration.swift @@ -3,8 +3,6 @@ import SwiftLintCore @AutoConfigParser struct ModifierOrderConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = ModifierOrderRule - @ConfigurationElement(key: "severity") private(set) var severityConfiguration = SeverityConfiguration(.warning) @ConfigurationElement(key: "preferred_modifier_order") diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/MultilineArgumentsConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/MultilineArgumentsConfiguration.swift index e0939e6da..5f1d77b28 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/MultilineArgumentsConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/MultilineArgumentsConfiguration.swift @@ -2,8 +2,6 @@ import SwiftLintCore @AutoConfigParser struct MultilineArgumentsConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = MultilineArgumentsRule - @AcceptableByConfigurationElement enum FirstArgumentLocation: String { case anyLine = "any_line" diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/MultilineCallArgumentsConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/MultilineCallArgumentsConfiguration.swift index 74952c3a9..c98d848e2 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/MultilineCallArgumentsConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/MultilineCallArgumentsConfiguration.swift @@ -2,8 +2,6 @@ import SwiftLintCore @AutoConfigParser struct MultilineCallArgumentsConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = MultilineCallArgumentsRule - @ConfigurationElement(key: "severity") private(set) var severityConfiguration = SeverityConfiguration(.warning) @ConfigurationElement(key: "allows_single_line") diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/MultilineParametersConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/MultilineParametersConfiguration.swift index bd9eed941..75a993507 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/MultilineParametersConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/MultilineParametersConfiguration.swift @@ -2,8 +2,6 @@ import SwiftLintCore @AutoConfigParser struct MultilineParametersConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = MultilineParametersRule - @ConfigurationElement(key: "severity") private(set) var severityConfiguration = SeverityConfiguration(.warning) @ConfigurationElement(key: "allows_single_line") diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/NestingConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/NestingConfiguration.swift index 2600c45ab..b7b2feb38 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/NestingConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/NestingConfiguration.swift @@ -2,7 +2,6 @@ import SwiftLintCore @AutoConfigParser struct NestingConfiguration: RuleConfiguration { - typealias Parent = NestingRule typealias Severity = SeverityLevelsConfiguration @ConfigurationElement(key: "type_level") diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/NoEmptyBlockConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/NoEmptyBlockConfiguration.swift index a367a4557..79c92b79d 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/NoEmptyBlockConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/NoEmptyBlockConfiguration.swift @@ -2,8 +2,6 @@ import SwiftLintCore @AutoConfigParser struct NoEmptyBlockConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = NoEmptyBlockRule - @AcceptableByConfigurationElement enum CodeBlockType: String, CaseIterable { case functionBodies = "function_bodies" diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/NoMagicNumbersConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/NoMagicNumbersConfiguration.swift index 5a1a61dc9..f4069f012 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/NoMagicNumbersConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/NoMagicNumbersConfiguration.swift @@ -1,7 +1,5 @@ @AutoConfigParser struct NoMagicNumbersConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = NoMagicNumbersRule - @ConfigurationElement(key: "severity") private(set) var severityConfiguration = SeverityConfiguration(.warning) @ConfigurationElement( diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/NonOptionalStringDataConversionConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/NonOptionalStringDataConversionConfiguration.swift index ef21f1ac3..33d207a10 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/NonOptionalStringDataConversionConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/NonOptionalStringDataConversionConfiguration.swift @@ -3,7 +3,6 @@ import SwiftLintCore @AutoConfigParser struct NonOptionalStringDataConversionConfiguration: SeverityBasedRuleConfiguration { // swiftlint:disable:previous type_name - typealias Parent = NonOptionalStringDataConversionRule @ConfigurationElement(key: "severity") private(set) var severityConfiguration = SeverityConfiguration(.warning) diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/NonOverridableClassDeclarationConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/NonOverridableClassDeclarationConfiguration.swift index c302c8dfa..bdf480349 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/NonOverridableClassDeclarationConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/NonOverridableClassDeclarationConfiguration.swift @@ -2,8 +2,6 @@ import SwiftLintCore @AutoConfigParser // swiftlint:disable:next type_name struct NonOverridableClassDeclarationConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = NonOverridableClassDeclarationRule - @AcceptableByConfigurationElement enum FinalClassModifier: String { case finalClass = "final class" diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/NumberSeparatorConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/NumberSeparatorConfiguration.swift index fad3d435d..e4c799155 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/NumberSeparatorConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/NumberSeparatorConfiguration.swift @@ -2,8 +2,6 @@ import SwiftLintCore @AutoConfigParser struct NumberSeparatorConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = NumberSeparatorRule - struct ExcludeRange: AcceptableByConfigurationElement, Equatable { private let min: Double private let max: Double diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/OpeningBraceConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/OpeningBraceConfiguration.swift index a136f1d30..cc3a4166d 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/OpeningBraceConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/OpeningBraceConfiguration.swift @@ -2,8 +2,6 @@ import SwiftLintCore @AutoConfigParser struct OpeningBraceConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = OpeningBraceRule - @ConfigurationElement(key: "severity") private(set) var severityConfiguration = SeverityConfiguration(.warning) @ConfigurationElement(key: "ignore_multiline_type_headers") diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/OperatorUsageWhitespaceConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/OperatorUsageWhitespaceConfiguration.swift index 1bd83318f..07a7fb271 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/OperatorUsageWhitespaceConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/OperatorUsageWhitespaceConfiguration.swift @@ -2,8 +2,6 @@ import SwiftLintCore @AutoConfigParser struct OperatorUsageWhitespaceConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = OperatorUsageWhitespaceRule - @ConfigurationElement(key: "severity") private(set) var severityConfiguration = SeverityConfiguration(.warning) @ConfigurationElement(key: "lines_look_around") diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/OverriddenSuperCallConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/OverriddenSuperCallConfiguration.swift index 8316b9798..93b836237 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/OverriddenSuperCallConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/OverriddenSuperCallConfiguration.swift @@ -2,8 +2,6 @@ import SwiftLintCore @AutoConfigParser struct OverriddenSuperCallConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = OverriddenSuperCallRule - private static let defaultIncluded = [ // NSObject "awakeFromNib()", diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/PreferKeyPathConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/PreferKeyPathConfiguration.swift index c2a8bf727..5f9b8d638 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/PreferKeyPathConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/PreferKeyPathConfiguration.swift @@ -2,8 +2,6 @@ import SwiftLintCore @AutoConfigParser struct PreferKeyPathConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = PreferKeyPathRule - @ConfigurationElement(key: "severity") private(set) var severityConfiguration = SeverityConfiguration(.warning) @ConfigurationElement(key: "restrict_to_standard_functions") diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/PrefixedTopLevelConstantConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/PrefixedTopLevelConstantConfiguration.swift index 591b8cc13..52470c76d 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/PrefixedTopLevelConstantConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/PrefixedTopLevelConstantConfiguration.swift @@ -2,8 +2,6 @@ import SwiftLintCore @AutoConfigParser struct PrefixedTopLevelConstantConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = PrefixedTopLevelConstantRule - @ConfigurationElement(key: "severity") private(set) var severityConfiguration = SeverityConfiguration(.warning) @ConfigurationElement(key: "only_private") diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/PrivateOutletConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/PrivateOutletConfiguration.swift index ae3fdf570..1b2727a26 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/PrivateOutletConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/PrivateOutletConfiguration.swift @@ -2,8 +2,6 @@ import SwiftLintCore @AutoConfigParser struct PrivateOutletConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = PrivateOutletRule - @ConfigurationElement(key: "severity") private(set) var severityConfiguration = SeverityConfiguration(.warning) @ConfigurationElement(key: "allow_private_set") diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/PrivateOverFilePrivateConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/PrivateOverFilePrivateConfiguration.swift index 69fc9eb04..f7bb7ad5d 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/PrivateOverFilePrivateConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/PrivateOverFilePrivateConfiguration.swift @@ -2,8 +2,6 @@ import SwiftLintCore @AutoConfigParser struct PrivateOverFilePrivateConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = PrivateOverFilePrivateRule - @ConfigurationElement(key: "severity") var severityConfiguration = SeverityConfiguration(.warning) @ConfigurationElement(key: "validate_extensions") diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/ProhibitedSuperConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/ProhibitedSuperConfiguration.swift index a828f7ed9..408cf8a08 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/ProhibitedSuperConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/ProhibitedSuperConfiguration.swift @@ -2,8 +2,6 @@ import SwiftLintCore @AutoConfigParser struct ProhibitedSuperConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = ProhibitedSuperRule - @ConfigurationElement(key: "severity") private(set) var severityConfiguration = SeverityConfiguration(.warning) @ConfigurationElement(key: "excluded") diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/RedundantDiscardableLetConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/RedundantDiscardableLetConfiguration.swift index 70a588991..0fb7805d3 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/RedundantDiscardableLetConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/RedundantDiscardableLetConfiguration.swift @@ -2,8 +2,6 @@ import SwiftLintCore @AutoConfigParser struct RedundantDiscardableLetConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = RedundantDiscardableLetRule - @ConfigurationElement(key: "severity") private(set) var severityConfiguration = SeverityConfiguration(.warning) @ConfigurationElement(key: "ignore_swiftui_view_bodies") diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/RedundantSendableConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/RedundantSendableConfiguration.swift index 4f8bb3b8b..a558f04cc 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/RedundantSendableConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/RedundantSendableConfiguration.swift @@ -2,8 +2,6 @@ import SwiftLintCore @AutoConfigParser struct RedundantSendableConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = RedundantSendableRule - @ConfigurationElement(key: "severity") private(set) var severityConfiguration = SeverityConfiguration(.warning) @ConfigurationElement(key: "global_actors") diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/RedundantTypeAnnotationConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/RedundantTypeAnnotationConfiguration.swift index 7bb54dacf..cefd2128c 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/RedundantTypeAnnotationConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/RedundantTypeAnnotationConfiguration.swift @@ -2,8 +2,6 @@ import SwiftLintCore @AutoConfigParser struct RedundantTypeAnnotationConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = RedundantTypeAnnotationRule - @ConfigurationElement(key: "severity") var severityConfiguration = SeverityConfiguration(.warning) @ConfigurationElement(key: "ignore_attributes") diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/RedundantVoidReturnConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/RedundantVoidReturnConfiguration.swift index 14dbe5aba..b839e0145 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/RedundantVoidReturnConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/RedundantVoidReturnConfiguration.swift @@ -1,7 +1,5 @@ @AutoConfigParser struct RedundantVoidReturnConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = RedundantVoidReturnRule - @ConfigurationElement(key: "severity") private(set) var severityConfiguration = SeverityConfiguration(.warning) @ConfigurationElement(key: "include_closures") diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/SelfBindingConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/SelfBindingConfiguration.swift index 9557225db..e906e2501 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/SelfBindingConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/SelfBindingConfiguration.swift @@ -2,8 +2,6 @@ import SwiftLintCore @AutoConfigParser struct SelfBindingConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = SelfBindingRule - @ConfigurationElement(key: "severity") private(set) var severityConfiguration = SeverityConfiguration(.warning) @ConfigurationElement(key: "bind_identifier") diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/ShorthandArgumentConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/ShorthandArgumentConfiguration.swift index 07907bb75..826f75b97 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/ShorthandArgumentConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/ShorthandArgumentConfiguration.swift @@ -2,8 +2,6 @@ import SwiftLintCore @AutoConfigParser struct ShorthandArgumentConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = ShorthandArgumentRule - @ConfigurationElement(key: "severity") private(set) var severityConfiguration = SeverityConfiguration(.warning) @ConfigurationElement(key: "allow_until_line_after_opening_brace") diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/SortedImportsConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/SortedImportsConfiguration.swift index 61117fd9a..2a79dc807 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/SortedImportsConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/SortedImportsConfiguration.swift @@ -2,8 +2,6 @@ import SwiftLintCore @AutoConfigParser struct SortedImportsConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = SortedImportsRule - @AcceptableByConfigurationElement enum Grouping: String { /// Sorts import lines based on any import attributes (e.g. `@testable`, `@_exported`, etc.), followed by a case diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/StatementPositionConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/StatementPositionConfiguration.swift index 1844fdfa8..880829ee1 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/StatementPositionConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/StatementPositionConfiguration.swift @@ -2,8 +2,6 @@ import SwiftLintCore @AutoConfigParser struct StatementPositionConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = StatementPositionRule - @AcceptableByConfigurationElement enum StatementModeConfiguration: String { case `default` = "default" diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/SwitchCaseAlignmentConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/SwitchCaseAlignmentConfiguration.swift index 1828a7508..74f7b252a 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/SwitchCaseAlignmentConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/SwitchCaseAlignmentConfiguration.swift @@ -2,8 +2,6 @@ import SwiftLintCore @AutoConfigParser struct SwitchCaseAlignmentConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = SwitchCaseAlignmentRule - @ConfigurationElement(key: "severity") private(set) var severityConfiguration = SeverityConfiguration(.warning) @ConfigurationElement(key: "indented_cases") diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/TestCaseAccessibilityConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/TestCaseAccessibilityConfiguration.swift index 51fbb0fb7..a9ea9e4bd 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/TestCaseAccessibilityConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/TestCaseAccessibilityConfiguration.swift @@ -2,8 +2,6 @@ import SwiftLintCore @AutoConfigParser struct TestCaseAccessibilityConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = TestCaseAccessibilityRule - @ConfigurationElement(key: "severity") private(set) var severityConfiguration = SeverityConfiguration(.warning) @ConfigurationElement(key: "allowed_prefixes") diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/TodoConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/TodoConfiguration.swift index 7fd34fda2..d4f1a2190 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/TodoConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/TodoConfiguration.swift @@ -2,8 +2,6 @@ import SwiftLintCore @AutoConfigParser struct TodoConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = TodoRule - @AcceptableByConfigurationElement enum TodoKeyword: String, CaseIterable { case todo = "TODO" diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/TrailingClosureConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/TrailingClosureConfiguration.swift index 58f88681f..8fdade60d 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/TrailingClosureConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/TrailingClosureConfiguration.swift @@ -2,8 +2,6 @@ import SwiftLintCore @AutoConfigParser struct TrailingClosureConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = TrailingClosureRule - @ConfigurationElement(key: "severity") private(set) var severityConfiguration = SeverityConfiguration(.warning) @ConfigurationElement(key: "only_single_muted_parameter") diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/TrailingCommaConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/TrailingCommaConfiguration.swift index 7a0776019..1e741fa35 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/TrailingCommaConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/TrailingCommaConfiguration.swift @@ -2,8 +2,6 @@ import SwiftLintCore @AutoConfigParser struct TrailingCommaConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = TrailingCommaRule - @ConfigurationElement(key: "severity") private(set) var severityConfiguration = SeverityConfiguration(.warning) @ConfigurationElement(key: "mandatory_comma") diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/TrailingWhitespaceConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/TrailingWhitespaceConfiguration.swift index 0319ddf63..52f7918f4 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/TrailingWhitespaceConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/TrailingWhitespaceConfiguration.swift @@ -2,8 +2,6 @@ import SwiftLintCore @AutoConfigParser struct TrailingWhitespaceConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = TrailingWhitespaceRule - @ConfigurationElement(key: "severity") private(set) var severityConfiguration = SeverityConfiguration(.warning) @ConfigurationElement(key: "ignores_empty_lines") diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/TypeBodyLengthConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/TypeBodyLengthConfiguration.swift index c8454724f..1d8e78cfc 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/TypeBodyLengthConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/TypeBodyLengthConfiguration.swift @@ -16,8 +16,6 @@ enum TypeBodyLengthCheckType: String, CaseIterable, Comparable { @AutoConfigParser struct TypeBodyLengthConfiguration: SeverityLevelsBasedRuleConfiguration { - typealias Parent = TypeBodyLengthRule - @ConfigurationElement(inline: true) private(set) var severityConfiguration = SeverityLevelsConfiguration(warning: 250, error: 350) @ConfigurationElement(key: "excluded_types") diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/TypeContentsOrderConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/TypeContentsOrderConfiguration.swift index 645cd52ad..de2ceb0fb 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/TypeContentsOrderConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/TypeContentsOrderConfiguration.swift @@ -22,8 +22,6 @@ enum TypeContent: String { @AutoConfigParser struct TypeContentsOrderConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = TypeContentsOrderRule - @ConfigurationElement(key: "severity") private(set) var severityConfiguration = SeverityConfiguration(.warning) @ConfigurationElement(key: "order") diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/TypeNameConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/TypeNameConfiguration.swift index d9d51cb66..3ef4c7956 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/TypeNameConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/TypeNameConfiguration.swift @@ -2,8 +2,6 @@ import SwiftLintCore @AutoConfigParser struct TypeNameConfiguration: RuleConfiguration { - typealias Parent = TypeNameRule - @ConfigurationElement(inline: true) private(set) var nameConfiguration = NameConfiguration(minLengthWarning: 3, minLengthError: 0, diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/UnneededOverrideRuleConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/UnneededOverrideConfiguration.swift similarity index 75% rename from Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/UnneededOverrideRuleConfiguration.swift rename to Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/UnneededOverrideConfiguration.swift index cea814ea3..b7df73020 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/UnneededOverrideRuleConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/UnneededOverrideConfiguration.swift @@ -1,9 +1,7 @@ import SwiftLintCore @AutoConfigParser -struct UnneededOverrideRuleConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = UnneededOverrideRule - +struct UnneededOverrideConfiguration: SeverityBasedRuleConfiguration { @ConfigurationElement(key: "severity") private(set) var severityConfiguration = SeverityConfiguration(.warning) @ConfigurationElement(key: "affect_initializers") diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/UnusedDeclarationConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/UnusedDeclarationConfiguration.swift index e3deec3ac..f1c4d7d54 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/UnusedDeclarationConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/UnusedDeclarationConfiguration.swift @@ -2,8 +2,6 @@ import SwiftLintCore @AutoConfigParser struct UnusedDeclarationConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = UnusedDeclarationRule - @ConfigurationElement(key: "severity") private(set) var severityConfiguration = SeverityConfiguration.error @ConfigurationElement(key: "include_public_and_open") diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/UnusedImportConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/UnusedImportConfiguration.swift index 02a0dd526..1fae3959b 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/UnusedImportConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/UnusedImportConfiguration.swift @@ -29,8 +29,6 @@ struct TransitiveModuleConfiguration: Equatable, AcceptableByConfi @AutoConfigParser struct UnusedImportConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = UnusedImportRule - @ConfigurationElement(key: "severity") private(set) var severityConfiguration = SeverityConfiguration.warning @ConfigurationElement(key: "require_explicit_imports") diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/UnusedOptionalBindingConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/UnusedOptionalBindingConfiguration.swift index 083d7d27a..91d0e5e94 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/UnusedOptionalBindingConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/UnusedOptionalBindingConfiguration.swift @@ -2,8 +2,6 @@ import SwiftLintCore @AutoConfigParser struct UnusedOptionalBindingConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = UnusedOptionalBindingRule - @ConfigurationElement(key: "severity") private(set) var severityConfiguration = SeverityConfiguration(.warning) @ConfigurationElement(key: "ignore_optional_try") diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/VerticalWhitespaceBetweenCasesConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/VerticalWhitespaceBetweenCasesConfiguration.swift index e7f2fd163..691cd9cbb 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/VerticalWhitespaceBetweenCasesConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/VerticalWhitespaceBetweenCasesConfiguration.swift @@ -2,8 +2,6 @@ import SwiftLintCore @AutoConfigParser // swiftlint:disable:next type_name struct VerticalWhitespaceBetweenCasesConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = VerticalWhitespaceBetweenCasesRule - @AcceptableByConfigurationElement enum SeparationStyle: String { case always diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/VerticalWhitespaceClosingBracesConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/VerticalWhitespaceClosingBracesConfiguration.swift index cb62a95da..a99d0fbe3 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/VerticalWhitespaceClosingBracesConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/VerticalWhitespaceClosingBracesConfiguration.swift @@ -2,8 +2,6 @@ import SwiftLintCore @AutoConfigParser // swiftlint:disable:next type_name struct VerticalWhitespaceClosingBracesConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = VerticalWhitespaceClosingBracesRule - @ConfigurationElement(key: "severity") private(set) var severityConfiguration = SeverityConfiguration(.warning) @ConfigurationElement(key: "only_enforce_before_trivial_lines") diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/VerticalWhitespaceConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/VerticalWhitespaceConfiguration.swift index 676a52451..a4c98751c 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/VerticalWhitespaceConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/VerticalWhitespaceConfiguration.swift @@ -2,8 +2,6 @@ import SwiftLintCore @AutoConfigParser struct VerticalWhitespaceConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = VerticalWhitespaceRule - static let defaultDescriptionReason = "Limit vertical whitespace to a single empty line" @ConfigurationElement(key: "severity") diff --git a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/XCTSpecificMatcherConfiguration.swift b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/XCTSpecificMatcherConfiguration.swift index 298fb42c2..60fdfe23c 100644 --- a/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/XCTSpecificMatcherConfiguration.swift +++ b/Source/SwiftLintBuiltInRules/Rules/RuleConfigurations/XCTSpecificMatcherConfiguration.swift @@ -2,8 +2,6 @@ import SwiftLintCore @AutoConfigParser struct XCTSpecificMatcherConfiguration: SeverityBasedRuleConfiguration { - typealias Parent = XCTSpecificMatcherRule - @AcceptableByConfigurationElement enum Matcher: String, CaseIterable { case oneArgumentAsserts = "one-argument-asserts" diff --git a/Source/SwiftLintCore/Helpers/Macros.swift b/Source/SwiftLintCore/Helpers/Macros.swift index e4d3f0205..500b3a20b 100644 --- a/Source/SwiftLintCore/Helpers/Macros.swift +++ b/Source/SwiftLintCore/Helpers/Macros.swift @@ -2,7 +2,7 @@ /// automatically based on the defined `@ConfigurationElement`s. @attached( member, - names: named(apply) + names: named(apply), named(Parent) ) public macro AutoConfigParser() = #externalMacro( module: "SwiftLintCoreMacros", @@ -13,7 +13,7 @@ public macro AutoConfigParser() = #externalMacro( @available(*, deprecated, renamed: "AutoConfigParser") @attached( member, - names: named(apply) + names: named(apply), named(Parent) ) public macro AutoApply() = #externalMacro( module: "SwiftLintCoreMacros", diff --git a/Source/SwiftLintCoreMacros/RuleConfigurationMacros.swift b/Source/SwiftLintCoreMacros/RuleConfigurationMacros.swift index fc29e8267..a39b49e68 100644 --- a/Source/SwiftLintCoreMacros/RuleConfigurationMacros.swift +++ b/Source/SwiftLintCoreMacros/RuleConfigurationMacros.swift @@ -15,6 +15,12 @@ enum AutoConfigParser: MemberMacro { context.diagnose(SwiftLintCoreMacroError.notStruct.diagnose(at: declaration)) return [] } + let name = configuration.name.text + guard name.hasSuffix("Configuration"), !name.hasSuffix("RuleConfiguration") else { + context.diagnose(SwiftLintCoreMacroError.invalidConfigurationName.diagnose(at: configuration.name)) + return [] + } + let ruleName = String(name.dropLast("Configuration".count)) + "Rule" var annotatedVarDecls = configuration.memberBlock.members .compactMap { if let varDecl = $0.decl.as(VariableDeclSyntax.self), @@ -48,8 +54,8 @@ enum AutoConfigParser: MemberMacro { context.diagnose(SwiftLintCoreMacroError.severityBasedWithoutProperty.diagnose(at: configuration.name)) } } - return [ - DeclSyntax(try FunctionDeclSyntax("mutating func apply(configuration: Any) throws(Issue)") { + let applyMethod = DeclSyntax( + try FunctionDeclSyntax("mutating func apply(configuration: Any) throws(Issue)") { for option in nonInlinedOptions { """ if $\(raw: option).key.isEmpty { @@ -89,8 +95,12 @@ enum AutoConfigParser: MemberMacro { """ try validate() """ - }), - ] + } + ) + if configuration.genericParameterClause?.parameters.contains(where: { $0.name.text == "Parent" }) == true { + return [applyMethod] + } + return [DeclSyntax("typealias Parent = \(raw: ruleName)")] + [applyMethod] } } diff --git a/Source/SwiftLintCoreMacros/SwiftLintCoreMacroError.swift b/Source/SwiftLintCoreMacros/SwiftLintCoreMacroError.swift index 5f55c1c06..5402bd6b9 100644 --- a/Source/SwiftLintCoreMacros/SwiftLintCoreMacroError.swift +++ b/Source/SwiftLintCoreMacros/SwiftLintCoreMacroError.swift @@ -3,6 +3,7 @@ import SwiftSyntax enum SwiftLintCoreMacroError: String, DiagnosticMessage { case notStruct = "Attribute can only be applied to structs" + case invalidConfigurationName = "Configuration type name must end with 'Configuration', but not 'RuleConfiguration'" case severityBasedWithoutProperty = """ Severity-based configuration without a 'severityConfiguration' property is invalid """ diff --git a/Source/swiftlint-dev/Rules+Template.swift b/Source/swiftlint-dev/Rules+Template.swift index 229534ee4..38b73e528 100644 --- a/Source/swiftlint-dev/Rules+Template.swift +++ b/Source/swiftlint-dev/Rules+Template.swift @@ -225,8 +225,6 @@ private extension SwiftLintDev.Rules.Template { @AutoConfigParser struct \(name)Configuration: SeverityBasedRuleConfiguration { - typealias Parent = \(name)Rule - @ConfigurationElement(key: "severity") private(set) var severityConfiguration = SeverityConfiguration(.\(severity)) } diff --git a/Tests/BuiltInRulesTests/ChildOptionSeverityConfigurationTests.swift b/Tests/BuiltInRulesTests/ChildOptionSeverityConfigurationTests.swift index 71d82b74e..c604fec12 100644 --- a/Tests/BuiltInRulesTests/ChildOptionSeverityConfigurationTests.swift +++ b/Tests/BuiltInRulesTests/ChildOptionSeverityConfigurationTests.swift @@ -3,7 +3,7 @@ import TestHelpers import XCTest final class ChildOptionSeverityConfigurationTests: SwiftLintTestCase { - typealias TesteeType = ChildOptionSeverityConfiguration + typealias TesteeType = ChildOptionSeverityConfiguration func testSeverity() { XCTAssertNil(TesteeType.off.severity) diff --git a/Tests/BuiltInRulesTests/NameConfigurationTests.swift b/Tests/BuiltInRulesTests/NameConfigurationTests.swift index fabcc9b84..993effd9b 100644 --- a/Tests/BuiltInRulesTests/NameConfigurationTests.swift +++ b/Tests/BuiltInRulesTests/NameConfigurationTests.swift @@ -3,7 +3,7 @@ import TestHelpers import XCTest final class NameConfigurationTests: SwiftLintTestCase { - typealias TesteeType = NameConfiguration + typealias TesteeType = NameConfiguration func testNameConfigurationSetsCorrectly() { let config: [String: any Sendable] = [ @@ -53,7 +53,7 @@ final class NameConfigurationTests: SwiftLintTestCase { minLengthError: 0, maxLengthWarning: 0, maxLengthError: 0) - checkError(Issue.invalidConfiguration(ruleID: RuleMock.identifier)) { + checkError(Issue.invalidConfiguration(ruleID: MockRule.identifier)) { try nameConfig.apply(configuration: config) } } diff --git a/Tests/CoreTests/RegexConfigurationTests.swift b/Tests/CoreTests/RegexConfigurationTests.swift index 75f38d109..c0e0dca1a 100644 --- a/Tests/CoreTests/RegexConfigurationTests.swift +++ b/Tests/CoreTests/RegexConfigurationTests.swift @@ -4,12 +4,12 @@ import XCTest final class RegexConfigurationTests: SwiftLintTestCase { func testShouldValidateIsTrueByDefault() { - let config = RegexConfiguration(identifier: "example") + let config = RegexConfiguration(identifier: "example") XCTAssertTrue(config.shouldValidate(filePath: "App/file.swift")) } func testShouldValidateWithSingleExluded() throws { - var config = RegexConfiguration(identifier: "example") + var config = RegexConfiguration(identifier: "example") try config.apply(configuration: [ "regex": "try!", "excluded": "Tests/.*\\.swift", @@ -20,7 +20,7 @@ final class RegexConfigurationTests: SwiftLintTestCase { } func testShouldValidateWithArrayExluded() throws { - var config = RegexConfiguration(identifier: "example") + var config = RegexConfiguration(identifier: "example") try config.apply(configuration: [ "regex": "try!", "excluded": [ @@ -35,7 +35,7 @@ final class RegexConfigurationTests: SwiftLintTestCase { } func testShouldValidateWithSingleIncluded() throws { - var config = RegexConfiguration(identifier: "example") + var config = RegexConfiguration(identifier: "example") try config.apply(configuration: [ "regex": "try!", "included": "App/.*\\.swift", @@ -47,7 +47,7 @@ final class RegexConfigurationTests: SwiftLintTestCase { } func testShouldValidateWithArrayIncluded() throws { - var config = RegexConfiguration(identifier: "example") + var config = RegexConfiguration(identifier: "example") try config.apply(configuration: [ "regex": "try!", "included": [ @@ -62,7 +62,7 @@ final class RegexConfigurationTests: SwiftLintTestCase { } func testShouldValidateWithIncludedAndExcluded() throws { - var config = RegexConfiguration(identifier: "example") + var config = RegexConfiguration(identifier: "example") try config.apply(configuration: [ "regex": "try!", "included": [ diff --git a/Tests/CoreTests/RuleConfigurationDescriptionTests.swift b/Tests/CoreTests/RuleConfigurationDescriptionTests.swift index 39482e1e8..f51492220 100644 --- a/Tests/CoreTests/RuleConfigurationDescriptionTests.swift +++ b/Tests/CoreTests/RuleConfigurationDescriptionTests.swift @@ -7,9 +7,7 @@ import XCTest // swiftlint:disable:next type_body_length final class RuleConfigurationDescriptionTests: SwiftLintTestCase { @AutoConfigParser - private struct TestConfiguration: RuleConfiguration { - typealias Parent = RuleMock // swiftlint:disable:this nesting - + private struct MockConfiguration: RuleConfiguration { @ConfigurationElement(key: "flag") var flag = true @ConfigurationElement(key: "string") @@ -47,7 +45,7 @@ final class RuleConfigurationDescriptionTests: SwiftLintTestCase { // swiftlint:disable:next function_body_length func testDescriptionFromConfiguration() throws { - var configuration = TestConfiguration() + var configuration = MockConfiguration() try configuration.apply(configuration: Void()) // Configure to set keys. let description = RuleConfigurationDescription.from(configuration: configuration) @@ -223,8 +221,8 @@ final class RuleConfigurationDescriptionTests: SwiftLintTestCase { } func testPrefersParameterDescription() { - struct Config: RuleConfiguration { - typealias Parent = RuleMock // swiftlint:disable:this nesting + struct MockConfiguration: RuleConfiguration { + typealias Parent = MockRule // swiftlint:disable:this nesting var parameterDescription: RuleConfigurationDescription? { "visible" => .flag(true) @@ -238,7 +236,7 @@ final class RuleConfigurationDescriptionTests: SwiftLintTestCase { func isEqualTo(_: some RuleConfiguration) -> Bool { false } } - let description = RuleConfigurationDescription.from(configuration: Config()) + let description = RuleConfigurationDescription.from(configuration: MockConfiguration()) XCTAssertEqual(description.oneLiner(), "visible: true") XCTAssertEqual(description.markdown(), """ @@ -470,7 +468,7 @@ final class RuleConfigurationDescriptionTests: SwiftLintTestCase { } func testUpdate() throws { - var configuration = TestConfiguration() + var configuration = MockConfiguration() try configuration.apply(configuration: [ "flag": false, @@ -504,7 +502,7 @@ final class RuleConfigurationDescriptionTests: SwiftLintTestCase { func testDeprecationWarning() async throws { let console = try await Issue.captureConsole { - var configuration = TestConfiguration() + var configuration = MockConfiguration() try configuration.apply(configuration: ["set": [6, 7]]) } XCTAssertEqual( @@ -515,7 +513,7 @@ final class RuleConfigurationDescriptionTests: SwiftLintTestCase { func testNoDeprecationWarningIfNoDeprecatedPropertySet() async throws { let console = try await Issue.captureConsole { - var configuration = TestConfiguration() + var configuration = MockConfiguration() try configuration.apply(configuration: ["flag": false]) } XCTAssertTrue(console.isEmpty) @@ -523,7 +521,7 @@ final class RuleConfigurationDescriptionTests: SwiftLintTestCase { func testInvalidKeys() async throws { let console = try await Issue.captureConsole { - var configuration = TestConfiguration() + var configuration = MockConfiguration() try configuration.apply(configuration: [ "severity": "error", "warning": 3, @@ -533,7 +531,7 @@ final class RuleConfigurationDescriptionTests: SwiftLintTestCase { } XCTAssertEqual( console, - "warning: Configuration for 'RuleMock' rule contains the invalid key(s) 'unknown', 'unsupported'." + "warning: Configuration for 'MockRule' rule contains the invalid key(s) 'unknown', 'unsupported'." ) } diff --git a/Tests/FrameworkTests/RuleConfigurationTests.swift b/Tests/FrameworkTests/RuleConfigurationTests.swift index 3d8212b12..5a8d07a10 100644 --- a/Tests/FrameworkTests/RuleConfigurationTests.swift +++ b/Tests/FrameworkTests/RuleConfigurationTests.swift @@ -52,8 +52,8 @@ final class RuleConfigurationTests: SwiftLintTestCase { func testSeverityConfigurationFromString() { let config = "Warning" - let comp = SeverityConfiguration(.warning) - var severityConfig = SeverityConfiguration(.error) + let comp = SeverityConfiguration(.warning) + var severityConfig = SeverityConfiguration(.error) do { try severityConfig.apply(configuration: config) XCTAssertEqual(severityConfig, comp) @@ -64,8 +64,8 @@ final class RuleConfigurationTests: SwiftLintTestCase { func testSeverityConfigurationFromDictionary() { let config = ["severity": "warning"] - let comp = SeverityConfiguration(.warning) - var severityConfig = SeverityConfiguration(.error) + let comp = SeverityConfiguration(.warning) + var severityConfig = SeverityConfiguration(.error) do { try severityConfig.apply(configuration: config) XCTAssertEqual(severityConfig, comp) @@ -76,22 +76,22 @@ final class RuleConfigurationTests: SwiftLintTestCase { func testSeverityConfigurationThrowsNothingApplied() { let config = 17 - var severityConfig = SeverityConfiguration(.error) - checkError(Issue.nothingApplied(ruleID: RuleMock.identifier)) { + var severityConfig = SeverityConfiguration(.error) + checkError(Issue.nothingApplied(ruleID: MockRule.identifier)) { try severityConfig.apply(configuration: config) } } func testSeverityConfigurationThrowsInvalidConfiguration() { let config = "foo" - var severityConfig = SeverityConfiguration(.warning) - checkError(Issue.invalidConfiguration(ruleID: RuleMock.identifier)) { + var severityConfig = SeverityConfiguration(.warning) + checkError(Issue.invalidConfiguration(ruleID: MockRule.identifier)) { try severityConfig.apply(configuration: config) } } func testSeverityLevelConfigParams() { - let severityConfig = SeverityLevelsConfiguration(warning: 17, error: 7) + let severityConfig = SeverityLevelsConfiguration(warning: 17, error: 7) XCTAssertEqual( severityConfig.params, [RuleParameter(severity: .error, value: 7), RuleParameter(severity: .warning, value: 17)] @@ -99,32 +99,32 @@ final class RuleConfigurationTests: SwiftLintTestCase { } func testSeverityLevelConfigPartialParams() { - let severityConfig = SeverityLevelsConfiguration(warning: 17, error: nil) + let severityConfig = SeverityLevelsConfiguration(warning: 17, error: nil) XCTAssertEqual(severityConfig.params, [RuleParameter(severity: .warning, value: 17)]) } func testSeverityLevelConfigApplyNilErrorValue() throws { - var severityConfig = SeverityLevelsConfiguration(warning: 17, error: 20) + var severityConfig = SeverityLevelsConfiguration(warning: 17, error: 20) try severityConfig.apply(configuration: ["error": nil, "warning": 18]) XCTAssertEqual(severityConfig.params, [RuleParameter(severity: .warning, value: 18)]) } func testSeverityLevelConfigApplyMissingErrorValue() throws { - var severityConfig = SeverityLevelsConfiguration(warning: 17, error: 20) + var severityConfig = SeverityLevelsConfiguration(warning: 17, error: 20) try severityConfig.apply(configuration: ["warning": 18]) XCTAssertEqual(severityConfig.params, [RuleParameter(severity: .warning, value: 18)]) } func testRegexConfigurationThrows() { let config = 17 - var regexConfig = RegexConfiguration(identifier: "") - checkError(Issue.invalidConfiguration(ruleID: RuleMock.identifier)) { + var regexConfig = RegexConfiguration(identifier: "") + checkError(Issue.invalidConfiguration(ruleID: MockRule.identifier)) { try regexConfig.apply(configuration: config) } } func testRegexRuleDescription() { - var regexConfig = RegexConfiguration(identifier: "regex") + var regexConfig = RegexConfiguration(identifier: "regex") XCTAssertEqual(regexConfig.description, RuleDescription(identifier: "regex", name: "regex", description: "", kind: .style)) diff --git a/Tests/MacroTests/AutoConfigParserTests.swift b/Tests/MacroTests/AutoConfigParserTests.swift index a254855d2..8183b2c7d 100644 --- a/Tests/MacroTests/AutoConfigParserTests.swift +++ b/Tests/MacroTests/AutoConfigParserTests.swift @@ -34,12 +34,14 @@ final class AutoConfigParserTests: XCTestCase { assertMacroExpansion( """ @AutoConfigParser - struct S { + struct MyConfiguration { } """, expandedSource: """ - struct S { + struct MyConfiguration { + + typealias Parent = MyRule mutating func apply(configuration: Any) throws(Issue) { guard let configuration = configuration as? [String: Any] else { @@ -62,7 +64,7 @@ final class AutoConfigParserTests: XCTestCase { assertMacroExpansion( """ @AutoConfigParser - struct S { + struct MyConfiguration { @ConfigurationElement var eA = 1 @ConfigurationElement(key: "name") @@ -71,12 +73,14 @@ final class AutoConfigParserTests: XCTestCase { """, expandedSource: """ - struct S { + struct MyConfiguration { @ConfigurationElement var eA = 1 @ConfigurationElement(key: "name") var eB = 2 + typealias Parent = MyRule + mutating func apply(configuration: Any) throws(Issue) { if $eA.key.isEmpty { $eA.key = "e_a" @@ -110,7 +114,7 @@ final class AutoConfigParserTests: XCTestCase { assertMacroExpansion( """ @AutoConfigParser - struct S { + struct MyConfiguration { @ConfigurationElement(key: "eD") var eA = 1 @ConfigurationElement(inline: true) @@ -121,7 +125,7 @@ final class AutoConfigParserTests: XCTestCase { """, expandedSource: """ - struct S { + struct MyConfiguration { @ConfigurationElement(key: "eD") var eA = 1 @ConfigurationElement(inline: true) @@ -129,6 +133,8 @@ final class AutoConfigParserTests: XCTestCase { @ConfigurationElement(inline: false) var eC = 3 + typealias Parent = MyRule + mutating func apply(configuration: Any) throws(Issue) { if $eA.key.isEmpty { $eA.key = "e_a" @@ -166,12 +172,14 @@ final class AutoConfigParserTests: XCTestCase { assertMacroExpansion( """ @AutoConfigParser - struct S: SeverityBasedRuleConfiguration { + struct MyConfiguration: SeverityBasedRuleConfiguration { } """, expandedSource: """ - struct S: SeverityBasedRuleConfiguration { + struct MyConfiguration: SeverityBasedRuleConfiguration { + + typealias Parent = MyRule mutating func apply(configuration: Any) throws(Issue) { guard let configuration = configuration as? [String: Any] else { @@ -201,7 +209,7 @@ final class AutoConfigParserTests: XCTestCase { assertMacroExpansion( """ @AutoConfigParser - struct S: SeverityBasedRuleConfiguration { + struct MyConfiguration: SeverityBasedRuleConfiguration { @ConfigurationElement var severityConfiguration = .warning @ConfigurationElement @@ -210,12 +218,14 @@ final class AutoConfigParserTests: XCTestCase { """, expandedSource: """ - struct S: SeverityBasedRuleConfiguration { + struct MyConfiguration: SeverityBasedRuleConfiguration { @ConfigurationElement var severityConfiguration = .warning @ConfigurationElement var foo = 2 + typealias Parent = MyRule + mutating func apply(configuration: Any) throws(Issue) { if $severityConfiguration.key.isEmpty { $severityConfiguration.key = "severity_configuration" diff --git a/Tests/TestHelpers/RuleMock.swift b/Tests/TestHelpers/MockRule.swift similarity index 95% rename from Tests/TestHelpers/RuleMock.swift rename to Tests/TestHelpers/MockRule.swift index f7e961fbc..cb63f6335 100644 --- a/Tests/TestHelpers/RuleMock.swift +++ b/Tests/TestHelpers/MockRule.swift @@ -1,12 +1,12 @@ import SwiftLintCore -public struct RuleMock: Rule { +public struct MockRule: Rule { var configurationDescription: some Documentable { RuleConfigurationOption.noOptions } public var configuration = SeverityConfiguration(.warning) public static let description = RuleDescription( - identifier: "RuleMock", + identifier: "MockRule", name: "", description: "", kind: .style