Drop Annotations.getAllAnnotations

This commit is contained in:
Alexander Udalov
2018-08-16 12:18:36 +02:00
parent 83fbabd628
commit 87c0d56618
22 changed files with 51 additions and 109 deletions
@@ -38,8 +38,6 @@ class LazyJavaAnnotations(
override fun getUseSiteTargetedAnnotations() = emptyList<AnnotationWithTarget>()
override fun getAllAnnotations() = this.map { AnnotationWithTarget(it, null) }
override fun iterator() =
(annotationOwner.annotations.asSequence().map(annotationDescriptors)
+ JavaAnnotationMapper.findMappedJavaAnnotation(KotlinBuiltIns.FQ_NAMES.deprecated, annotationOwner, c)).filterNotNull().iterator()
@@ -198,8 +198,6 @@ private class EnhancedTypeAnnotations(private val fqNameToMatch: FqName) : Annot
else -> null
}
override fun getAllAnnotations() = this.map { AnnotationWithTarget(it, null) }
override fun getUseSiteTargetedAnnotations() = emptyList<AnnotationWithTarget>()
// Note, that this class may break Annotations contract (!isEmpty && iterator.isEmpty())
@@ -28,7 +28,6 @@ interface Annotations : Iterable<AnnotationDescriptor> {
* there may be use-site-targeted annotations applicable to the declaration!
*
* @see getUseSiteTargetedAnnotations
* @see getAllAnnotations
*/
fun isEmpty(): Boolean
@@ -38,11 +37,6 @@ interface Annotations : Iterable<AnnotationDescriptor> {
fun getUseSiteTargetedAnnotations(): List<AnnotationWithTarget>
/**
* @return both targeted and annotations without target. Annotation order is preserved.
*/
fun getAllAnnotations(): List<AnnotationWithTarget>
companion object {
val EMPTY: Annotations = object : Annotations {
override fun isEmpty() = true
@@ -51,8 +45,6 @@ interface Annotations : Iterable<AnnotationDescriptor> {
override fun getUseSiteTargetedAnnotations() = emptyList<AnnotationWithTarget>()
override fun getAllAnnotations() = emptyList<AnnotationWithTarget>()
override fun iterator() = emptyList<AnnotationDescriptor>().iterator()
override fun toString() = "EMPTY"
@@ -77,10 +69,6 @@ class FilteredAnnotations(
return delegate.getUseSiteTargetedAnnotations().filter { shouldBeReturned(it.annotation) }
}
override fun getAllAnnotations(): List<AnnotationWithTarget> {
return delegate.getAllAnnotations().filter { shouldBeReturned(it.annotation) }
}
override fun iterator() = delegate.filter(this::shouldBeReturned).iterator()
override fun isEmpty() = delegate.any(this::shouldBeReturned)
@@ -104,8 +92,6 @@ class CompositeAnnotations(
override fun getUseSiteTargetedAnnotations() = delegates.flatMap { it.getUseSiteTargetedAnnotations() }
override fun getAllAnnotations() = delegates.flatMap { it.getAllAnnotations() }
override fun iterator() = delegates.asSequence().flatMap { it.asSequence() }.iterator()
}
@@ -42,8 +42,6 @@ class AnnotationsImpl : Annotations {
.map { AnnotationWithTarget(it.annotation, it.target!!) }
}
override fun getAllAnnotations() = targetedAnnotations
override fun iterator() = annotations.iterator()
override fun toString() = annotations.toString()
@@ -50,6 +50,4 @@ private class AnnotationsWithOnly(val presentAnnotation: FqName): Annotations {
override fun hasAnnotation(fqName: FqName): Boolean = fqName == this.presentAnnotation
override fun getUseSiteTargetedAnnotations(): List<AnnotationWithTarget> = emptyList()
override fun getAllAnnotations(): List<AnnotationWithTarget> = emptyList()
}
@@ -125,8 +125,8 @@ abstract class SimpleType : UnwrappedType() {
override fun toString(): String {
return buildString {
for ((annotation, target) in annotations.getAllAnnotations()) {
append("[", DescriptorRenderer.DEBUG_TEXT.renderAnnotation(annotation, target), "] ")
for (annotation in annotations) {
append("[", DescriptorRenderer.DEBUG_TEXT.renderAnnotation(annotation), "] ")
}
append(constructor)
@@ -33,8 +33,6 @@ open class DeserializedAnnotations(
override fun getUseSiteTargetedAnnotations(): List<AnnotationWithTarget> = emptyList()
override fun getAllAnnotations(): List<AnnotationWithTarget> = annotations.map { AnnotationWithTarget(it, null) }
override fun iterator(): Iterator<AnnotationDescriptor> = annotations.iterator()
}
@@ -58,8 +56,6 @@ open class DeserializedAnnotationsWithPossibleTargets(
override fun getUseSiteTargetedAnnotations(): List<AnnotationWithTarget> = annotations.filter { it.target != null }
override fun getAllAnnotations(): List<AnnotationWithTarget> = annotations
override fun iterator(): Iterator<AnnotationDescriptor> {
return annotations.asSequence().filter { it.target == null }.map { it.annotation }.iterator()
}