@@ -19,6 +19,7 @@ package spp.jetbrains.artifact.service
19
19
import com.intellij.psi.PsiComment
20
20
import com.intellij.psi.PsiElement
21
21
import com.intellij.psi.PsiFile
22
+ import com.intellij.psi.PsiWhiteSpace
22
23
import spp.jetbrains.artifact.model.FunctionArtifact
23
24
import spp.jetbrains.artifact.service.define.AbstractSourceMarkerService
24
25
import spp.jetbrains.artifact.service.define.IArtifactTypeService
@@ -51,6 +52,14 @@ object ArtifactTypeService : AbstractSourceMarkerService<IArtifactTypeService>()
51
52
return getService(element.language).isComment(element)
52
53
}
53
54
55
+ override fun isWhiteSpaceOrNewLine (element : PsiElement ): Boolean {
56
+ // language-agnostic check
57
+ if (element is PsiWhiteSpace ) return true
58
+
59
+ // language-specific check
60
+ return getService(element.language).isWhiteSpaceOrNewLine(element)
61
+ }
62
+
54
63
override fun getType (element : PsiElement ): ArtifactType ? {
55
64
if (! isSupported(element)) return null
56
65
// language-agnostic check
@@ -123,6 +132,10 @@ fun PsiElement.isComment(): Boolean {
123
132
return ArtifactTypeService .isComment(this )
124
133
}
125
134
135
+ fun PsiElement.isWhiteSpaceOrNewLine (): Boolean {
136
+ return ArtifactTypeService .isWhiteSpaceOrNewLine(this )
137
+ }
138
+
126
139
fun PsiElement.getType (): ArtifactType ? {
127
140
return ArtifactTypeService .getType(this )
128
141
}
0 commit comments