boolean (@NotNull String pattern, Predicate<? super MatchedValue> consumer) { MinusculeMatcher matcher = buildWeightMatcher(pattern); List<String> actionIds = AbbreviationManager.getInstance().findActions(pattern); Stream<? extends MatchedValue> wrappers = actionIds.stream() .map(actionId -> { AnAction action = myActionManager.getAction(actionId); if (action == null) { return null; } ActionWrapper wrapper = wrapAnAction(action); int degree = matcher.matchingDegree(pattern); return new MatchedValue(wrapper, pattern, degree, MatchedValueType.ABBREVIATION) { @NotNull @Override public String getValueText() { return pattern; } }; }) .filter(Objects::nonNull); return processItems(pattern, MatchedValueType.ABBREVIATION, wrappers, consumer); }