本文整理汇总了Java中com.intellij.ide.structureView.impl.AddAllMembersProcessor类的典型用法代码示例。如果您正苦于以下问题:Java AddAllMembersProcessor类的具体用法?Java AddAllMembersProcessor怎么用?Java AddAllMembersProcessor使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
AddAllMembersProcessor类属于com.intellij.ide.structureView.impl包,在下文中一共展示了AddAllMembersProcessor类的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: provideNodes
import com.intellij.ide.structureView.impl.AddAllMembersProcessor; //导入依赖的package包/类
@NotNull
@Override
public Collection<TreeElement> provideNodes(@NotNull TreeElement node) {
if (node instanceof JavaClassTreeElement) {
final PsiClass aClass = ((JavaClassTreeElement)node).getValue();
Collection<PsiElement> inherited = new LinkedHashSet<PsiElement>();
Collection<PsiElement> ownChildren = JavaClassTreeElement.getOwnChildren(aClass);
aClass.processDeclarations(new AddAllMembersProcessor(inherited, aClass), ResolveState.initial(), null, aClass);
inherited.removeAll(ownChildren);
if (aClass instanceof PsiAnonymousClass) {
final PsiElement element = ((PsiAnonymousClass)aClass).getBaseClassReference().resolve();
if (element instanceof PsiClass) {
ContainerUtil.addAll(inherited, ((PsiClass)element).getInnerClasses());
}
}
List<TreeElement> array = new ArrayList<TreeElement>();
for (PsiElement child : inherited) {
if (!child.isValid()) continue;
final Set<PsiClass> parents = ((JavaClassTreeElement)node).getParents();
if (child instanceof PsiClass && !parents.contains(child)) {
array.add(new JavaClassTreeElement((PsiClass)child, true, parents));
}
else if (child instanceof PsiField) {
array.add(new PsiFieldTreeElement((PsiField)child, true));
}
else if (child instanceof PsiMethod) {
array.add(new PsiMethodTreeElement((PsiMethod)child, true));
}
else if (child instanceof PsiClassInitializer) {
array.add(new ClassInitializerTreeElement((PsiClassInitializer)child));
}
}
return array;
}
return Collections.emptyList();
}
示例2: provideNodes
import com.intellij.ide.structureView.impl.AddAllMembersProcessor; //导入依赖的package包/类
@Override
public Collection<TreeElement> provideNodes(TreeElement node) {
if (node instanceof JavaClassTreeElement) {
final PsiClass aClass = ((JavaClassTreeElement)node).getValue();
Collection<PsiElement> inherited = new LinkedHashSet<PsiElement>();
Collection<PsiElement> ownChildren = JavaClassTreeElement.getOwnChildren(aClass);
aClass.processDeclarations(new AddAllMembersProcessor(inherited, aClass), ResolveState.initial(), null, aClass);
inherited.removeAll(ownChildren);
if (aClass instanceof PsiAnonymousClass) {
final PsiElement element = ((PsiAnonymousClass)aClass).getBaseClassReference().resolve();
if (element instanceof PsiClass) {
ContainerUtil.addAll(inherited, ((PsiClass)element).getInnerClasses());
}
}
List<TreeElement> array = new ArrayList<TreeElement>();
for (PsiElement child : inherited) {
if (!child.isValid()) continue;
final Set<PsiClass> parents = ((JavaClassTreeElement)node).getParents();
if (child instanceof PsiClass && !parents.contains(child)) {
array.add(new JavaClassTreeElement((PsiClass)child, true, parents));
}
else if (child instanceof PsiField) {
array.add(new PsiFieldTreeElement((PsiField)child, true));
}
else if (child instanceof PsiMethod) {
array.add(new PsiMethodTreeElement((PsiMethod)child, true));
}
else if (child instanceof PsiClassInitializer) {
array.add(new ClassInitializerTreeElement((PsiClassInitializer)child));
}
}
return array;
}
return Collections.emptyList();
}