Add internal keyword overriding package(java) visibility
This commit is contained in:
@@ -33,6 +33,7 @@ import org.jetbrains.annotations.Nullable;
|
|||||||
import org.jetbrains.jet.lang.descriptors.*;
|
import org.jetbrains.jet.lang.descriptors.*;
|
||||||
import org.jetbrains.jet.lang.psi.*;
|
import org.jetbrains.jet.lang.psi.*;
|
||||||
import org.jetbrains.jet.lang.resolve.BindingContext;
|
import org.jetbrains.jet.lang.resolve.BindingContext;
|
||||||
|
import org.jetbrains.jet.lang.resolve.java.JavaDescriptorResolver;
|
||||||
import org.jetbrains.jet.lang.types.JetType;
|
import org.jetbrains.jet.lang.types.JetType;
|
||||||
import org.jetbrains.jet.lang.types.lang.KotlinBuiltIns;
|
import org.jetbrains.jet.lang.types.lang.KotlinBuiltIns;
|
||||||
import org.jetbrains.jet.plugin.project.WholeProjectAnalyzerFacade;
|
import org.jetbrains.jet.plugin.project.WholeProjectAnalyzerFacade;
|
||||||
@@ -264,7 +265,13 @@ public abstract class OverrideImplementMethodsHandler implements LanguageCodeIns
|
|||||||
|
|
||||||
private static String displayableVisibility(MemberDescriptor descriptor) {
|
private static String displayableVisibility(MemberDescriptor descriptor) {
|
||||||
Visibility visibility = descriptor.getVisibility();
|
Visibility visibility = descriptor.getVisibility();
|
||||||
return visibility != Visibilities.INTERNAL ? visibility.toString() + " " : "";
|
if (visibility == Visibilities.INTERNAL) {
|
||||||
|
return "";
|
||||||
|
}
|
||||||
|
if (visibility == JavaDescriptorResolver.PACKAGE_VISIBILITY) {
|
||||||
|
return "internal ";
|
||||||
|
}
|
||||||
|
return visibility.toString() + " ";
|
||||||
}
|
}
|
||||||
|
|
||||||
@NotNull
|
@NotNull
|
||||||
|
|||||||
+7
@@ -0,0 +1,7 @@
|
|||||||
|
package foo
|
||||||
|
|
||||||
|
import foo.Intf
|
||||||
|
|
||||||
|
class Impl(): Intf() {
|
||||||
|
<caret>
|
||||||
|
}
|
||||||
+10
@@ -0,0 +1,10 @@
|
|||||||
|
package foo
|
||||||
|
|
||||||
|
import foo.Intf
|
||||||
|
|
||||||
|
class Impl(): Intf() {
|
||||||
|
|
||||||
|
internal override fun getFooBar(): String? {
|
||||||
|
return super<Intf>.getFooBar()
|
||||||
|
}
|
||||||
|
}
|
||||||
+7
@@ -0,0 +1,7 @@
|
|||||||
|
package foo;
|
||||||
|
|
||||||
|
public class Intf {
|
||||||
|
String getFooBar() {
|
||||||
|
return "OK";
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -138,6 +138,10 @@ public class OverrideImplementTest extends LightCodeInsightFixtureTestCase {
|
|||||||
doOverrideDirectoryTest("getAnswer");
|
doOverrideDirectoryTest("getAnswer");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void testJavaMethodWithPackageVisibility() {
|
||||||
|
doOverrideDirectoryTest("getFooBar");
|
||||||
|
}
|
||||||
|
|
||||||
public void testInheritVisibilities() {
|
public void testInheritVisibilities() {
|
||||||
doMultiOverrideFileTest();
|
doMultiOverrideFileTest();
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user