mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
IDEA-51798
This commit is contained in:
+2
-1
@@ -17,6 +17,7 @@ package com.intellij.codeInsight.completion;
|
||||
|
||||
import com.intellij.codeInsight.lookup.*;
|
||||
import com.intellij.openapi.editor.Editor;
|
||||
import com.intellij.psi.PsiElement;
|
||||
import com.intellij.psi.PsiType;
|
||||
import com.intellij.psi.codeStyle.CodeStyleSettings;
|
||||
import com.intellij.psi.codeStyle.CodeStyleSettingsManager;
|
||||
@@ -39,7 +40,7 @@ public class CastingLookupElementDecorator extends LookupElementDecorator<Lookup
|
||||
private CastingLookupElementDecorator(LookupElement delegate, PsiType castType) {
|
||||
super(delegate);
|
||||
myCastType = castType;
|
||||
myCastItem = PsiTypeLookupItem.createLookupItem(castType);
|
||||
myCastItem = PsiTypeLookupItem.createLookupItem(castType, (PsiElement)delegate.getObject());
|
||||
}
|
||||
|
||||
public PsiType getType() {
|
||||
|
||||
@@ -30,14 +30,13 @@ import com.intellij.openapi.editor.Document;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.util.*;
|
||||
import com.intellij.openapi.util.text.StringUtil;
|
||||
import static com.intellij.patterns.PlatformPatterns.psiElement;
|
||||
import com.intellij.patterns.PsiElementPattern;
|
||||
import com.intellij.patterns.PsiJavaPatterns;
|
||||
import com.intellij.psi.*;
|
||||
import com.intellij.psi.codeStyle.*;
|
||||
import com.intellij.psi.filters.ElementFilter;
|
||||
import com.intellij.psi.filters.AndFilter;
|
||||
import com.intellij.psi.filters.ClassFilter;
|
||||
import com.intellij.psi.filters.ElementFilter;
|
||||
import com.intellij.psi.filters.element.ExcludeDeclaredFilter;
|
||||
import com.intellij.psi.filters.element.ExcludeSillyAssignment;
|
||||
import com.intellij.psi.html.HtmlTag;
|
||||
@@ -46,9 +45,9 @@ import com.intellij.psi.infos.CandidateInfo;
|
||||
import com.intellij.psi.infos.ClassCandidateInfo;
|
||||
import com.intellij.psi.javadoc.PsiDocToken;
|
||||
import com.intellij.psi.scope.BaseScopeProcessor;
|
||||
import com.intellij.psi.scope.ElementClassFilter;
|
||||
import com.intellij.psi.scope.ElementClassHint;
|
||||
import com.intellij.psi.scope.NameHint;
|
||||
import com.intellij.psi.scope.ElementClassFilter;
|
||||
import com.intellij.psi.statistics.JavaStatisticsManager;
|
||||
import com.intellij.psi.tree.IElementType;
|
||||
import com.intellij.psi.util.*;
|
||||
@@ -65,6 +64,8 @@ import org.jetbrains.annotations.Nullable;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
import static com.intellij.patterns.PlatformPatterns.psiElement;
|
||||
|
||||
public class JavaCompletionUtil {
|
||||
private static final Logger LOG = Logger.getInstance("#com.intellij.codeInsight.completion.JavaCompletionUtil");
|
||||
public static final Key<PairFunction<PsiExpression, CompletionParameters, PsiType>> DYNAMIC_TYPE_EVALUATOR = Key.create("DYNAMIC_TYPE_EVALUATOR");
|
||||
@@ -909,7 +910,7 @@ public class JavaCompletionUtil {
|
||||
final PsiExpression newRef = JavaPsiFacade.getElementFactory(project).createExpressionFromText(newText, refExpr);
|
||||
((PsiReferenceExpression)newRef).processVariants(processor);
|
||||
|
||||
final LookupElement castItem = PsiTypeLookupItem.createLookupItem(castTo);
|
||||
final LookupElement castItem = PsiTypeLookupItem.createLookupItem(castTo, refExpr);
|
||||
|
||||
for (CompletionElement completionElement : processor.getResults()) {
|
||||
final LookupElement item = createLookupElement(completionElement, castTo);
|
||||
|
||||
+9
-8
@@ -23,10 +23,7 @@ import com.intellij.openapi.util.Condition;
|
||||
import com.intellij.openapi.util.Key;
|
||||
import com.intellij.openapi.util.Pair;
|
||||
import com.intellij.patterns.ElementPattern;
|
||||
import static com.intellij.patterns.PlatformPatterns.psiElement;
|
||||
import com.intellij.patterns.PsiJavaPatterns;
|
||||
import static com.intellij.patterns.PsiJavaPatterns.psiMethod;
|
||||
import static com.intellij.patterns.StandardPatterns.*;
|
||||
import com.intellij.psi.*;
|
||||
import com.intellij.psi.filters.ElementExtractorFilter;
|
||||
import com.intellij.psi.filters.ElementFilter;
|
||||
@@ -59,6 +56,10 @@ import org.jetbrains.annotations.Nullable;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
import static com.intellij.patterns.PlatformPatterns.psiElement;
|
||||
import static com.intellij.patterns.PsiJavaPatterns.psiMethod;
|
||||
import static com.intellij.patterns.StandardPatterns.*;
|
||||
|
||||
/**
|
||||
* @author peter
|
||||
*/
|
||||
@@ -277,7 +278,7 @@ public class JavaSmartCompletionContributor extends CompletionContributor {
|
||||
if (tryBlock == null) return;
|
||||
|
||||
for (final PsiClassType type : ExceptionUtil.getThrownExceptions(tryBlock.getStatements())) {
|
||||
result.addElement(TailTypeDecorator.withTail(PsiTypeLookupItem.createLookupItem(type).setInsertHandler(new DefaultInsertHandler()), TailType.SPACE));
|
||||
result.addElement(TailTypeDecorator.withTail(PsiTypeLookupItem.createLookupItem(type, tryBlock).setInsertHandler(new DefaultInsertHandler()), TailType.SPACE));
|
||||
}
|
||||
}
|
||||
});
|
||||
@@ -322,7 +323,7 @@ public class JavaSmartCompletionContributor extends CompletionContributor {
|
||||
.getSubstitutionForTypeParameter(targetParameter, paramSubstitution, argSubstitution, false,
|
||||
PsiUtil.getLanguageLevel(context));
|
||||
if (substitution != null && substitution != PsiType.NULL) {
|
||||
final LookupItem item = PsiTypeLookupItem.createLookupItem(substitution);
|
||||
final LookupItem item = PsiTypeLookupItem.createLookupItem(substitution, context);
|
||||
resultSet.addElement(TailTypeDecorator.withTail(item.setInsertHandler(new DefaultInsertHandler()), tail));
|
||||
}
|
||||
}
|
||||
@@ -378,7 +379,7 @@ public class JavaSmartCompletionContributor extends CompletionContributor {
|
||||
for (final PsiArrayType type : expectedArrayTypes) {
|
||||
ApplicationManager.getApplication().runReadAction(new Runnable() {
|
||||
public void run() {
|
||||
final LookupItem item = PsiTypeLookupItem.createLookupItem(JavaCompletionUtil.eliminateWildcards(type));
|
||||
final LookupItem item = PsiTypeLookupItem.createLookupItem(JavaCompletionUtil.eliminateWildcards(type), identifierCopy);
|
||||
item.setAttribute(LookupItem.DONT_CHECK_FOR_INNERS, "");
|
||||
if (item.getObject() instanceof PsiClass) {
|
||||
JavaCompletionUtil.setShowFQN(item);
|
||||
@@ -425,7 +426,7 @@ public class JavaSmartCompletionContributor extends CompletionContributor {
|
||||
substitutor = substitutor.put(typeParameter, wildcard);
|
||||
}
|
||||
final PsiElementFactory factory = JavaPsiFacade.getElementFactory(psiClass.getProject());
|
||||
return PsiTypeLookupItem.createLookupItem(factory.createType(psiClass, substitutor));
|
||||
return PsiTypeLookupItem.createLookupItem(factory.createType(psiClass, substitutor), psiClass);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -565,7 +566,7 @@ public class JavaSmartCompletionContributor extends CompletionContributor {
|
||||
return;
|
||||
}
|
||||
|
||||
final LookupItem item = PsiTypeLookupItem.createLookupItem(JavaCompletionUtil.eliminateWildcards(type));
|
||||
final LookupItem item = PsiTypeLookupItem.createLookupItem(JavaCompletionUtil.eliminateWildcards(type), parameters.getPosition());
|
||||
item.setAttribute(LookupItem.DONT_CHECK_FOR_INNERS, "");
|
||||
JavaCompletionUtil.setShowFQN(item);
|
||||
item.setAttribute(LookupItem.NEW_OBJECT_ATTR, "");
|
||||
|
||||
@@ -38,7 +38,7 @@ class SmartCastProvider extends CompletionProvider<CompletionParameters> {
|
||||
final boolean overwrite = INSIDE_TYPECAST_TYPE.accepts(parameters.getOriginalPosition());
|
||||
|
||||
final LookupElement item = AutoCompletionPolicy.ALWAYS_AUTOCOMPLETE.applyPolicy(new LookupElementDecorator<LookupItem>(
|
||||
PsiTypeLookupItem.createLookupItem(type.getDefaultType())) {
|
||||
PsiTypeLookupItem.createLookupItem(type.getDefaultType(), parameters.getPosition())) {
|
||||
|
||||
@Override
|
||||
public void handleInsert(InsertionContext context) {
|
||||
|
||||
+2
-2
@@ -57,7 +57,7 @@ class JavaWithCastSurrounder extends JavaExpressionSurrounder {
|
||||
|
||||
Set<LookupElement> itemSet = new LinkedHashSet<LookupElement>();
|
||||
for (PsiType type : suggestedTypes) {
|
||||
itemSet.add(PsiTypeLookupItem.createLookupItem(type));
|
||||
itemSet.add(PsiTypeLookupItem.createLookupItem(type, null));
|
||||
}
|
||||
final LookupElement[] lookupItems = itemSet.toArray(new LookupElement[itemSet.size()]);
|
||||
|
||||
@@ -87,4 +87,4 @@ class JavaWithCastSurrounder extends JavaExpressionSurrounder {
|
||||
public String getTemplateDescription() {
|
||||
return CodeInsightBundle.message("surround.with.cast.template");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -64,7 +64,7 @@ public class TypeExpression extends Expression {
|
||||
for (final SmartTypePointer item : myItems) {
|
||||
final PsiType type = item.getType();
|
||||
if (type != null) {
|
||||
result.add(PsiTypeLookupItem.createLookupItem(type));
|
||||
result.add(PsiTypeLookupItem.createLookupItem(type, null));
|
||||
}
|
||||
}
|
||||
return result.toArray(new LookupElement[result.size()]);
|
||||
|
||||
@@ -106,7 +106,7 @@ public class LookupItemUtil{
|
||||
return new ExpressionLookupItem((PsiExpression) object);
|
||||
}
|
||||
if (object instanceof PsiType) {
|
||||
return PsiTypeLookupItem.createLookupItem((PsiType)object);
|
||||
return PsiTypeLookupItem.createLookupItem((PsiType)object, null);
|
||||
}
|
||||
|
||||
String s = null;
|
||||
|
||||
@@ -15,9 +15,10 @@
|
||||
*/
|
||||
package com.intellij.codeInsight.lookup;
|
||||
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.NonNls;
|
||||
import com.intellij.psi.*;
|
||||
import org.jetbrains.annotations.NonNls;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
/**
|
||||
* @author peter
|
||||
@@ -40,11 +41,11 @@ public class PsiTypeLookupItem extends LookupItem {
|
||||
}
|
||||
|
||||
public int getBracketsCount() {
|
||||
final Integer integer = (Integer)getUserData(LookupItem.BRACKETS_COUNT_ATTR);
|
||||
final Integer integer = (Integer)getUserData(BRACKETS_COUNT_ATTR);
|
||||
return integer == null ? 0 : integer;
|
||||
}
|
||||
|
||||
public static LookupItem createLookupItem(PsiType type) {
|
||||
public static LookupItem createLookupItem(@NotNull PsiType type, @Nullable PsiElement context) {
|
||||
final PsiType original = type;
|
||||
int dim = 0;
|
||||
while (type instanceof PsiArrayType) {
|
||||
@@ -59,12 +60,30 @@ public class PsiTypeLookupItem extends LookupItem {
|
||||
final PsiSubstitutor substitutor = classResolveResult.getSubstitutor();
|
||||
final String text = type.getCanonicalText();
|
||||
String typeString = text;
|
||||
String typeParams = "";
|
||||
if (text.indexOf('<') > 0 && text.endsWith(">")) {
|
||||
typeString = text.substring(0, text.indexOf('<'));
|
||||
typeParams = text.substring(text.indexOf('<'));
|
||||
}
|
||||
String s = text.substring(typeString.lastIndexOf('.') + 1);
|
||||
item = psiClass != null ? new PsiTypeLookupItem(psiClass, s) : new PsiTypeLookupItem(text, s);
|
||||
item.setAttribute(LookupItem.SUBSTITUTOR, substitutor);
|
||||
|
||||
String lookupString = text.substring(typeString.lastIndexOf('.') + 1);
|
||||
if (psiClass != null) {
|
||||
PsiClass resolved =
|
||||
JavaPsiFacade.getInstance(psiClass.getProject()).getResolveHelper().resolveReferencedClass(psiClass.getName(), context);
|
||||
if (!psiClass.getManager().areElementsEquivalent(resolved, psiClass)) {
|
||||
// inner class name should be shown qualified if its not accessible by single name
|
||||
PsiClass aClass = psiClass;
|
||||
lookupString = "";
|
||||
while (aClass != null) {
|
||||
lookupString = aClass.getName() + (lookupString == "" ? "" : ".") + lookupString;
|
||||
aClass = aClass.getContainingClass();
|
||||
}
|
||||
lookupString += typeParams;
|
||||
}
|
||||
}
|
||||
|
||||
item = new PsiTypeLookupItem(psiClass == null ? text : psiClass, lookupString);
|
||||
item.setAttribute(SUBSTITUTOR, substitutor);
|
||||
}
|
||||
else {
|
||||
item = new LookupItem(type, type.getPresentableText());
|
||||
@@ -75,11 +94,11 @@ public class PsiTypeLookupItem extends LookupItem {
|
||||
for (int i = 0; i < dim; i++) {
|
||||
tail.append("[]");
|
||||
}
|
||||
item.setAttribute(LookupItem.TAIL_TEXT_ATTR, " " + tail.toString());
|
||||
item.setAttribute(LookupItem.TAIL_TEXT_SMALL_ATTR, "");
|
||||
item.putUserData(LookupItem.BRACKETS_COUNT_ATTR, dim);
|
||||
item.setAttribute(TAIL_TEXT_ATTR, " " + tail.toString());
|
||||
item.setAttribute(TAIL_TEXT_SMALL_ATTR, "");
|
||||
item.putUserData(BRACKETS_COUNT_ATTR, dim);
|
||||
}
|
||||
item.setAttribute(LookupItem.TYPE, original);
|
||||
item.setAttribute(TYPE, original);
|
||||
return item;
|
||||
}
|
||||
}
|
||||
|
||||
+8
-9
@@ -16,20 +16,19 @@
|
||||
package com.intellij.codeInsight.template.macro;
|
||||
|
||||
import com.intellij.codeInsight.CodeInsightBundle;
|
||||
import com.intellij.codeInsight.lookup.LookupItem;
|
||||
import com.intellij.codeInsight.lookup.LookupElement;
|
||||
import com.intellij.codeInsight.lookup.LookupItem;
|
||||
import com.intellij.codeInsight.template.*;
|
||||
import com.intellij.psi.PsiDocumentManager;
|
||||
import com.intellij.psi.PsiElement;
|
||||
import com.intellij.psi.PsiFile;
|
||||
import com.intellij.psi.PsiVariable;
|
||||
import com.intellij.util.ArrayUtil;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.LinkedList;
|
||||
|
||||
import com.intellij.util.ArrayUtil;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
public class SuggestVariableNameMacro implements Macro {
|
||||
|
||||
public String getName() {
|
||||
@@ -60,24 +59,24 @@ public class SuggestVariableNameMacro implements Macro {
|
||||
LookupItem[] items = new LookupItem[names.length];
|
||||
for(int i = 0; i < names.length; i++) {
|
||||
String name = names[i];
|
||||
items[i] = new LookupItem(name, name);
|
||||
items[i] = LookupItem.fromString(name);
|
||||
}
|
||||
return items;
|
||||
}
|
||||
|
||||
private String[] getNames (final ExpressionContext context) {
|
||||
private static String[] getNames (final ExpressionContext context) {
|
||||
String[] names = ExpressionUtil.getNames(context);
|
||||
if (names == null || names.length == 0) return names;
|
||||
PsiFile file = PsiDocumentManager.getInstance(context.getProject()).getPsiFile(context.getEditor().getDocument());
|
||||
PsiElement e = file.findElementAt(context.getStartOffset());
|
||||
PsiVariable[] vars = MacroUtil.getVariablesVisibleAt(e, "");
|
||||
LinkedList namesList = new LinkedList(Arrays.asList(names));
|
||||
LinkedList<String> namesList = new LinkedList<String>(Arrays.asList(names));
|
||||
for (PsiVariable var : vars) {
|
||||
if (e.equals(var.getNameIdentifier())) continue;
|
||||
namesList.remove(var.getName());
|
||||
}
|
||||
|
||||
if (namesList.size() == 0) {
|
||||
if (namesList.isEmpty()) {
|
||||
String name = names[0];
|
||||
index:
|
||||
for (int j = 1; ; j++) {
|
||||
@@ -89,7 +88,7 @@ public class SuggestVariableNameMacro implements Macro {
|
||||
}
|
||||
}
|
||||
|
||||
return (String[])ArrayUtil.toStringArray(namesList);
|
||||
return ArrayUtil.toStringArray(namesList);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
+3
-2
@@ -11,6 +11,7 @@ import com.intellij.codeInsight.lookup.impl.LookupImpl;
|
||||
import com.intellij.openapi.projectRoots.Sdk;
|
||||
import com.intellij.openapi.projectRoots.impl.JavaSdkImpl;
|
||||
import com.intellij.testFramework.TestDataPath;
|
||||
import org.jetbrains.annotations.NonNls;
|
||||
|
||||
import javax.swing.*;
|
||||
import java.util.ArrayList;
|
||||
@@ -45,12 +46,12 @@ public abstract class CompletionSortingTestCase extends LightCompletionTestCase
|
||||
|
||||
protected abstract String getBasePath();
|
||||
|
||||
protected void checkPreferredItems(final int selected, final String... expected) throws Exception {
|
||||
protected void checkPreferredItems(final int selected, @NonNls final String... expected) throws Exception {
|
||||
invokeCompletion(getBasePath() + "/" + getTestName(false) + ".java");
|
||||
assertPreferredItems(selected, expected);
|
||||
}
|
||||
|
||||
protected static void assertPreferredItems(final int selected, final String... expected) {
|
||||
protected static void assertPreferredItems(final int selected, @NonNls final String... expected) {
|
||||
final LookupImpl lookup = getLookup();
|
||||
final JList list = lookup.getList();
|
||||
final List<LookupElement> model = lookup.getItems();
|
||||
|
||||
+1
-8
@@ -5,13 +5,10 @@
|
||||
package com.intellij.codeInsight.completion;
|
||||
|
||||
import com.intellij.codeInsight.lookup.impl.LookupImpl;
|
||||
import com.intellij.openapi.projectRoots.Sdk;
|
||||
import com.intellij.openapi.projectRoots.impl.JavaSdkImpl;
|
||||
import com.intellij.psi.statistics.StatisticsManager;
|
||||
|
||||
@SuppressWarnings({"ALL"})
|
||||
public class SmartTypeCompletionOrderingTest extends CompletionSortingTestCase {
|
||||
private static final String BASE_PATH = "/codeInsight/completion/smartTypeSorting";
|
||||
private static final String BASE_PATH = "/codeInsight/completion/smartTypeSorting";
|
||||
|
||||
public SmartTypeCompletionOrderingTest() {
|
||||
super(CompletionType.SMART);
|
||||
@@ -236,8 +233,4 @@ public class SmartTypeCompletionOrderingTest extends CompletionSortingTestCase {
|
||||
protected String getBasePath() {
|
||||
return BASE_PATH;
|
||||
}
|
||||
|
||||
protected Sdk getTestProjectJdk() {
|
||||
return JavaSdkImpl.getMockJdk15("java 1.5");
|
||||
}
|
||||
}
|
||||
|
||||
@@ -65,7 +65,7 @@ public class LookupImpl extends LightweightHint implements Lookup, Disposable {
|
||||
private static final Logger LOG = Logger.getInstance("#com.intellij.codeInsight.lookup.impl.LookupImpl");
|
||||
private static final int MAX_PREFERRED_COUNT = 5;
|
||||
|
||||
private static final LookupItem EMPTY_LOOKUP_ITEM = new LookupItem("preselect", "preselect");
|
||||
private static final LookupItem EMPTY_LOOKUP_ITEM = LookupItem.fromString("preselect");
|
||||
|
||||
private final Project myProject;
|
||||
private final Editor myEditor;
|
||||
@@ -928,7 +928,7 @@ public class LookupImpl extends LightweightHint implements Lookup, Disposable {
|
||||
Dimension preferredSize = getComponent().getPreferredSize();
|
||||
setBounds(point.x,point.y,preferredSize.width,preferredSize.height);
|
||||
|
||||
HintManagerImpl.getInstanceImpl().adjustEditorHintPosition(this, myEditor, point);
|
||||
HintManagerImpl.adjustEditorHintPosition(this, myEditor, point);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -305,7 +305,7 @@ public abstract class PlatformTestCase extends UsefulTestCase implements DataPro
|
||||
if (IdeaLogger.ourErrorsOccurred != null) {
|
||||
throw IdeaLogger.ourErrorsOccurred;
|
||||
}
|
||||
assertTrue("Logger errors occurred in " + getFullName(), IdeaLogger.ourErrorsOccurred == null);
|
||||
assertNull("Logger errors occurred in " + getFullName(), IdeaLogger.ourErrorsOccurred);
|
||||
}
|
||||
}
|
||||
finally {
|
||||
@@ -623,8 +623,8 @@ public abstract class PlatformTestCase extends UsefulTestCase implements DataPro
|
||||
|
||||
private static void setTmpDir(String path) {
|
||||
System.setProperty("java.io.tmpdir", path);
|
||||
Class<File> ioFile = File.class;
|
||||
try {
|
||||
Class<File> ioFile = File.class;
|
||||
Field field = ioFile.getDeclaredField("tmpdir");
|
||||
|
||||
field.setAccessible(true);
|
||||
|
||||
+3
-3
@@ -53,9 +53,9 @@ public class ChooseTypeExpression extends Expression {
|
||||
|
||||
for (TypeConstraint constraint : constraints) {
|
||||
if (constraint instanceof TypeEquals) {
|
||||
result.add(PsiTypeLookupItem.createLookupItem(constraint.getType()));
|
||||
result.add(PsiTypeLookupItem.createLookupItem(constraint.getType(), null));
|
||||
} else if (constraint instanceof SubtypeConstraint) {
|
||||
result.add(PsiTypeLookupItem.createLookupItem(constraint.getDefaultType()));
|
||||
result.add(PsiTypeLookupItem.createLookupItem(constraint.getDefaultType(), null));
|
||||
} else if (constraint instanceof SupertypeConstraint) {
|
||||
processSupertypes(constraint.getType(), result);
|
||||
}
|
||||
@@ -72,7 +72,7 @@ public class ChooseTypeExpression extends Expression {
|
||||
if (unboxed != null && !unboxed.equals(text)) {
|
||||
result.add(LookupElementBuilder.create(unboxed).setBold());
|
||||
} else {
|
||||
result.add(PsiTypeLookupItem.createLookupItem(type));
|
||||
result.add(PsiTypeLookupItem.createLookupItem(type, null));
|
||||
}
|
||||
PsiType[] superTypes = type.getSuperTypes();
|
||||
for (PsiType superType : superTypes) {
|
||||
|
||||
Reference in New Issue
Block a user