mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-18 09:34:34 +07:00
method chains completion
This commit is contained in:
+43
@@ -0,0 +1,43 @@
|
||||
import java.jang.String;
|
||||
|
||||
/**
|
||||
* @author Dmitry Batkovich <dmitry.batkovich@jetbrains.com>
|
||||
*/
|
||||
|
||||
class Project {
|
||||
Object o;
|
||||
|
||||
void setObject(Object o) {
|
||||
this.o = o;
|
||||
}
|
||||
|
||||
<T> Object getObject(Class<T> tClass) {
|
||||
return o;
|
||||
}
|
||||
}
|
||||
|
||||
class Manager {
|
||||
|
||||
Project p1;
|
||||
|
||||
Manager(Project p1) {
|
||||
this.p1 = p1;
|
||||
}
|
||||
|
||||
static Manager getManager(Project project) {
|
||||
return (Manager) project.getObject(Manager.class);
|
||||
}
|
||||
|
||||
Project getProject() {
|
||||
return p1;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public class TestCompletion {
|
||||
|
||||
public void method() {
|
||||
Manager m = <caret>;
|
||||
Project p = m.getProject();
|
||||
}
|
||||
}
|
||||
+61
@@ -0,0 +1,61 @@
|
||||
public class TestIndex {
|
||||
|
||||
Manager manager = new Manager(new Project());
|
||||
|
||||
public void statMethod() {
|
||||
manager.getProject();
|
||||
manager.getProject();
|
||||
manager.getProject();
|
||||
manager.getProject();
|
||||
manager.getProject();
|
||||
manager.getProject();
|
||||
manager.getProject();
|
||||
}
|
||||
}
|
||||
|
||||
class TestIndex2 {
|
||||
|
||||
Project p2 = new Project();
|
||||
|
||||
public void statMethod() {
|
||||
Manager.getManager(p2);
|
||||
Manager.getManager(p2);
|
||||
Manager.getManager(p2);
|
||||
Manager.getManager(p2);
|
||||
Manager.getManager(p2);
|
||||
Manager.getManager(p2);
|
||||
Manager.getManager(p2);
|
||||
Manager.getManager(p2);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
class Project {
|
||||
Object o;
|
||||
|
||||
void setObject(Object o) {
|
||||
this.o = o;
|
||||
}
|
||||
|
||||
<T> Object getObject(Class<T> tClass) {
|
||||
return o;
|
||||
}
|
||||
}
|
||||
|
||||
class Manager {
|
||||
|
||||
Project p1;
|
||||
|
||||
Manager(Project p1) {
|
||||
this.p1 = p1;
|
||||
}
|
||||
|
||||
static Manager getManager(Project project) {
|
||||
return (Manager) project.getObject(Manager.class);
|
||||
}
|
||||
|
||||
Project getProject() {
|
||||
return p1;
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user