IDEA-CR-13640 Suggest variable name based on type

This commit is contained in:
Tagir Valeev
2016-09-13 11:35:14 +07:00
parent 634f0a238d
commit 9540aeb8c2
2 changed files with 5 additions and 5 deletions
@@ -771,8 +771,8 @@ public class StreamApiMigrationInspection extends BaseJavaBatchLocalInspectionTo
simplifyAndFormat(project, result);
return;
}
intermediateOps
.add(createMapperFunctionalExpressionText(tb.getVariable(), methodCallExpression.getArgumentList().getExpressions()[0]));
PsiExpression itemToAdd = methodCallExpression.getArgumentList().getExpressions()[0];
intermediateOps.add(createMapperFunctionalExpressionText(tb.getVariable(), itemToAdd));
final StringBuilder builder = generateStream(iteratedValue, intermediateOps);
final PsiExpression qualifierExpression = methodCallExpression.getMethodExpression().getQualifierExpression();
@@ -790,8 +790,8 @@ public class StreamApiMigrationInspection extends BaseJavaBatchLocalInspectionTo
JavaCodeStyleManager codeStyleManager = JavaCodeStyleManager.getInstance(project);
final SuggestedNameInfo suggestedNameInfo = codeStyleManager
.suggestVariableName(VariableKind.LOCAL_VARIABLE, "item", null, null, false);
String varName = codeStyleManager.suggestUniqueVariableName(suggestedNameInfo, qualifierExpression, false).names[0];
.suggestVariableName(VariableKind.LOCAL_VARIABLE, null, null, itemToAdd.getType(), false);
String varName = codeStyleManager.suggestUniqueVariableName(suggestedNameInfo, methodCallExpression, false).names[0];
PsiExpression forEachBody =
elementFactory.createExpressionFromText(qualifierText + "add(" + varName + ")", qualifierExpression);
@@ -10,6 +10,6 @@ public class Collect {
Set<String> names = new HashSet<>();
void collectNames(List<Person> persons){
persons.stream().map(Person::getName).forEach(item -> names.add(item));
persons.stream().map(Person::getName).forEach(s -> names.add(s));
}
}