Rollback some changes in MutableClosure

This commit is contained in:
Michael Bogdanov
2014-10-07 18:30:47 +04:00
parent 759e42188b
commit f8052817a8
@@ -85,7 +85,9 @@ public final class MutableClosure implements CalculatedClosure {
@Override @Override
public JetType getCaptureReceiverType() { public JetType getCaptureReceiverType() {
if (captureReceiver) { if (captureReceiver) {
return getEnclosingReceiverDescriptor().getType(); ReceiverParameterDescriptor parameter = getEnclosingReceiverDescriptor();
assert parameter != null : "Receiver parameter should exist in " + enclosingFunWithReceiverDescriptor;
return parameter.getType();
} }
return null; return null;
@@ -124,10 +126,8 @@ public final class MutableClosure implements CalculatedClosure {
captureVariables.put(value.getDescriptor(), value); captureVariables.put(value.getDescriptor(), value);
} }
@NotNull @Nullable
public ReceiverParameterDescriptor getEnclosingReceiverDescriptor() { public ReceiverParameterDescriptor getEnclosingReceiverDescriptor() {
ReceiverParameterDescriptor parameter = enclosingFunWithReceiverDescriptor.getExtensionReceiverParameter(); return enclosingFunWithReceiverDescriptor != null ? enclosingFunWithReceiverDescriptor.getExtensionReceiverParameter() : null;
assert parameter != null : "Receiver parameter should exist in " + enclosingFunWithReceiverDescriptor;
return parameter;
} }
} }