Skip to content

Commit b46b0eb

Browse files
committed
refactor: classExists
1 parent 8209f3d commit b46b0eb

File tree

4 files changed

+12
-24
lines changed

4 files changed

+12
-24
lines changed

marker/js-marker/src/main/kotlin/spp/jetbrains/marker/js/JavascriptLanguageProvider.kt

Lines changed: 1 addition & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -45,14 +45,7 @@ import spp.jetbrains.safeLaunch
4545
*/
4646
class JavascriptLanguageProvider : LanguageProvider {
4747

48-
override fun canSetup(): Boolean {
49-
return try {
50-
Class.forName("com.intellij.lang.javascript.psi.impl.JSElementImpl")
51-
true
52-
} catch (ignore: ClassNotFoundException) {
53-
false
54-
}
55-
}
48+
override fun canSetup() = classExists("com.intellij.lang.javascript.psi.impl.JSElementImpl")
5649

5750
override fun setup(project: Project) {
5851
SourceFileMarker.SUPPORTED_FILE_TYPES.add(JSFile::class.java)

marker/jvm-marker/src/main/kotlin/spp/jetbrains/marker/jvm/JVMLanguageProvider.kt

Lines changed: 1 addition & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -48,14 +48,7 @@ import spp.jetbrains.safeLaunch
4848
*/
4949
class JVMLanguageProvider : LanguageProvider {
5050

51-
override fun canSetup(): Boolean {
52-
return try {
53-
Class.forName("com.intellij.psi.PsiJavaFile")
54-
true
55-
} catch (ignore: ClassNotFoundException) {
56-
false
57-
}
58-
}
51+
override fun canSetup() = classExists("com.intellij.psi.PsiJavaFile")
5952

6053
override fun setup(project: Project) {
6154
SUPPORTED_FILE_TYPES.add(GroovyFile::class.java)

marker/py-marker/src/main/kotlin/spp/jetbrains/marker/py/PythonLanguageProvider.kt

Lines changed: 1 addition & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -44,14 +44,7 @@ import spp.jetbrains.safeLaunch
4444
*/
4545
class PythonLanguageProvider : LanguageProvider {
4646

47-
override fun canSetup(): Boolean {
48-
return try {
49-
Class.forName("com.jetbrains.python.psi.PyElement")
50-
true
51-
} catch (ignore: ClassNotFoundException) {
52-
false
53-
}
54-
}
47+
override fun canSetup() = classExists("com.jetbrains.python.psi.PyElement")
5548

5649
override fun setup(project: Project) {
5750
SourceFileMarker.SUPPORTED_FILE_TYPES.add(PyFile::class.java)

marker/src/main/kotlin/spp/jetbrains/marker/LanguageProvider.kt

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,4 +34,13 @@ interface LanguageProvider {
3434
}
3535
return ultimateProvider!!
3636
}
37+
38+
fun classExists(className: String): Boolean {
39+
return try {
40+
Class.forName(className)
41+
true
42+
} catch (ignore: ClassNotFoundException) {
43+
false
44+
}
45+
}
3746
}

0 commit comments

Comments
 (0)