From 688fad7f8f1ba94715db3d9248266125a7e94a89 Mon Sep 17 00:00:00 2001 From: Evgeny Gerashchenko Date: Thu, 1 Mar 2012 20:02:30 +0400 Subject: [PATCH] Added COMPACT descriptor renderer (without "defined in ...") --- .../jet/resolve/DescriptorRenderer.java | 22 +++++++++++++++---- 1 file changed, 18 insertions(+), 4 deletions(-) diff --git a/compiler/frontend/src/org/jetbrains/jet/resolve/DescriptorRenderer.java b/compiler/frontend/src/org/jetbrains/jet/resolve/DescriptorRenderer.java index 88330554c67..b4374517a68 100644 --- a/compiler/frontend/src/org/jetbrains/jet/resolve/DescriptorRenderer.java +++ b/compiler/frontend/src/org/jetbrains/jet/resolve/DescriptorRenderer.java @@ -37,6 +37,13 @@ import java.util.List; */ public class DescriptorRenderer implements Renderer { + public static final DescriptorRenderer COMPACT = new DescriptorRenderer() { + @Override + protected boolean shouldRenderDefinedIn() { + return false; + } + }; + public static final DescriptorRenderer TEXT = new DescriptorRenderer(); public static final DescriptorRenderer HTML = new DescriptorRenderer() { @@ -182,10 +189,16 @@ public class DescriptorRenderer implements Renderer { if (declarationDescriptor == null) return lt() + "null>"; StringBuilder stringBuilder = new StringBuilder(); declarationDescriptor.accept(rootVisitor, stringBuilder); - appendDefinedIn(declarationDescriptor, stringBuilder); + if (shouldRenderDefinedIn()) { + appendDefinedIn(declarationDescriptor, stringBuilder); + } return stringBuilder.toString(); } + protected boolean shouldRenderDefinedIn() { + return true; + } + private void appendDefinedIn(DeclarationDescriptor declarationDescriptor, StringBuilder stringBuilder) { stringBuilder.append(" ").append(renderMessage("defined in")).append(" "); @@ -198,7 +211,9 @@ public class DescriptorRenderer implements Renderer { public String renderAsObject(@NotNull ClassDescriptor classDescriptor) { StringBuilder stringBuilder = new StringBuilder(); rootVisitor.renderClassDescriptor(classDescriptor, stringBuilder, "object"); - appendDefinedIn(classDescriptor, stringBuilder); + if (shouldRenderDefinedIn()) { + appendDefinedIn(classDescriptor, stringBuilder); + } return stringBuilder.toString(); } @@ -341,8 +356,7 @@ public class DescriptorRenderer implements Renderer { builder.append(", "); } } - builder.append("> "); - return true; + builder.append(">"); } return false; }