Skip to content

Commit 2a0531c

Browse files
committed
Use SemanticTokenType.TYPE for annotations
1 parent 8b432d3 commit 2a0531c

File tree

1 file changed

+5
-0
lines changed

1 file changed

+5
-0
lines changed

server/src/main/kotlin/org/javacs/kt/semantictokens/SemanticTokens.kt

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ import org.javacs.kt.position.offset
1010
import org.javacs.kt.util.preOrderTraversal
1111
import org.jetbrains.kotlin.descriptors.ClassDescriptor
1212
import org.jetbrains.kotlin.descriptors.ClassKind
13+
import org.jetbrains.kotlin.descriptors.ConstructorDescriptor
1314
import org.jetbrains.kotlin.descriptors.FunctionDescriptor
1415
import org.jetbrains.kotlin.descriptors.PropertyDescriptor
1516
import org.jetbrains.kotlin.descriptors.VariableDescriptor
@@ -115,6 +116,10 @@ private fun elementToken(element: PsiElement, bindingContext: BindingContext): S
115116
val tokenType = when (target) {
116117
is PropertyDescriptor -> SemanticTokenType.PROPERTY
117118
is VariableDescriptor -> SemanticTokenType.VARIABLE
119+
is ConstructorDescriptor -> when (target.constructedClass.kind) {
120+
ClassKind.ANNOTATION_CLASS -> SemanticTokenType.TYPE // annotations look nicer this way
121+
else -> SemanticTokenType.FUNCTION
122+
}
118123
is FunctionDescriptor -> SemanticTokenType.FUNCTION
119124
is ClassDescriptor -> when (target.kind) {
120125
ClassKind.CLASS -> SemanticTokenType.CLASS

0 commit comments

Comments
 (0)