KT-8208: Support static members completion when receiver not-imported

#KT-8208 fixed
This commit is contained in:
Simon Ogorodnik
2017-06-28 22:22:22 +03:00
parent 16505daeea
commit 33c22b8251
36 changed files with 517 additions and 28 deletions
@@ -0,0 +1,7 @@
package foo
enum class Color {
RED, GREEN, BLUE
}
// ALLOW_AST_ACCESS
@@ -0,0 +1,12 @@
package bar
fun buz() {
Color.<caret>
}
// EXIST: RED
// EXIST: GREEN
// EXIST: BLUE
// EXIST: values
// EXIST: valueOf
// NOTHING_ELSE
@@ -0,0 +1,11 @@
package bar
fun buz {
SomeClass.<caret>
}
// EXIST: CONST_A
// EXIST: aProc
// EXIST: getA
// EXIST: FooBar
// NOTHING_ELSE
@@ -0,0 +1,17 @@
package javapackage;
public class SomeClass {
public static void aProc() {
}
public static String getA() {
return CONST_A;
}
public static final String CONST_A = "A";
public static class FooBar {
}
}
@@ -0,0 +1,15 @@
package foo
class Bar {
companion object {
fun bfun() {}
val bval = 99
const val bconst = 100
}
class FooBar {
}
}
// ALLOW_AST_ACCESS
@@ -0,0 +1,15 @@
package bar
fun buz() {
Bar.<caret>
}
// EXIST: bconst
// EXIST: bval
// EXIST: Companion
// EXIST: FooBar
// EXIST: bfun
// EXIST: toString
// EXIST: hashCode
// EXIST: equals
// NOTHING_ELSE
@@ -0,0 +1,14 @@
package foo
object Bar {
fun bfun() {}
val bval = 99
const val bconst = 100
class FooBar {
}
}
// ALLOW_AST_ACCESS
@@ -0,0 +1,14 @@
package bar
fun buz() {
Bar.<caret>
}
// EXIST: bconst
// EXIST: bval
// EXIST: FooBar
// EXIST: bfun
// EXIST: toString
// EXIST: hashCode
// EXIST: equals
// NOTHING_ELSE
@@ -0,0 +1,13 @@
package foo
class Bar {
companion object {
fun inFooPackage() {}
}
class Foo {
}
}
// ALLOW_AST_ACCESS
@@ -0,0 +1,13 @@
package foobar
class Bar {
companion object {
fun inFooBarPackage() {}
}
class FooBar {
}
}
// ALLOW_AST_ACCESS
@@ -0,0 +1,12 @@
package bar
object Bar {
fun inBarPackage() {}
class Bar {
}
}
// ALLOW_AST_ACCESS
@@ -0,0 +1,23 @@
package buz
fun foo() {
Bar.<caret>
}
// EXIST: {"lookupString":"inBarPackage","tailText":"() for Bar in bar"}
// EXIST: {"lookupString":"Bar","tailText":" (bar.Bar) for Bar in bar"}
// EXIST: {"lookupString":"inFooBarPackage","tailText":"() for Companion in foobar.Bar"}
// EXIST: {"lookupString":"FooBar","tailText":" (foobar.Bar) for Bar in foobar"}
// EXIST: {"lookupString":"inFooPackage","tailText":"() for Companion in foo.Bar"}
// EXIST: {"lookupString":"Foo","tailText":" (foo.Bar) for Bar in foo"}
// EXIST: equals
// EXIST: hashCode
// EXIST: toString
// EXIST: {"lookupString":"inJavapackage","tailText":"() for Bar in javapackage"}
// EXIST: {"lookupString":"JavapackageC","tailText":" (javapackage.Bar)"}
// EXIST: {"lookupString":"Companion","tailText":" (foo.Bar) for Bar in foo"}
// EXIST: {"lookupString":"Companion","tailText":" (foobar.Bar) for Bar in foobar"}
// NOTHING_ELSE
@@ -0,0 +1,11 @@
package javapackage;
public class Bar {
public static void inJavapackage() {
}
public static class JavapackageC {
}
}