diff --git a/compiler/frontend/src/org/jetbrains/jet/resolve/DescriptorRenderer.java b/compiler/frontend/src/org/jetbrains/jet/resolve/DescriptorRenderer.java index 570df5b1f0b..75c339de6a9 100644 --- a/compiler/frontend/src/org/jetbrains/jet/resolve/DescriptorRenderer.java +++ b/compiler/frontend/src/org/jetbrains/jet/resolve/DescriptorRenderer.java @@ -38,11 +38,23 @@ import java.util.*; */ public class DescriptorRenderer implements Renderer { + public static final DescriptorRenderer COMPACT_WITH_MODIFIERS = new DescriptorRenderer() { + @Override + protected boolean shouldRenderDefinedIn() { + return false; + } + }; + public static final DescriptorRenderer COMPACT = new DescriptorRenderer() { @Override protected boolean shouldRenderDefinedIn() { return false; } + + @Override + protected boolean shouldRenderModifiers() { + return false; + } }; public static final DescriptorRenderer TEXT = new DescriptorRenderer(); @@ -78,18 +90,6 @@ public class DescriptorRenderer implements Renderer { } }; - private DescriptorRenderer() { - this(true, true); - } - - public DescriptorRenderer(boolean renderModifiers, boolean renderDefinedIn) { - this.renderModifiers = renderModifiers; - this.renderDefinedIn = renderDefinedIn; - } - - private final boolean renderModifiers; - private final boolean renderDefinedIn; - protected boolean hasDefaultValue(ValueParameterDescriptor descriptor) { return descriptor.hasDefaultValue(); } @@ -256,8 +256,11 @@ public class DescriptorRenderer implements Renderer { return true; } + protected boolean shouldRenderModifiers() { + return true; + } + private void appendDefinedIn(DeclarationDescriptor declarationDescriptor, StringBuilder stringBuilder) { - if (!renderDefinedIn) return; if (declarationDescriptor instanceof ModuleDescriptor) { stringBuilder.append(" is a module"); return; @@ -387,7 +390,7 @@ public class DescriptorRenderer implements Renderer { } private void renderVisibility(Visibility visibility, StringBuilder builder) { - if(!renderModifiers) return; + if(!shouldRenderModifiers()) return; if ("package".equals(visibility.toString())) { builder.append("public/*package*/ "); } else { @@ -396,7 +399,7 @@ public class DescriptorRenderer implements Renderer { } private void renderModality(Modality modality, StringBuilder builder) { - if (!renderModifiers) return; + if (!shouldRenderModifiers()) return; String keyword = ""; switch (modality) { case FINAL: @@ -630,13 +633,6 @@ public class DescriptorRenderer implements Renderer { public static class HtmlDescriptorRenderer extends DescriptorRenderer { - public HtmlDescriptorRenderer() { - } - - public HtmlDescriptorRenderer(boolean renderModifiers, boolean renderDefinedIn) { - super(renderModifiers, renderDefinedIn); - } - @Override protected String escape(String s) { return s.replaceAll("<", "<").replaceAll(">", ">"); diff --git a/idea/src/org/jetbrains/jet/plugin/codeInsight/OverrideImplementMethodsHandler.java b/idea/src/org/jetbrains/jet/plugin/codeInsight/OverrideImplementMethodsHandler.java index 6926ce24f1c..0dc2061822d 100644 --- a/idea/src/org/jetbrains/jet/plugin/codeInsight/OverrideImplementMethodsHandler.java +++ b/idea/src/org/jetbrains/jet/plugin/codeInsight/OverrideImplementMethodsHandler.java @@ -141,7 +141,7 @@ public abstract class OverrideImplementMethodsHandler implements LanguageCodeIns addReceiverParameter(descriptor, bodyBuilder); - bodyBuilder.append(descriptor.getName()).append(" : ").append(DescriptorRenderer.COMPACT.renderTypeWithShortNames( + bodyBuilder.append(descriptor.getName()).append(" : ").append(DescriptorRenderer.COMPACT_WITH_MODIFIERS.renderTypeWithShortNames( descriptor.getType())); String initializer = defaultInitializer(descriptor.getType(), JetStandardLibrary.getInstance()); if (initializer != null) { diff --git a/idea/src/org/jetbrains/jet/plugin/libraries/DecompiledDataFactory.java b/idea/src/org/jetbrains/jet/plugin/libraries/DecompiledDataFactory.java index 5109a1d72dc..12100d99530 100644 --- a/idea/src/org/jetbrains/jet/plugin/libraries/DecompiledDataFactory.java +++ b/idea/src/org/jetbrains/jet/plugin/libraries/DecompiledDataFactory.java @@ -125,7 +125,7 @@ class DecompiledDataFactory { private void appendDescriptor(@NotNull DeclarationDescriptor descriptor, String indent) { int startOffset = myBuilder.length(); - String renderedDescriptor = DescriptorRenderer.COMPACT.render(descriptor); + String renderedDescriptor = DescriptorRenderer.COMPACT_WITH_MODIFIERS.render(descriptor); renderedDescriptor = renderedDescriptor.replace("= ...", "= " + DECOMPILED_COMMENT); myBuilder.append(renderedDescriptor); int endOffset = myBuilder.length();