LocalVariableDescriptor.withAccessors renamed to isDelegated, added getter

This commit is contained in:
Mikhael Bogdanov
2016-05-05 13:48:15 +03:00
parent 0e071b4748
commit 6ae511b253
3 changed files with 12 additions and 8 deletions
@@ -1628,7 +1628,7 @@ public class ExpressionCodegen extends KtVisitor<StackValue, StackValue> impleme
}
private static boolean isDelegatedLocalVariable(@NotNull DeclarationDescriptor descriptor) {
return descriptor instanceof LocalVariableDescriptor && ((VariableDescriptorWithAccessors) descriptor).getGetter() != null;
return descriptor instanceof LocalVariableDescriptor && ((LocalVariableDescriptor) descriptor).isDelegated();
}
private static boolean isSharedVarType(@NotNull Type type) {
@@ -35,6 +35,7 @@ import org.jetbrains.kotlin.codegen.signature.BothSignatureWriter;
import org.jetbrains.kotlin.codegen.signature.JvmSignatureWriter;
import org.jetbrains.kotlin.descriptors.*;
import org.jetbrains.kotlin.descriptors.impl.LocalVariableAccessorDescriptor;
import org.jetbrains.kotlin.descriptors.impl.LocalVariableDescriptor;
import org.jetbrains.kotlin.fileClasses.FileClasses;
import org.jetbrains.kotlin.fileClasses.JvmFileClassInfo;
import org.jetbrains.kotlin.fileClasses.JvmFileClassUtil;
@@ -1369,9 +1370,8 @@ public class KotlinTypeMapper {
return StackValue.sharedTypeForType(mapType(receiverParameter.getType()));
}
if (descriptor instanceof VariableDescriptorWithAccessors) {
VariableDescriptorWithAccessors withAccessors = (VariableDescriptorWithAccessors) descriptor;
if (withAccessors.getGetter() != null || withAccessors.getSetter() != null) return null;
if (descriptor instanceof LocalVariableDescriptor && ((LocalVariableDescriptor) descriptor).isDelegated()) {
return null;
}
if (descriptor instanceof VariableDescriptor && isVarCapturedInClosure(bindingContext, descriptor)) {