From 9dbd355e92248ea10c5a6ad61ac8e66c1a3decd8 Mon Sep 17 00:00:00 2001 From: Yan Zhulanow Date: Thu, 27 Aug 2015 19:47:37 +0300 Subject: [PATCH] Render targeted annotations without escaping brackets --- .../org/jetbrains/kotlin/renderer/DescriptorRendererImpl.kt | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/core/descriptors/src/org/jetbrains/kotlin/renderer/DescriptorRendererImpl.kt b/core/descriptors/src/org/jetbrains/kotlin/renderer/DescriptorRendererImpl.kt index 304ddac3d7f..19e70adb796 100644 --- a/core/descriptors/src/org/jetbrains/kotlin/renderer/DescriptorRendererImpl.kt +++ b/core/descriptors/src/org/jetbrains/kotlin/renderer/DescriptorRendererImpl.kt @@ -339,18 +339,22 @@ internal class DescriptorRendererImpl( if (DescriptorRendererModifier.ANNOTATIONS !in modifiers) return val excluded = if (annotated is JetType) excludedTypeAnnotationClasses else excludedAnnotationClasses + var hasTargetedAnnotations = false val annotationsBuilder = StringBuilder { for ((annotation, target) in annotated.getAnnotations().getAllAnnotations()) { val annotationClass = annotation.getType().getConstructor().getDeclarationDescriptor() as ClassDescriptor if (!excluded.contains(DescriptorUtils.getFqNameSafe(annotationClass))) { + if (target != null && !hasTargetedAnnotations) { + hasTargetedAnnotations = true + } append(renderAnnotation(annotation, target)).append(" ") } } } - if (!needBrackets) { + if (!needBrackets || hasTargetedAnnotations) { builder.append(annotationsBuilder) } else if (annotationsBuilder.length() > 0) {