From 2ce4219b43f6c7869aa26cb915a2d732825d0ff0 Mon Sep 17 00:00:00 2001 From: Alexander Udalov Date: Thu, 26 Jun 2014 18:53:18 +0400 Subject: [PATCH] Add sensible "toString()" to kotlin.jvm.internal.Ref No tests added because it's difficult to test: codegen always unwraps refs to the objects they are referencing #KT-5205 Fixed --- .../src/kotlin/jvm/internal/Ref.java | 47 +++++++++++++++++++ 1 file changed, 47 insertions(+) diff --git a/core/runtime.jvm/src/kotlin/jvm/internal/Ref.java b/core/runtime.jvm/src/kotlin/jvm/internal/Ref.java index 7e46c5a4cec..962ea0ccad0 100644 --- a/core/runtime.jvm/src/kotlin/jvm/internal/Ref.java +++ b/core/runtime.jvm/src/kotlin/jvm/internal/Ref.java @@ -16,42 +16,89 @@ package kotlin.jvm.internal; +import java.lang.Override; + public class Ref { private Ref() {} public static final class ObjectRef { public volatile T element; + + @Override + public String toString() { + return String.valueOf(element); + } } public static final class ByteRef { public volatile byte element; + + @Override + public String toString() { + return String.valueOf(element); + } } public static final class ShortRef { public volatile short element; + + @Override + public String toString() { + return String.valueOf(element); + } } public static final class IntRef { public volatile int element; + + @Override + public String toString() { + return String.valueOf(element); + } } public static final class LongRef { public volatile long element; + + @Override + public String toString() { + return String.valueOf(element); + } } public static final class FloatRef { public volatile float element; + + @Override + public String toString() { + return String.valueOf(element); + } } public static final class DoubleRef { public volatile double element; + + @Override + public String toString() { + return String.valueOf(element); + } } public static final class CharRef { public volatile char element; + + @Override + public String toString() { + return String.valueOf(element); + } } public static final class BooleanRef { public volatile boolean element; + + @Override + public String toString() { + return String.valueOf(element); + } } }