Files
kotlin-fork/analysis/analysis-api/testData/components/scopeProvider/declaredMemberScope/javaClass.kt
T
Marco Pennekamp 5679acbbdb [AA] Remove classifiers from non-static declared member scopes
- The semantics of a non-static declared member scope should be as
  follows: For a variable `c: C` of class type `C`, the declared member
  scope should contain all members `x` accessible as `c.x` (visibility
  notwithstanding) which are *also* explicitly declared in `C`.
- Classifiers are not accessible as properties of a variable `c`, only
  as static members of the class `C` itself, so non-static declared
  member scopes should not contain any classifiers.

^KT-61800
2023-10-10 13:38:00 +00:00

43 lines
856 B
Kotlin
Vendored

// class: JavaClass
// FILE: main.kt
// FILE: SuperInterface.java
public interface SuperInterface {
public int getActualRandomNumber();
public static int getRandomNumber() {
return 3; // Decided by a fair dice roll.
}
}
// FILE: SuperClass.java
public abstract class SuperClass implements SuperInterface {
public static class NestedSuperClass { }
@Override
public int getActualRandomNumber() {
return getRandomNumber();
}
public static int superFoo = 5;
public static String superBar() {
return "superBar";
}
}
// FILE: JavaClass.java
public class JavaClass extends SuperClass {
public static class NestedClass { }
public static int foo = 1;
public static String bar() {
return "bar";
}
public void hello() {
System.out.println("hello");
}
}