Add inspection "Map replaceable with EnumMap" #KT-25439 Fixed

This commit is contained in:
Dereck Bridie
2019-03-25 13:46:19 +03:00
committed by Mikhail Glukhikh
parent 607325c6e5
commit d86ffd3f34
13 changed files with 189 additions and 0 deletions
@@ -0,0 +1 @@
org.jetbrains.kotlin.idea.inspections.ReplaceWithEnumMapInspection
@@ -0,0 +1,7 @@
// RUNTIME_WITH_FULL_JDK
enum class E {
A, B
}
fun getMap(): Map<E, String> = <caret>hashMapOf()
@@ -0,0 +1,9 @@
import java.util.EnumMap
// RUNTIME_WITH_FULL_JDK
enum class E {
A, B
}
fun getMap(): Map<E, String> = EnumMap(E::class.java)
@@ -0,0 +1,8 @@
// RUNTIME_WITH_FULL_JDK
import java.util.HashMap
enum class E {
A, B
}
fun getMap(): Map<E, String> = <caret>HashMap()
@@ -0,0 +1,9 @@
// RUNTIME_WITH_FULL_JDK
import java.util.EnumMap
import java.util.HashMap
enum class E {
A, B
}
fun getMap(): Map<E, String> = EnumMap(E::class.java)
@@ -0,0 +1,10 @@
// PROBLEM: none
// WITH_RUNTIME
enum class E {
A, B
}
fun main() {
val map = <caret>hashMapOf<E, String>()
}
@@ -0,0 +1,9 @@
// RUNTIME_WITH_FULL_JDK
enum class E {
A, B
}
fun main() {
val test: Map<E, String> = <caret>HashMap()
}
@@ -0,0 +1,11 @@
import java.util.EnumMap
// RUNTIME_WITH_FULL_JDK
enum class E {
A, B
}
fun main() {
val test: Map<E, String> = EnumMap(E::class.java)
}
@@ -0,0 +1,6 @@
// PROBLEM: none
// WITH_RUNTIME
fun main() {
val map = <caret>hashMapOf(5 to 1)
}