Adding parameter types for functions if necessary.

#KT-2637 in progress
This commit is contained in:
Evgeny Gerashchenko
2013-07-19 18:03:07 +04:00
parent 2cfe11cb6b
commit 5aa4672d32
18 changed files with 217 additions and 1 deletions
@@ -112,6 +112,14 @@ public class JetPsiFactory {
return semicolon;
}
//the pair contains the first and the last elements of a range
@NotNull
public static Pair<PsiElement, PsiElement> createWhitespaceAndArrow(Project project) {
JetFunctionType functionType = (JetFunctionType) createType(project, "() -> Int").getTypeElement();
assert functionType != null;
return Pair.create(functionType.findElementAt(2), functionType.findElementAt(3));
}
public static PsiElement createWhiteSpace(Project project) {
return createWhiteSpace(project, " ");
}
@@ -49,6 +49,10 @@ public class ErrorUtils {
if (containsErrorType(function.getReturnType())) {
return true;
}
ReceiverParameterDescriptor receiverParameter = function.getReceiverParameter();
if (receiverParameter != null && containsErrorType(receiverParameter.getType())) {
return true;
}
for (ValueParameterDescriptor parameter : function.getValueParameters()) {
if (containsErrorType(parameter.getType())) {
return true;