Skip to content

Commit

Permalink
Add wrapper for KtLint rules
Browse files Browse the repository at this point in the history
  • Loading branch information
atulgpt committed Apr 24, 2023
1 parent 9045cea commit 53bd0f4
Show file tree
Hide file tree
Showing 6 changed files with 58 additions and 2 deletions.
3 changes: 1 addition & 2 deletions detekt-core/src/main/resources/default-detekt-config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -309,8 +309,7 @@ naming:
active: false
allowedPattern: '^(is|has|are)'
ClassNaming:
active: true
classPattern: '[A-Z][a-zA-Z0-9]*'
active: false
ConstructorParameterNaming:
active: true
parameterPattern: '[a-z][A-Za-z0-9]*'
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ import io.gitlab.arturbosch.detekt.formatting.wrappers.AnnotationSpacing
import io.gitlab.arturbosch.detekt.formatting.wrappers.ArgumentListWrapping
import io.gitlab.arturbosch.detekt.formatting.wrappers.BlockCommentInitialStarAlignment
import io.gitlab.arturbosch.detekt.formatting.wrappers.ChainWrapping
import io.gitlab.arturbosch.detekt.formatting.wrappers.ClassNaming
import io.gitlab.arturbosch.detekt.formatting.wrappers.CommentSpacing
import io.gitlab.arturbosch.detekt.formatting.wrappers.CommentWrapping
import io.gitlab.arturbosch.detekt.formatting.wrappers.ContextReceiverMapping
Expand All @@ -16,6 +17,7 @@ import io.gitlab.arturbosch.detekt.formatting.wrappers.EnumWrapping
import io.gitlab.arturbosch.detekt.formatting.wrappers.Filename
import io.gitlab.arturbosch.detekt.formatting.wrappers.FinalNewline
import io.gitlab.arturbosch.detekt.formatting.wrappers.FunKeywordSpacing
import io.gitlab.arturbosch.detekt.formatting.wrappers.FunctionName
import io.gitlab.arturbosch.detekt.formatting.wrappers.FunctionReturnTypeSpacing
import io.gitlab.arturbosch.detekt.formatting.wrappers.FunctionSignature
import io.gitlab.arturbosch.detekt.formatting.wrappers.FunctionStartOfBodySpacing
Expand Down Expand Up @@ -51,6 +53,7 @@ import io.gitlab.arturbosch.detekt.formatting.wrappers.PackageName
import io.gitlab.arturbosch.detekt.formatting.wrappers.ParameterListSpacing
import io.gitlab.arturbosch.detekt.formatting.wrappers.ParameterListWrapping
import io.gitlab.arturbosch.detekt.formatting.wrappers.ParameterWrapping
import io.gitlab.arturbosch.detekt.formatting.wrappers.PropertyName
import io.gitlab.arturbosch.detekt.formatting.wrappers.PropertyWrapping
import io.gitlab.arturbosch.detekt.formatting.wrappers.SpacingAroundAngleBrackets
import io.gitlab.arturbosch.detekt.formatting.wrappers.SpacingAroundColon
Expand Down Expand Up @@ -92,11 +95,13 @@ class KtLintMultiRule(config: Config = Config.empty) :
ArgumentListWrapping(config),
BlockCommentInitialStarAlignment(config),
ChainWrapping(config),
ClassNaming(config),
CommentSpacing(config),
CommentWrapping(config),
EnumEntryNameCase(config),
Filename(config),
FinalNewline(config),
FunctionName(config),
FunKeywordSpacing(config),
FunctionReturnTypeSpacing(config),
FunctionStartOfBodySpacing(config),
Expand Down Expand Up @@ -125,6 +130,7 @@ class KtLintMultiRule(config: Config = Config.empty) :
PackageName(config),
ParameterListWrapping(config),
ParameterWrapping(config),
PropertyName(config),
PropertyWrapping(config),
SpacingAroundAngleBrackets(config),
SpacingAroundColon(config),
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
package io.gitlab.arturbosch.detekt.formatting.wrappers

import com.pinterest.ktlint.ruleset.standard.rules.ClassNamingRule
import io.gitlab.arturbosch.detekt.api.Config
import io.gitlab.arturbosch.detekt.formatting.FormattingRule

/**
* See [ktlint docs](https://pinterest.github.io/ktlint/rules/standard/#classobject-naming) for
* documentation.
*/
class ClassNaming(config: Config) : FormattingRule(config) {
override val wrapping = ClassNamingRule()
override val issue =
issueFor("Class or object name should start with an uppercase letter and use camel case.")
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
package io.gitlab.arturbosch.detekt.formatting.wrappers

import com.pinterest.ktlint.ruleset.standard.rules.FunctionNamingRule
import io.gitlab.arturbosch.detekt.api.Config
import io.gitlab.arturbosch.detekt.formatting.FormattingRule

/**
* See [ktlint docs](https://pinterest.github.io/ktlint/rules/experimental/#function-naming) for
* documentation.
*/
class FunctionName(config: Config) : FormattingRule(config) {
override val wrapping = FunctionNamingRule()
override val issue =
issueFor("Function name should start with a lowercase letter (except factory methods) and use camel case.")
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
package io.gitlab.arturbosch.detekt.formatting.wrappers

import com.pinterest.ktlint.ruleset.standard.rules.PropertyNamingRule
import io.gitlab.arturbosch.detekt.api.Config
import io.gitlab.arturbosch.detekt.formatting.FormattingRule

/**
* See [ktlint docs](https://pinterest.github.io/ktlint/rules/experimental/#property-naming) for
* documentation.
*/
class PropertyName(config: Config) : FormattingRule(config) {
override val wrapping = PropertyNamingRule()
override val issue =
issueFor("Reports incorrect property name.")
}
6 changes: 6 additions & 0 deletions detekt-formatting/src/main/resources/config/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,8 @@ formatting:
active: true
autoCorrect: true
indentSize: 4
ClassNaming:
active: false
CommentSpacing:
active: true
autoCorrect: true
Expand Down Expand Up @@ -52,6 +54,8 @@ formatting:
FunKeywordSpacing:
active: true
autoCorrect: true
FunctionName:
active: false
FunctionReturnTypeSpacing:
active: true
autoCorrect: true
Expand Down Expand Up @@ -174,6 +178,8 @@ formatting:
autoCorrect: true
indentSize: 4
maxLineLength: 120
PropertyName:
active: false
PropertyWrapping:
active: true
autoCorrect: true
Expand Down

0 comments on commit 53bd0f4

Please sign in to comment.