Changed element parameter for EXPECTED_PARAMETERS_NUMBER_MISMATCH diagnostic
This commit is contained in:
@@ -614,8 +614,8 @@ public interface Errors {
|
||||
|
||||
DiagnosticFactory1<JetParameter, JetType> EXPECTED_PARAMETER_TYPE_MISMATCH = DiagnosticFactory1.create(ERROR);
|
||||
DiagnosticFactory1<JetTypeReference, JetType> EXPECTED_RETURN_TYPE_MISMATCH = DiagnosticFactory1.create(ERROR);
|
||||
DiagnosticFactory2<JetFunctionLiteral, Integer, List<JetType>> EXPECTED_PARAMETERS_NUMBER_MISMATCH =
|
||||
DiagnosticFactory2.create(ERROR, FUNCTION_LITERAL_PARAMETERS);
|
||||
DiagnosticFactory2<JetFunction, Integer, List<JetType>> EXPECTED_PARAMETERS_NUMBER_MISMATCH =
|
||||
DiagnosticFactory2.create(ERROR, FUNCTION_PARAMETERS);
|
||||
|
||||
DiagnosticFactory2<JetElement, JetType, JetType> INCOMPATIBLE_TYPES = DiagnosticFactory2.create(ERROR);
|
||||
|
||||
|
||||
@@ -342,13 +342,16 @@ public object PositioningStrategies {
|
||||
}
|
||||
}
|
||||
|
||||
public val FUNCTION_LITERAL_PARAMETERS: PositioningStrategy<JetFunctionLiteral> = object : PositioningStrategy<JetFunctionLiteral>() {
|
||||
override fun mark(element: JetFunctionLiteral): List<TextRange> {
|
||||
public val FUNCTION_PARAMETERS: PositioningStrategy<JetFunction> = object : PositioningStrategy<JetFunction>() {
|
||||
override fun mark(element: JetFunction): List<TextRange> {
|
||||
val valueParameterList = element.getValueParameterList()
|
||||
if (valueParameterList != null) {
|
||||
return markElement(valueParameterList)
|
||||
}
|
||||
return markNode(element.getLBrace().getNode())
|
||||
if (element is JetFunctionLiteral) {
|
||||
return markNode(element.getLBrace().getNode())
|
||||
}
|
||||
return DECLARATION_SIGNATURE_OR_DEFAULT.mark(element)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -165,15 +165,15 @@ public abstract class ChangeFunctionSignatureFix extends JetIntentionAction<PsiE
|
||||
return new JetSingleIntentionActionFactory() {
|
||||
@Override
|
||||
public ChangeFunctionSignatureFix createAction(Diagnostic diagnostic) {
|
||||
DiagnosticWithParameters2<JetFunctionLiteral, Integer, List<JetType>> diagnosticWithParameters =
|
||||
DiagnosticWithParameters2<JetFunction, Integer, List<JetType>> diagnosticWithParameters =
|
||||
EXPECTED_PARAMETERS_NUMBER_MISMATCH.cast(diagnostic);
|
||||
JetFunctionLiteral functionLiteral = diagnosticWithParameters.getPsiElement();
|
||||
JetFunction functionLiteral = diagnosticWithParameters.getPsiElement();
|
||||
BindingContext bindingContext =
|
||||
ResolvePackage.analyzeFully(functionLiteral.getContainingJetFile());
|
||||
DeclarationDescriptor descriptor = bindingContext.get(BindingContext.DECLARATION_TO_DESCRIPTOR, functionLiteral);
|
||||
|
||||
if (descriptor instanceof FunctionDescriptor) {
|
||||
return new ChangeFunctionLiteralSignatureFix(functionLiteral, (FunctionDescriptor) descriptor,
|
||||
if (descriptor instanceof FunctionDescriptor && functionLiteral instanceof JetFunctionLiteral) {
|
||||
return new ChangeFunctionLiteralSignatureFix((JetFunctionLiteral) functionLiteral, (FunctionDescriptor) descriptor,
|
||||
diagnosticWithParameters.getB());
|
||||
}
|
||||
else {
|
||||
|
||||
Reference in New Issue
Block a user