下面列出了com.intellij.psi.PsiClass#EMPTY_ARRAY 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。
@Override
public PsiClass[] findClasses(String qualifiedName, GlobalSearchScope scope) {
final PsiClass component = findClassInternal(qualifiedName, scope, project);
if (component == null) {
return PsiClass.EMPTY_ARRAY;
}
return new PsiClass[] {component};
}
@Override
public PsiClass[] getClasses(PsiPackage psiPackage, GlobalSearchScope scope) {
if (!scope.contains(dummyFile)) return PsiClass.EMPTY_ARRAY;
// We don't create own package, but provide additional classes to existing one
final String packageQN = psiPackage.getQualifiedName();
return Arrays.stream(ComponentsCacheService.getInstance(project).getAllComponents())
.filter(cls -> StringUtil.getPackageName(cls.getQualifiedName()).equals(packageQN))
.toArray(PsiClass[]::new);
}
@Override
public PsiClass[] getClassesByName(String name, GlobalSearchScope scope) {
if (!scope.contains(dummyFile)) return PsiClass.EMPTY_ARRAY;
return Arrays.stream(ComponentsCacheService.getInstance(project).getAllComponents())
.filter(
cls -> {
final String shortName = StringUtil.getShortName(cls.getQualifiedName());
return shortName.equals(name);
})
.toArray(PsiClass[]::new);
}
public static PsiClass[] findClasses(Project project, String qualifiedName) {
final PsiClass found = findClass(project, qualifiedName);
if (found == null) {
return PsiClass.EMPTY_ARRAY;
}
return new PsiClass[] {found};
}
protected static PsiClass[] getSuperTypesAsArray(PsiClass theClass) {
if (!theClass.isValid()) return PsiClass.EMPTY_ARRAY;
final ArrayList<PsiClass> allSuperClasses = getSuperTypesAsList(theClass);
return allSuperClasses.toArray(new PsiClass[allSuperClasses.size()]);
}
@NotNull
@Override
public PsiClass[] findClasses(@NotNull String qualifiedName, @NotNull GlobalSearchScope scope) {
return PsiClass.EMPTY_ARRAY;
}