StreamToLoop: support functions in parentheses

This commit is contained in:
Tagir Valeev
2018-07-05 14:58:32 +07:00
parent f5978b196a
commit 2217968c28
2 changed files with 3 additions and 1 deletions

View File

@@ -11,6 +11,7 @@ import com.intellij.psi.codeStyle.VariableKind;
import com.intellij.psi.search.LocalSearchScope;
import com.intellij.psi.search.searches.ReferencesSearch;
import com.intellij.psi.util.PsiTreeUtil;
import com.intellij.psi.util.PsiUtil;
import com.intellij.refactoring.util.LambdaRefactoringUtil;
import com.intellij.util.ArrayUtil;
import com.siyeh.ig.psiutils.EquivalenceChecker;
@@ -133,6 +134,7 @@ abstract class FunctionHelper {
@Contract("null, _, _ -> null")
@Nullable
static FunctionHelper create(PsiExpression expression, int paramCount, boolean allowReturns) {
expression = PsiUtil.skipParenthesizedExprDown(expression);
if(expression == null) return null;
PsiType type = FunctionalExpressionUtils.getFunctionalExpressionType(expression);
if(!(type instanceof PsiClassType)) return null;

View File

@@ -5,7 +5,7 @@ import java.util.stream.Collectors;
public class Main {
private static void getMap(List<String> strings) {
System.out.println(strings.stream().co<caret>llect(Collectors.mapping(String::length, Collectors.mapping(len -> len*2, Collectors.toList()))));
System.out.println(strings.stream().co<caret>llect(Collectors.mapping((String::length), Collectors.mapping(((len -> len*2)), Collectors.toList()))));
}
public static void main(String[] args) {