Cleanup (typos; formatting)
[idea/community.git] / java / java-impl / src / com / intellij / codeInsight / AnnotationLineMarkerProviders.kt
1 // Copyright 2000-2019 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
2 package com.intellij.codeInsight
3
4 import com.intellij.codeInsight.javadoc.NonCodeAnnotationGenerator
5 import com.intellij.psi.PsiModifierListOwner
6
7 class ExternalAnnotationLineMarkerProvider : NonCodeAnnotationsLineMarkerProvider() {
8   override fun hasAnnotationsToShow(owner: PsiModifierListOwner): Boolean {
9     return NonCodeAnnotationGenerator.getSignatureNonCodeAnnotations(owner).values().any { !it.isInferred }
10   }
11
12   override fun getName() = "External annotations"
13 }
14
15 class InferredAnnotationsLineMarkerProvider : NonCodeAnnotationsLineMarkerProvider() {
16   override fun hasAnnotationsToShow(owner: PsiModifierListOwner): Boolean {
17     val values = NonCodeAnnotationGenerator.getSignatureNonCodeAnnotations(owner).values()
18     // Don't show two markers
19     return values.any { it.isInferred } && values.none { !it.isInferred }
20   }
21
22
23   override fun getName() = "Inferred annotations"
24 }