From 08c503273436a00634743eb50ea00666d08f6eb9 Mon Sep 17 00:00:00 2001 From: Alex Tkachman Date: Thu, 23 Aug 2012 18:03:36 +0300 Subject: [PATCH] nullability tweaks --- .../src/org/jetbrains/jet/codegen/ExpressionCodegen.java | 7 ++++--- .../src/org/jetbrains/jet/codegen/FunctionCodegen.java | 7 +++---- .../src/org/jetbrains/jet/codegen/JetTypeMapper.java | 6 ++---- 3 files changed, 9 insertions(+), 11 deletions(-) diff --git a/compiler/backend/src/org/jetbrains/jet/codegen/ExpressionCodegen.java b/compiler/backend/src/org/jetbrains/jet/codegen/ExpressionCodegen.java index 1c8106f9051..a397670d869 100644 --- a/compiler/backend/src/org/jetbrains/jet/codegen/ExpressionCodegen.java +++ b/compiler/backend/src/org/jetbrains/jet/codegen/ExpressionCodegen.java @@ -1378,9 +1378,10 @@ public class ExpressionCodegen extends JetVisitor { } } //noinspection ConstantConditions - if (isInsideClass && - (propertyDescriptor.getSetter() == null || - propertyDescriptor.getSetter().isDefault() && propertyDescriptor.getSetter().getModality() == Modality.FINAL)) { + if (!propertyDescriptor.isVar() || isInsideClass && + (propertyDescriptor.getSetter() == null || + propertyDescriptor.getSetter().isDefault() && + propertyDescriptor.getSetter().getModality() == Modality.FINAL)) { setter = null; } else { diff --git a/compiler/backend/src/org/jetbrains/jet/codegen/FunctionCodegen.java b/compiler/backend/src/org/jetbrains/jet/codegen/FunctionCodegen.java index f6c1e85d8f2..1fdc8f703b4 100644 --- a/compiler/backend/src/org/jetbrains/jet/codegen/FunctionCodegen.java +++ b/compiler/backend/src/org/jetbrains/jet/codegen/FunctionCodegen.java @@ -18,6 +18,7 @@ package org.jetbrains.jet.codegen; import com.intellij.openapi.progress.ProcessCanceledException; import com.intellij.psi.PsiElement; +import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import org.jetbrains.asm4.Label; import org.jetbrains.asm4.MethodVisitor; @@ -420,7 +421,7 @@ public class FunctionCodegen { GenerationState state, ClassBuilder v, Method jvmSignature, - @Nullable FunctionDescriptor functionDescriptor, + @NotNull FunctionDescriptor functionDescriptor, OwnerKind kind ) { DeclarationDescriptor contextClass = owner.getContextDescriptor().getContainingDeclaration(); @@ -431,9 +432,7 @@ public class FunctionCodegen { return; } - boolean needed = isDefaultNeeded(functionDescriptor); - - if (!needed) { + if (!isDefaultNeeded(functionDescriptor)) { return; } diff --git a/compiler/backend/src/org/jetbrains/jet/codegen/JetTypeMapper.java b/compiler/backend/src/org/jetbrains/jet/codegen/JetTypeMapper.java index 776ea0a5817..ddaa7cc58f5 100644 --- a/compiler/backend/src/org/jetbrains/jet/codegen/JetTypeMapper.java +++ b/compiler/backend/src/org/jetbrains/jet/codegen/JetTypeMapper.java @@ -908,11 +908,9 @@ public class JetTypeMapper { return new JvmPropertyAccessorSignature(jvmMethodSignature, jvmMethodSignature.getKotlinReturnType()); } - @Nullable + @NotNull public JvmPropertyAccessorSignature mapSetterSignature(PropertyDescriptor descriptor, OwnerKind kind) { - if (!descriptor.isVar()) { - return null; - } + assert descriptor.isVar(); // TODO: generics signature is not always needed BothSignatureWriter signatureWriter = new BothSignatureWriter(BothSignatureWriter.Mode.METHOD, true);