Using signature propagation only if function is owned by class.
This commit is contained in:
+13
-7
@@ -142,15 +142,21 @@ public final class JavaFunctionResolver {
|
|||||||
|
|
||||||
final List<String> signatureErrors = Lists.newArrayList();
|
final List<String> signatureErrors = Lists.newArrayList();
|
||||||
|
|
||||||
SignaturesPropagationData signaturesPropagationData =
|
List<FunctionDescriptor> superFunctions;
|
||||||
new SignaturesPropagationData(returnType, valueParameterDescriptors, methodTypeParameters, method, trace);
|
if (ownerDescriptor instanceof ClassDescriptor) {
|
||||||
List<FunctionDescriptor> superFunctions = signaturesPropagationData.getSuperFunctions();
|
SignaturesPropagationData signaturesPropagationData =
|
||||||
|
new SignaturesPropagationData(returnType, valueParameterDescriptors, methodTypeParameters, method, trace);
|
||||||
|
superFunctions = signaturesPropagationData.getSuperFunctions();
|
||||||
|
|
||||||
returnType = signaturesPropagationData.getModifiedReturnType();
|
returnType = signaturesPropagationData.getModifiedReturnType();
|
||||||
valueParameterDescriptors = signaturesPropagationData.getModifiedValueParameters();
|
valueParameterDescriptors = signaturesPropagationData.getModifiedValueParameters();
|
||||||
methodTypeParameters = signaturesPropagationData.getModifiedTypeParameters();
|
methodTypeParameters = signaturesPropagationData.getModifiedTypeParameters();
|
||||||
|
|
||||||
signatureErrors.addAll(signaturesPropagationData.getSignatureErrors());
|
signatureErrors.addAll(signaturesPropagationData.getSignatureErrors());
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
superFunctions = Collections.emptyList();
|
||||||
|
}
|
||||||
|
|
||||||
// TODO consider better place for this check
|
// TODO consider better place for this check
|
||||||
AlternativeMethodSignatureData alternativeMethodSignatureData =
|
AlternativeMethodSignatureData alternativeMethodSignatureData =
|
||||||
|
|||||||
Reference in New Issue
Block a user