Condition<String> (PsiElement element) { List<Pair<RenameInputValidator, ProcessingContext>> validators = new ArrayList<>(); for (RenameInputValidator validator : RenameInputValidator.EP_NAME.getExtensionList()) { ProcessingContext context = new ProcessingContext(); if (validator.getPattern().accepts(element, context)) { validators.add(pair(validator, context)); } } return validators.isEmpty() ? null : newName -> ContainerUtil.and(validators, p -> p.first.isInputValid(newName, element, p.second)); }