Minor
This commit is contained in:
+15
-11
@@ -19,7 +19,6 @@ package org.jetbrains.kotlin.idea.highlighter
|
|||||||
import com.intellij.lang.annotation.AnnotationHolder
|
import com.intellij.lang.annotation.AnnotationHolder
|
||||||
import com.intellij.openapi.application.ApplicationManager
|
import com.intellij.openapi.application.ApplicationManager
|
||||||
import com.intellij.psi.PsiElement
|
import com.intellij.psi.PsiElement
|
||||||
import com.intellij.psi.impl.source.tree.LeafPsiElement
|
|
||||||
import org.jetbrains.kotlin.lexer.KtTokens
|
import org.jetbrains.kotlin.lexer.KtTokens
|
||||||
import org.jetbrains.kotlin.psi.KtLambdaExpression
|
import org.jetbrains.kotlin.psi.KtLambdaExpression
|
||||||
import org.jetbrains.kotlin.psi.KtVisitorVoid
|
import org.jetbrains.kotlin.psi.KtVisitorVoid
|
||||||
@@ -27,29 +26,34 @@ import org.jetbrains.kotlin.psi.KtVisitorVoid
|
|||||||
internal class SoftKeywordsHighlightingVisitor(private val holder: AnnotationHolder) : KtVisitorVoid() {
|
internal class SoftKeywordsHighlightingVisitor(private val holder: AnnotationHolder) : KtVisitorVoid() {
|
||||||
|
|
||||||
override fun visitElement(element: PsiElement) {
|
override fun visitElement(element: PsiElement) {
|
||||||
if (element is LeafPsiElement) {
|
val elementType = element.node.elementType
|
||||||
val elementType = element.elementType
|
val attributes = when (elementType) {
|
||||||
if (KtTokens.SOFT_KEYWORDS.contains(elementType)) {
|
in KtTokens.SOFT_KEYWORDS -> {
|
||||||
var attributes = KotlinHighlightingColors.KEYWORD
|
when (elementType) {
|
||||||
if (KtTokens.MODIFIER_KEYWORDS.contains(elementType)) {
|
in KtTokens.MODIFIER_KEYWORDS -> KotlinHighlightingColors.BUILTIN_ANNOTATION
|
||||||
attributes = KotlinHighlightingColors.BUILTIN_ANNOTATION
|
else -> KotlinHighlightingColors.KEYWORD
|
||||||
}
|
}
|
||||||
holder.createInfoAnnotation(element as PsiElement, null).textAttributes = attributes
|
|
||||||
}
|
|
||||||
if (KtTokens.SAFE_ACCESS == elementType) {
|
|
||||||
holder.createInfoAnnotation(element as PsiElement, null).textAttributes = KotlinHighlightingColors.SAFE_ACCESS
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
KtTokens.SAFE_ACCESS -> KotlinHighlightingColors.SAFE_ACCESS
|
||||||
|
|
||||||
|
else -> return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
holder.createInfoAnnotation(element, null).textAttributes = attributes
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun visitLambdaExpression(lambdaExpression: KtLambdaExpression) {
|
override fun visitLambdaExpression(lambdaExpression: KtLambdaExpression) {
|
||||||
if (ApplicationManager.getApplication().isUnitTestMode) return
|
if (ApplicationManager.getApplication().isUnitTestMode) return
|
||||||
|
|
||||||
val functionLiteral = lambdaExpression.functionLiteral
|
val functionLiteral = lambdaExpression.functionLiteral
|
||||||
holder.createInfoAnnotation(functionLiteral.lBrace, null).textAttributes = KotlinHighlightingColors.FUNCTION_LITERAL_BRACES_AND_ARROW
|
holder.createInfoAnnotation(functionLiteral.lBrace, null).textAttributes = KotlinHighlightingColors.FUNCTION_LITERAL_BRACES_AND_ARROW
|
||||||
|
|
||||||
val closingBrace = functionLiteral.rBrace
|
val closingBrace = functionLiteral.rBrace
|
||||||
if (closingBrace != null) {
|
if (closingBrace != null) {
|
||||||
holder.createInfoAnnotation(closingBrace, null).textAttributes = KotlinHighlightingColors.FUNCTION_LITERAL_BRACES_AND_ARROW
|
holder.createInfoAnnotation(closingBrace, null).textAttributes = KotlinHighlightingColors.FUNCTION_LITERAL_BRACES_AND_ARROW
|
||||||
}
|
}
|
||||||
|
|
||||||
val arrow = functionLiteral.arrow
|
val arrow = functionLiteral.arrow
|
||||||
if (arrow != null) {
|
if (arrow != null) {
|
||||||
holder.createInfoAnnotation(arrow, null).textAttributes = KotlinHighlightingColors.FUNCTION_LITERAL_BRACES_AND_ARROW
|
holder.createInfoAnnotation(arrow, null).textAttributes = KotlinHighlightingColors.FUNCTION_LITERAL_BRACES_AND_ARROW
|
||||||
|
|||||||
Reference in New Issue
Block a user