FoldingBuilder (@NotNull Language l) { List<FoldingBuilder> extensions = allForLanguage(l); if (extensions.isEmpty()) { return null; } else if (extensions.size() == 1) { return extensions.get(0); } else { return new CompositeFoldingBuilder(extensions); } }