public void processFiles(@NotNull Processor<FileData> processor) { for (FileData fileData : myFilesData.values()) { if (!processor.process(fileData)) { return; } } }
public void processFile(@NotNull String filePath, @NotNull Processor<RangeData> processor) { FileData fileData = myFilesData.get(filePath); if (fileData != null) { for (RangeData rangeData : fileData.myRangesData.values()) { if (!processor.process(rangeData)) { return; } } } }
@Override public boolean dispatchKeyEvent(KeyEvent e) { final KeyStroke stroke; if (e.getID() == KeyEvent.KEY_RELEASED) { stroke = KeyStroke.getKeyStrokeForEvent(e); if (!StringHelper.isCloseKeyStroke(stroke) && stroke.getKeyCode() != KeyEvent.VK_ENTER) { return true; } } else if (e.getID() == KeyEvent.KEY_TYPED) { stroke = KeyStroke.getKeyStrokeForEvent(e); } else { return true; } if (!processor.process(stroke)) { KeyboardFocusManager.getCurrentKeyboardFocusManager().removeKeyEventDispatcher(this); loop.exit(); } return true; } });
public static void getPrevSiblingOnCallback(@Nullable PsiElement sibling, Processor<PsiElement> processor) { if (sibling == null) return; for (PsiElement child = sibling.getPrevSibling(); child != null; child = child.getPrevSibling()) { if (!processor.process(child)) { return; } } }
private void visitPhpDocTag(@NotNull PhpDocTag phpDocTag) { // "@var" and user non related tags dont need an action if(AnnotationBackportUtil.NON_ANNOTATION_TAGS.contains(phpDocTag.getName())) { return; } Map<String, String> fileImports = AnnotationBackportUtil.getUseImportMap(phpDocTag); if(fileImports.size() == 0) { return; } String annotationFqnName = AnnotationBackportUtil.getClassNameReference(phpDocTag, fileImports); for (String annotation : annotations) { if(annotation.equals(annotationFqnName)) { this.phpDocTagProcessor.process(phpDocTag); } } } }
/** * Process yaml key in second level filtered by a root: * File > roots -> "Item" * TODO: visitQualifiedKeyValuesInFile */ public static void processKeysAfterRoot(@NotNull PsiFile psiFile, @NotNull Processor<YAMLKeyValue> yamlKeyValueProcessor, @NotNull String... roots) { for (String root : roots) { YAMLKeyValue yamlKeyValue = YAMLUtil.getQualifiedKeyInFile((YAMLFile) psiFile, root); if(yamlKeyValue != null) { YAMLCompoundValue yaml = PsiTreeUtil.findChildOfType(yamlKeyValue, YAMLCompoundValue.class); if(yaml != null) { for(YAMLKeyValue yamlKeyValueVisit: PsiTreeUtil.getChildrenOfTypeAsList(yaml, YAMLKeyValue.class)) { yamlKeyValueProcessor.process(yamlKeyValueVisit); } } } } }
@Override public void processNames(@NotNull Processor<String> processor, @NotNull GlobalSearchScope scope, @Nullable IdFilter filter) { for(String name: getServiceCollector().getServices().keySet()) { processor.process(name); processor.process(templateName); processor.process(name); processor.process(entry.getKey()); String path = entry.getValue().getPath(); if(path != null) { processor.process(path); processor.process(name); processor.process(name); processor.process(command.getName()); for (Map<String, TwigExtension> extensionMap : Arrays.asList(twigExtensionParser.getFilters(), twigExtensionParser.getFunctions())) { for(String twigFilter: extensionMap.keySet()) { processor.process(twigFilter);
public static void visitType(@NotNull Project project, @NotNull Collection<String> typeInterfaces, @NotNull Processor<Pair<PhpClass, String>> processor) { for (String typeInterface : typeInterfaces) { for (PhpClass phpClass : PhpIndex.getInstance(project).getAllSubclasses(typeInterface)) { String name = PhpElementsUtil.getMethodReturnAsString(phpClass, "getName"); // non string value; // Doctrine resolves also on class name if(name == null) { String className = phpClass.getName(); if(className.endsWith("Type")) { name = className.substring(0, className.length() - 4).toLowerCase(); } } if(name == null) { continue; } processor.process(Pair.create(phpClass, name)); } } } }
@Override public void visitElement(PsiElement psiElement) { if (processor.process(psiElement)) { elements.add(psiElement); } if (psiElement instanceof MethodReference && ((MethodReference) psiElement).getReferenceType() == PhpModifier.State.PARENT && method.getName().equals(((MethodReference) psiElement).getName())) { PsiElement resolve = ((MethodReference) psiElement).resolve(); if (depth > 0 && resolve instanceof Method) { collectMethodElementsWithParents((Method) resolve, depth - 1, elements, processor); } } super.visitElement(psiElement); } });
PhpClass phpClass = PhpElementsUtil.getClassInterface(this.project, serviceClass); if(phpClass != null) { processor.process(new NavigationItemEx(phpClass, containerService.getName(), containerService.isWeak() ? Symfony2Icons.SERVICE_PRIVATE_OPACITY : Symfony2Icons.SERVICE, "Service")); processor.process(new NavigationItemEx(psiFile, name, psiFile.getFileType().getIcon(), "Template")); for (String controller : controllers) { for(PsiElement psiElement: RouteHelper.getMethodsOnControllerShortcut(this.project, controller)) { processor.process(new NavigationItemEx(psiElement, name, Symfony2Icons.ROUTE, "Route")); processor.process(new NavigationItemEx(macroTarget, name, TwigIcons.TwigFileIcon, "Macro")); processor.process(new NavigationItemEx(target, name, target.getIcon(0), "Entity")); processor.process(new NavigationItemEx(symfonyCommand.getPsiElement(), name, Symfony2Icons.SYMFONY, "Command")); PsiElement extensionTarget = TwigExtensionParser.getExtensionTarget(project, twigExtension); if(extensionTarget != null) { processor.process(new NavigationItemEx(extensionTarget, name, TwigExtensionParser.getIcon(twigExtension.getTwigExtensionType()), twigExtension.getTwigExtensionType().toString()));
@Nullable private GotoCompletionProvider createTranslationGotoCompletionWithLabelSwitch(@NotNull PsiElement origin, @NotNull ArrayCreationExpression choices, Processor<ArrayCreationExpression> processor) { PsiElement choicesArrayValue = choices.getParent(); if(choicesArrayValue.getNode().getElementType() == PhpElementTypes.ARRAY_VALUE) { PsiElement choicesValueHash = choicesArrayValue.getParent(); if(choicesValueHash instanceof ArrayHashElement) { PhpPsiElement transKey = ((ArrayHashElement) choicesValueHash).getKey(); String stringValue = PhpElementsUtil.getStringValue(transKey); if("choices".equals(stringValue)) { PsiElement choicesKey = transKey.getParent(); if(choicesKey.getNode().getElementType() == PhpElementTypes.ARRAY_KEY) { PsiElement formOptionsHash = choicesKey.getParent(); if(formOptionsHash instanceof ArrayHashElement) { PsiElement arrayCreation = formOptionsHash.getParent(); if(arrayCreation instanceof ArrayCreationExpression) { if(processor.process((ArrayCreationExpression) arrayCreation)) { return createTranslationGotoCompletion(origin, arrayCreation); } } } } } } } return null; }
public boolean processNamespaces(@NotNull Processor<PerlNamespaceDefinitionElement> processor) { for (PerlBuiltInNamespaceDefinition namespaceDefinition : myNamespacesMap.values()) { if (!processor.process(namespaceDefinition)) { return false; } } return true; }
protected boolean processMethodDefinitions(Processor<HTMLMasonMethodDefinition> processor) { for (HTMLMasonCompositeElement methodDefinition : getMethodsDefinitions()) { assert methodDefinition instanceof HTMLMasonMethodDefinition : "got " + methodDefinition + " instead of method definition"; if (!processor.process((HTMLMasonMethodDefinition)methodDefinition)) { return false; } } return true; }
public boolean processSubs(@NotNull Processor<PerlSubDefinitionElement> processor) { for (PerlBuiltInSubDefinition subDefinition : mySubsMap.values()) { ProgressManager.checkCanceled(); if (!processor.process(subDefinition)) { return false; } } return true; }
public static boolean processSupers(@Nullable PsiClass aClass, boolean includeSelf, @NotNull Processor<PsiClass> superProcessor) { if (aClass == null) return true; if (includeSelf && !superProcessor.process(aClass)) return false; return processSupers(aClass, superProcessor, new THashSet<PsiClass>()); }
public static boolean processSubDeclarations(@NotNull Project project, @NotNull String packageName, @NotNull GlobalSearchScope scope, @NotNull Processor<PerlSubDeclarationElement> processor) { return StubIndex.getInstance().processElements(KEY, packageName, project, scope, PerlSubDeclarationElement.class, element -> { ProgressManager.checkCanceled(); return processor.process(element); }); }
public static boolean processNamespaces(@NotNull Project project, @NotNull String packageName, @NotNull GlobalSearchScope scope, @NotNull Processor<PerlNamespaceDefinitionElement> processor) { return StubIndex.getInstance().processElements(KEY, packageName, project, scope, PerlNamespaceDefinitionElement.class, element -> { ProgressManager.checkCanceled(); return processor.process(element); }); } }
public static boolean processChildNamespaces(@NotNull Project project, @NotNull String parentPackageName, @NotNull GlobalSearchScope scope, @NotNull Processor<PerlNamespaceDefinitionElement> processor) { return StubIndex.getInstance() .processElements(KEY, parentPackageName, project, scope, PerlNamespaceDefinitionElement.class, element -> { ProgressManager.checkCanceled(); return processor.process(element); }); } }
public static boolean processSubDeclarationsInPackage(@NotNull Project project, @NotNull String packageName, @NotNull GlobalSearchScope scope, @NotNull Processor<PerlSubDeclarationElement> processor) { return StubIndex.getInstance().processElements(KEY, packageName, project, scope, PerlSubDeclarationElement.class, element -> { ProgressManager.checkCanceled(); return processor.process(element); }); } }
public static void processPackageFilesForPsiElement(@NotNull PsiElement element, @NotNull Processor<String> processor) { processIncFilesForPsiElement( element, (file, classRoot) -> { String relativePath = VfsUtil.getRelativePath(file, classRoot); String packageName = getPackageNameByPath(relativePath); return processor.process(packageName); }, PerlFileTypePackage.INSTANCE) ; }