diff --git a/compiler/backend/src/org/jetbrains/jet/codegen/ExpressionCodegen.java b/compiler/backend/src/org/jetbrains/jet/codegen/ExpressionCodegen.java index a787de7323a..b29eea959cc 100644 --- a/compiler/backend/src/org/jetbrains/jet/codegen/ExpressionCodegen.java +++ b/compiler/backend/src/org/jetbrains/jet/codegen/ExpressionCodegen.java @@ -1147,7 +1147,7 @@ public class ExpressionCodegen extends JetVisitor implem } else { Type type = expressionType(expression); - Type targetType = type.equals(JET_TUPLE0_TYPE) ? type : OBJECT_TYPE; + Type targetType = type.equals(JET_UNIT_TYPE) ? type : OBJECT_TYPE; gen(expression, targetType); @@ -1156,7 +1156,7 @@ public class ExpressionCodegen extends JetVisitor implem markLineNumber(ifExpression); v.mark(elseLabel); - StackValue.putTuple0Instance(v); + StackValue.putUnitInstance(v); v.mark(end); return StackValue.onStack(targetType); diff --git a/compiler/backend/src/org/jetbrains/jet/codegen/StackValue.java b/compiler/backend/src/org/jetbrains/jet/codegen/StackValue.java index aa3fc92b067..0b39e9e4ff9 100644 --- a/compiler/backend/src/org/jetbrains/jet/codegen/StackValue.java +++ b/compiler/backend/src/org/jetbrains/jet/codegen/StackValue.java @@ -29,6 +29,7 @@ import org.jetbrains.jet.codegen.state.JetTypeMapper; import org.jetbrains.jet.lang.descriptors.*; import org.jetbrains.jet.lang.psi.JetExpression; import org.jetbrains.jet.lang.resolve.calls.model.ResolvedCall; +import org.jetbrains.jet.lang.resolve.java.AsmTypeConstants; import org.jetbrains.jet.lang.resolve.java.JvmClassName; import org.jetbrains.jet.lang.resolve.java.JvmPrimitiveType; import org.jetbrains.jet.lang.resolve.scopes.receivers.ReceiverValue; @@ -235,15 +236,15 @@ public abstract class StackValue { } else if (fromType.getSort() == Type.VOID) { if (toType.getSort() == Type.OBJECT) { - putTuple0Instance(v); + putUnitInstance(v); } else { pushDefaultPrimitiveValueOnStack(toType, v); } } - else if (toType.equals(JET_TUPLE0_TYPE)) { + else if (toType.equals(JET_UNIT_TYPE)) { pop(fromType, v); - putTuple0Instance(v); + putUnitInstance(v); } else if (toType.getSort() == Type.ARRAY) { v.checkcast(toType); @@ -275,8 +276,8 @@ public abstract class StackValue { } } - public static void putTuple0Instance(InstructionAdapter v) { - v.visitFieldInsn(GETSTATIC, "jet/Tuple0", "VALUE", "Ljet/Tuple0;"); + public static void putUnitInstance(InstructionAdapter v) { + v.visitFieldInsn(GETSTATIC, AsmTypeConstants.JET_UNIT_TYPE.getInternalName(), "VALUE", AsmTypeConstants.JET_UNIT_TYPE.getDescriptor()); } protected void putAsBoolean(InstructionAdapter v) { diff --git a/compiler/backend/src/org/jetbrains/jet/codegen/intrinsics/UnitValue.java b/compiler/backend/src/org/jetbrains/jet/codegen/intrinsics/UnitValue.java index 473f923326d..ad3394f0268 100644 --- a/compiler/backend/src/org/jetbrains/jet/codegen/intrinsics/UnitValue.java +++ b/compiler/backend/src/org/jetbrains/jet/codegen/intrinsics/UnitValue.java @@ -28,7 +28,7 @@ import org.jetbrains.jet.lang.psi.JetExpression; import java.util.List; -import static org.jetbrains.jet.lang.resolve.java.AsmTypeConstants.JET_TUPLE0_TYPE; +import static org.jetbrains.jet.lang.resolve.java.AsmTypeConstants.JET_UNIT_TYPE; public class UnitValue implements IntrinsicMethod { @@ -42,7 +42,7 @@ public class UnitValue implements IntrinsicMethod { StackValue receiver, @NotNull GenerationState state ) { - v.getstatic(JET_TUPLE0_TYPE.getInternalName(), "VALUE", JET_TUPLE0_TYPE.getDescriptor()); + v.getstatic(JET_UNIT_TYPE.getInternalName(), "VALUE", JET_UNIT_TYPE.getDescriptor()); return StackValue.onStack(expectedType); } } diff --git a/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/AsmTypeConstants.java b/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/AsmTypeConstants.java index 2b6e592ca1e..f45992ea9c3 100644 --- a/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/AsmTypeConstants.java +++ b/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/AsmTypeConstants.java @@ -31,7 +31,7 @@ public class AsmTypeConstants { public static final Type JAVA_ARRAY_GENERIC_TYPE = getType(Object[].class); public static final Type JET_NOTHING_TYPE = Type.getObjectType("jet/Nothing"); - public static final Type JET_TUPLE0_TYPE = Type.getObjectType("jet/Tuple0"); + public static final Type JET_UNIT_TYPE = Type.getObjectType("jet/Unit"); public static final Type JET_FUNCTION0_TYPE = Type.getObjectType("jet/Function0"); public static final Type JET_FUNCTION1_TYPE = Type.getObjectType("jet/Function1"); public static final Type JET_ITERATOR_TYPE = Type.getObjectType("jet/Iterator"); diff --git a/runtime/src/jet/Tuple0.java b/runtime/src/jet/Unit.java similarity index 90% rename from runtime/src/jet/Tuple0.java rename to runtime/src/jet/Unit.java index 042fbfbee4c..d0d674afdf6 100644 --- a/runtime/src/jet/Tuple0.java +++ b/runtime/src/jet/Unit.java @@ -19,10 +19,10 @@ package jet; import org.jetbrains.jet.rt.annotation.AssertInvisibleInResolver; @AssertInvisibleInResolver -public class Tuple0 { - public static final Tuple0 VALUE = new Tuple0(); +public class Unit { + public static final Unit VALUE = new Unit(); - private Tuple0() { + private Unit() { } @Override