Added rendering visibility in DescriptorRenderer.
This commit is contained in:
@@ -297,6 +297,7 @@ public class DescriptorRenderer implements Renderer<DeclarationDescriptor> {
|
||||
|
||||
@Override
|
||||
public Void visitPropertyDescriptor(PropertyDescriptor descriptor, StringBuilder builder) {
|
||||
renderVisibility(descriptor.getVisibility(), builder);
|
||||
renderModality(descriptor.getModality(), builder);
|
||||
String typeString = renderPropertyPrefixAndComputeTypeString(
|
||||
builder,
|
||||
@@ -309,6 +310,10 @@ public class DescriptorRenderer implements Renderer<DeclarationDescriptor> {
|
||||
return null;
|
||||
}
|
||||
|
||||
private void renderVisibility(Visibility visibility, StringBuilder builder) {
|
||||
builder.append(visibility).append(" ");
|
||||
}
|
||||
|
||||
private void renderModality(Modality modality, StringBuilder builder) {
|
||||
switch (modality) {
|
||||
case FINAL:
|
||||
@@ -326,6 +331,7 @@ public class DescriptorRenderer implements Renderer<DeclarationDescriptor> {
|
||||
|
||||
@Override
|
||||
public Void visitFunctionDescriptor(FunctionDescriptor descriptor, StringBuilder builder) {
|
||||
renderVisibility(descriptor.getVisibility(), builder);
|
||||
renderModality(descriptor.getModality(), builder);
|
||||
builder.append(renderKeyword("fun")).append(" ");
|
||||
if (renderTypeParameters(descriptor.getTypeParameters(), builder)) {
|
||||
@@ -420,7 +426,20 @@ public class DescriptorRenderer implements Renderer<DeclarationDescriptor> {
|
||||
return super.visitClassDescriptor(descriptor, builder);
|
||||
}
|
||||
|
||||
private boolean isClassObjectDescriptor(ClassDescriptor descriptor) {
|
||||
if (descriptor.getKind() == ClassKind.OBJECT) {
|
||||
DeclarationDescriptor containing = descriptor.getContainingDeclaration();
|
||||
if (containing instanceof ClassDescriptor) {
|
||||
return ((ClassDescriptor)containing).getClassObjectDescriptor() == descriptor;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
public void renderClassDescriptor(ClassDescriptor descriptor, StringBuilder builder, String keyword) {
|
||||
if (!isClassObjectDescriptor(descriptor)) {
|
||||
renderVisibility(descriptor.getVisibility(), builder);
|
||||
}
|
||||
if (descriptor.getKind() != ClassKind.TRAIT && descriptor.getKind() != ClassKind.OBJECT) {
|
||||
renderModality(descriptor.getModality(), builder);
|
||||
}
|
||||
|
||||
@@ -4,15 +4,15 @@ public fun pub() {}
|
||||
|
||||
internal fun int : String {}
|
||||
|
||||
val int2 : Int = 5
|
||||
fun int2() : Int = 5
|
||||
|
||||
private fun prv() = 5
|
||||
|
||||
public fun Int.ext() : Int {}
|
||||
|
||||
//package rendererTest defined in <module>.<root>
|
||||
//final fun pub() : Unit defined in <module>.<root>.rendererTest
|
||||
//final fun int() : jet.String defined in <module>.<root>.rendererTest
|
||||
//final val int2 : jet.Int defined in <module>.<root>.rendererTest
|
||||
//final fun prv() : jet.Int defined in <module>.<root>.rendererTest
|
||||
//final fun jet.Int.ext() : jet.Int defined in <module>.<root>.rendererTest
|
||||
//public final fun pub() : Unit defined in <module>.<root>.rendererTest
|
||||
//internal final fun int() : jet.String defined in <module>.<root>.rendererTest
|
||||
//internal final fun int2() : jet.Int defined in <module>.<root>.rendererTest
|
||||
//private final fun prv() : jet.Int defined in <module>.<root>.rendererTest
|
||||
//public final fun jet.Int.ext() : jet.Int defined in <module>.<root>.rendererTest
|
||||
@@ -12,9 +12,9 @@ public val Int.ext : Int
|
||||
get() {}
|
||||
|
||||
//package rendererTest defined in <module>.<root>
|
||||
//final val pub : jet.String defined in <module>.<root>.rendererTest
|
||||
//final var int : jet.String defined in <module>.<root>.rendererTest
|
||||
//final val int2 : jet.Int defined in <module>.<root>.rendererTest
|
||||
//final var private : jet.Int defined in <module>.<root>.rendererTest
|
||||
//final val jet.Int.ext : jet.Int defined in <module>.<root>.rendererTest
|
||||
//final fun jet.Int.get-ext() : jet.Int defined in <module>.<root>.rendererTest
|
||||
//public final val pub : jet.String defined in <module>.<root>.rendererTest
|
||||
//internal final var int : jet.String defined in <module>.<root>.rendererTest
|
||||
//internal final val int2 : jet.Int defined in <module>.<root>.rendererTest
|
||||
//private final var private : jet.Int defined in <module>.<root>.rendererTest
|
||||
//public final val jet.Int.ext : jet.Int defined in <module>.<root>.rendererTest
|
||||
//public final fun jet.Int.get-ext() : jet.Int defined in <module>.<root>.rendererTest
|
||||
Reference in New Issue
Block a user