forked from detekt/detekt
-
Notifications
You must be signed in to change notification settings - Fork 0
/
CoroutinesProvider.kt
28 lines (24 loc) · 948 Bytes
/
CoroutinesProvider.kt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
package io.gitlab.arturbosch.detekt.rules.coroutines
import io.gitlab.arturbosch.detekt.api.Config
import io.gitlab.arturbosch.detekt.api.RuleSet
import io.gitlab.arturbosch.detekt.api.internal.ActiveByDefault
import io.gitlab.arturbosch.detekt.api.internal.DefaultRuleSetProvider
/**
* The coroutines rule set analyzes code for potential coroutines problems.
*/
@ActiveByDefault(since = "1.4.0")
class CoroutinesProvider : DefaultRuleSetProvider {
override val ruleSetId: String = "coroutines"
override fun instance(config: Config): RuleSet = RuleSet(
ruleSetId,
listOf(
GlobalCoroutineUsage(config),
InjectDispatcher(config),
RedundantSuspendModifier(config),
SleepInsteadOfDelay(config),
SuspendFunWithFlowReturnType(config),
SuspendFunWithCoroutineScopeReceiver(config),
SuspendFunSwallowedCancellation(config),
)
)
}