@NotNull public static List<PsiElement> getOccurrences(@NotNull PsiElement pattern, @Nullable PsiElement context) { if (context == null) return Collections.emptyList(); List<PsiElement> occurrences = ContainerUtil.newArrayList(); PsiRecursiveElementVisitor visitor = new PsiRecursiveElementVisitor() { @Override public void visitElement(@NotNull PsiElement element) { if (PsiEquivalenceUtil.areElementsEquivalent(element, pattern)) { occurrences.add(element); return; } super.visitElement(element); } }; context.acceptChildren(visitor); return occurrences; }
public static Set<Variable> visit(@NotNull PsiElement scope, @NotNull String name) { MyVariableRecursiveElementVisitor visitor = new MyVariableRecursiveElementVisitor(name); scope.acceptChildren(visitor); return visitor.variables; } }
@NotNull private List<PsiElement> collectPsiElementsRecursive(@NotNull PsiElement psiElement) { final List<PsiElement> elements = new ArrayList<PsiElement>(); elements.add(psiElement.getContainingFile()); psiElement.acceptChildren(new PsiRecursiveElementVisitor() { @Override public void visitElement(PsiElement element) { elements.add(element); super.visitElement(element); } }); return elements; }
psiElement.acceptChildren(new PsiRecursiveElementVisitor() { @Override public void visitElement(PsiElement element) { psiElement.acceptChildren(new PsiRecursiveElementVisitor() { @Override public void visitElement(PsiElement element) {
searchScope.acceptChildren(new PsiRecursiveElementVisitor() { @Override public void visitElement(PsiElement element) {
private PsiElement createPsiElementAndFindString(@NotNull String content, @NotNull IElementType type) { PsiElement psiElement = TwigElementFactory.createPsiElement(getProject(), content, type); if(psiElement == null) { fail(); } final PsiElement[] string = {null}; psiElement.acceptChildren(new PsiRecursiveElementVisitor() { @Override public void visitElement(PsiElement element) { if (string[0] == null && element.getNode().getElementType() == TwigTokenTypes.STRING_TEXT) { string[0] = element; } super.visitElement(element); } }); return string[0]; }
@Override public void visitElement(PsiElement element) { element.acceptChildren(this); } }
@Override public void visitElement(PsiElement element) { element.acceptChildren(this); } }
public void visitElement(PsiElement element) { if (isBrowsableElement(element)) { childrenElements.add((BashPsiElement) element); } else { element.acceptChildren(this); } } });
psiElement.acceptChildren(new PsiRecursiveElementWalkingVisitor() { @Override public void visitElement(PsiElement element) {
@Override public void visitElement(@NotNull PsiElement element) { element.acceptChildren(this); } }
@Override public void visitElement(@NotNull PsiElement element) { element.acceptChildren(this); } }
@Override public void visitElement(@NotNull PsiElement element) { element.acceptChildren(this); } }
@Override public void visitElement(final PsiElement element) { ProgressIndicatorProvider.checkCanceled(); element.acceptChildren(this); }
private Pair<List<ProblemDescriptor>, Integer> getLocalInspectionsAtCaret(@NotNull String filename, @NotNull String content) { PsiElement psiFile = myFixture.configureByText(filename, content); int caretOffset = myFixture.getCaretOffset(); if(caretOffset <= 0) { fail("Please provide <caret> tag"); } ProblemsHolder problemsHolder = new ProblemsHolder(InspectionManager.getInstance(getProject()), psiFile.getContainingFile(), false); for (LocalInspectionEP localInspectionEP : LocalInspectionEP.LOCAL_INSPECTION.getExtensions()) { Object object = localInspectionEP.getInstance(); if(!(object instanceof LocalInspectionTool)) { continue; } final PsiElementVisitor psiElementVisitor = ((LocalInspectionTool) object).buildVisitor(problemsHolder, false); psiFile.acceptChildren(new PsiRecursiveElementVisitor() { @Override public void visitElement(PsiElement element) { psiElementVisitor.visitElement(element); super.visitElement(element); } }); psiElementVisitor.visitFile(psiFile.getContainingFile());; } return Pair.create(problemsHolder.getResults(), caretOffset); }
@NotNull public static List<PsiTypeCastExpression> getRedundantCastsInside(PsiElement where) { MyCollectingVisitor visitor = new MyCollectingVisitor(); if (where instanceof PsiEnumConstant) { where.accept(visitor); } else { where.acceptChildren(visitor); } return new ArrayList<PsiTypeCastExpression>(visitor.myFoundCasts); }
@Override public void visitElement(PsiElement element) { ProgressIndicatorProvider.checkCanceled(); if (element == null) { return; } if (element instanceof PsiMethod) { lineMarkersHolder.updateMethodMarker((PsiMethod) element, markupModel); return; } element.acceptChildren(this); } }
@Override public void visitElement(PsiElement element) { Collections.addAll(references, element.getReferences()); element.acceptChildren(this); } });
@Override public void visitElement(@NotNull PsiElement element) { IElementType elementType = PsiUtilCore.getElementType(element); if (PerlTokenSets.HEREDOC_ENDS.contains(elementType) && !myOpenersQueue.isEmpty()) { myOpenersQueue.pullFirst(); } else if (element instanceof LeafPsiElement) { return; } element.acceptChildren(this); startNodeSmart(element); } }
@Override public void visitElement(PsiElement element) { IElementType elementType = PsiUtilCore.getElementType(element); if (TERMINAL_TOKENS.contains(elementType)) { Integer count = tokensMap.get(elementType); tokensMap.put(elementType, count == null ? 1 : count + 1); totalTokens[0]++; } element.acceptChildren(this); super.visitElement(element); } });