summaryrefslogtreecommitdiff
path: root/src/library
diff options
context:
space:
mode:
authorPaul Phillips <paulp@improving.org>2011-04-01 05:02:30 +0000
committerPaul Phillips <paulp@improving.org>2011-04-01 05:02:30 +0000
commit9b3852f26201aee7761637f89979dab2a71294a9 (patch)
treea26f7cd79256084b88153d1ba81e8c9d7c59dc59 /src/library
parent305f49ce8f7358636bf81a7aca29d8ab42d98ed4 (diff)
downloadscala-9b3852f26201aee7761637f89979dab2a71294a9.tar.gz
scala-9b3852f26201aee7761637f89979dab2a71294a9.tar.bz2
scala-9b3852f26201aee7761637f89979dab2a71294a9.zip
A less ad hoc infrastructure for generating Any...
A less ad hoc infrastructure for generating AnyVal sources. A few more comments on said sources. No review.
Diffstat (limited to 'src/library')
-rwxr-xr-xsrc/library/scala/Boolean.scala5
-rw-r--r--src/library/scala/Byte.scala5
-rw-r--r--src/library/scala/Char.scala5
-rw-r--r--src/library/scala/Double.scala9
-rw-r--r--src/library/scala/Float.scala9
-rw-r--r--src/library/scala/Int.scala5
-rw-r--r--src/library/scala/Long.scala5
-rw-r--r--src/library/scala/Short.scala5
-rwxr-xr-xsrc/library/scala/Unit.scala27
9 files changed, 46 insertions, 29 deletions
diff --git a/src/library/scala/Boolean.scala b/src/library/scala/Boolean.scala
index 220fc752c3..7719065ae7 100755
--- a/src/library/scala/Boolean.scala
+++ b/src/library/scala/Boolean.scala
@@ -32,6 +32,7 @@ final class Boolean extends AnyVal {
}
object Boolean extends AnyValCompanion {
+
/** Transform a value type into a boxed reference type.
*
* @param x the Boolean to be boxed
@@ -43,7 +44,7 @@ object Boolean extends AnyValCompanion {
* method is not typesafe: it accepts any Object, but will throw
* an exception if the argument is not a java.lang.Boolean.
*
- * @param x the Boolean to be unboxed.
+ * @param x the java.lang.Boolean to be unboxed.
* @throws ClassCastException if the argument is not a java.lang.Boolean
* @return the Boolean resulting from calling booleanValue() on `x`
*/
@@ -52,5 +53,5 @@ object Boolean extends AnyValCompanion {
/** The String representation of the scala.Boolean companion object.
*/
override def toString = "object scala.Boolean"
+}
-} \ No newline at end of file
diff --git a/src/library/scala/Byte.scala b/src/library/scala/Byte.scala
index 2d27fe37d2..540e05c19f 100644
--- a/src/library/scala/Byte.scala
+++ b/src/library/scala/Byte.scala
@@ -16,7 +16,6 @@ package scala
* There is an implicit conversion from [[scala.Byte]] => [[scala.runtime.RichByte]]
* which provides useful non-primitive operations.
*/
-
final class Byte extends AnyVal {
def toByte: Byte = sys.error("stub")
def toShort: Short = sys.error("stub")
@@ -147,7 +146,6 @@ final class Byte extends AnyVal {
}
-
object Byte extends AnyValCompanion {
/** The smallest value representable as a Byte.
*/
@@ -168,7 +166,7 @@ object Byte extends AnyValCompanion {
* method is not typesafe: it accepts any Object, but will throw
* an exception if the argument is not a java.lang.Byte.
*
- * @param x the Byte to be unboxed.
+ * @param x the java.lang.Byte to be unboxed.
* @throws ClassCastException if the argument is not a java.lang.Byte
* @return the Byte resulting from calling byteValue() on `x`
*/
@@ -178,3 +176,4 @@ object Byte extends AnyValCompanion {
*/
override def toString = "object scala.Byte"
}
+
diff --git a/src/library/scala/Char.scala b/src/library/scala/Char.scala
index b1c9d8e6d4..a5d1cb019b 100644
--- a/src/library/scala/Char.scala
+++ b/src/library/scala/Char.scala
@@ -16,7 +16,6 @@ package scala
* There is an implicit conversion from [[scala.Char]] => [[scala.runtime.RichChar]]
* which provides useful non-primitive operations.
*/
-
final class Char extends AnyVal {
def toByte: Byte = sys.error("stub")
def toShort: Short = sys.error("stub")
@@ -147,7 +146,6 @@ final class Char extends AnyVal {
}
-
object Char extends AnyValCompanion {
/** The smallest value representable as a Char.
*/
@@ -168,7 +166,7 @@ object Char extends AnyValCompanion {
* method is not typesafe: it accepts any Object, but will throw
* an exception if the argument is not a java.lang.Character.
*
- * @param x the Char to be unboxed.
+ * @param x the java.lang.Character to be unboxed.
* @throws ClassCastException if the argument is not a java.lang.Character
* @return the Char resulting from calling charValue() on `x`
*/
@@ -178,3 +176,4 @@ object Char extends AnyValCompanion {
*/
override def toString = "object scala.Char"
}
+
diff --git a/src/library/scala/Double.scala b/src/library/scala/Double.scala
index 857647b8a5..6fd7b0984b 100644
--- a/src/library/scala/Double.scala
+++ b/src/library/scala/Double.scala
@@ -16,7 +16,6 @@ package scala
* There is an implicit conversion from [[scala.Double]] => [[scala.runtime.RichDouble]]
* which provides useful non-primitive operations.
*/
-
final class Double extends AnyVal {
def toByte: Byte = sys.error("stub")
def toShort: Short = sys.error("stub")
@@ -121,9 +120,10 @@ final class Double extends AnyVal {
}
-
object Double extends AnyValCompanion {
- /** The smallest positive value greater than 0.0d.*/
+ /** The smallest positive value greater than 0.0d which is
+ * representable as a Double.
+ */
final val MinPositiveValue = java.lang.Double.MIN_VALUE
final val NaN = java.lang.Double.NaN
final val PositiveInfinity = java.lang.Double.POSITIVE_INFINITY
@@ -153,7 +153,7 @@ object Double extends AnyValCompanion {
* method is not typesafe: it accepts any Object, but will throw
* an exception if the argument is not a java.lang.Double.
*
- * @param x the Double to be unboxed.
+ * @param x the java.lang.Double to be unboxed.
* @throws ClassCastException if the argument is not a java.lang.Double
* @return the Double resulting from calling doubleValue() on `x`
*/
@@ -163,3 +163,4 @@ object Double extends AnyValCompanion {
*/
override def toString = "object scala.Double"
}
+
diff --git a/src/library/scala/Float.scala b/src/library/scala/Float.scala
index 59acc73a4d..38819e5d16 100644
--- a/src/library/scala/Float.scala
+++ b/src/library/scala/Float.scala
@@ -16,7 +16,6 @@ package scala
* There is an implicit conversion from [[scala.Float]] => [[scala.runtime.RichFloat]]
* which provides useful non-primitive operations.
*/
-
final class Float extends AnyVal {
def toByte: Byte = sys.error("stub")
def toShort: Short = sys.error("stub")
@@ -121,9 +120,10 @@ final class Float extends AnyVal {
}
-
object Float extends AnyValCompanion {
- /** The smallest positive value greater than 0.0f.*/
+ /** The smallest positive value greater than 0.0f which is
+ * representable as a Float.
+ */
final val MinPositiveValue = java.lang.Float.MIN_VALUE
final val NaN = java.lang.Float.NaN
final val PositiveInfinity = java.lang.Float.POSITIVE_INFINITY
@@ -153,7 +153,7 @@ object Float extends AnyValCompanion {
* method is not typesafe: it accepts any Object, but will throw
* an exception if the argument is not a java.lang.Float.
*
- * @param x the Float to be unboxed.
+ * @param x the java.lang.Float to be unboxed.
* @throws ClassCastException if the argument is not a java.lang.Float
* @return the Float resulting from calling floatValue() on `x`
*/
@@ -163,3 +163,4 @@ object Float extends AnyValCompanion {
*/
override def toString = "object scala.Float"
}
+
diff --git a/src/library/scala/Int.scala b/src/library/scala/Int.scala
index 42cb6be44f..c53be1241d 100644
--- a/src/library/scala/Int.scala
+++ b/src/library/scala/Int.scala
@@ -16,7 +16,6 @@ package scala
* There is an implicit conversion from [[scala.Int]] => [[scala.runtime.RichInt]]
* which provides useful non-primitive operations.
*/
-
final class Int extends AnyVal {
def toByte: Byte = sys.error("stub")
def toShort: Short = sys.error("stub")
@@ -147,7 +146,6 @@ final class Int extends AnyVal {
}
-
object Int extends AnyValCompanion {
/** The smallest value representable as a Int.
*/
@@ -168,7 +166,7 @@ object Int extends AnyValCompanion {
* method is not typesafe: it accepts any Object, but will throw
* an exception if the argument is not a java.lang.Integer.
*
- * @param x the Int to be unboxed.
+ * @param x the java.lang.Integer to be unboxed.
* @throws ClassCastException if the argument is not a java.lang.Integer
* @return the Int resulting from calling intValue() on `x`
*/
@@ -178,3 +176,4 @@ object Int extends AnyValCompanion {
*/
override def toString = "object scala.Int"
}
+
diff --git a/src/library/scala/Long.scala b/src/library/scala/Long.scala
index 1de69dab7a..3124130663 100644
--- a/src/library/scala/Long.scala
+++ b/src/library/scala/Long.scala
@@ -16,7 +16,6 @@ package scala
* There is an implicit conversion from [[scala.Long]] => [[scala.runtime.RichLong]]
* which provides useful non-primitive operations.
*/
-
final class Long extends AnyVal {
def toByte: Byte = sys.error("stub")
def toShort: Short = sys.error("stub")
@@ -147,7 +146,6 @@ final class Long extends AnyVal {
}
-
object Long extends AnyValCompanion {
/** The smallest value representable as a Long.
*/
@@ -168,7 +166,7 @@ object Long extends AnyValCompanion {
* method is not typesafe: it accepts any Object, but will throw
* an exception if the argument is not a java.lang.Long.
*
- * @param x the Long to be unboxed.
+ * @param x the java.lang.Long to be unboxed.
* @throws ClassCastException if the argument is not a java.lang.Long
* @return the Long resulting from calling longValue() on `x`
*/
@@ -178,3 +176,4 @@ object Long extends AnyValCompanion {
*/
override def toString = "object scala.Long"
}
+
diff --git a/src/library/scala/Short.scala b/src/library/scala/Short.scala
index fc9bee32d4..8bf6f09154 100644
--- a/src/library/scala/Short.scala
+++ b/src/library/scala/Short.scala
@@ -16,7 +16,6 @@ package scala
* There is an implicit conversion from [[scala.Short]] => [[scala.runtime.RichShort]]
* which provides useful non-primitive operations.
*/
-
final class Short extends AnyVal {
def toByte: Byte = sys.error("stub")
def toShort: Short = sys.error("stub")
@@ -147,7 +146,6 @@ final class Short extends AnyVal {
}
-
object Short extends AnyValCompanion {
/** The smallest value representable as a Short.
*/
@@ -168,7 +166,7 @@ object Short extends AnyValCompanion {
* method is not typesafe: it accepts any Object, but will throw
* an exception if the argument is not a java.lang.Short.
*
- * @param x the Short to be unboxed.
+ * @param x the java.lang.Short to be unboxed.
* @throws ClassCastException if the argument is not a java.lang.Short
* @return the Short resulting from calling shortValue() on `x`
*/
@@ -178,3 +176,4 @@ object Short extends AnyValCompanion {
*/
override def toString = "object scala.Short"
}
+
diff --git a/src/library/scala/Unit.scala b/src/library/scala/Unit.scala
index e69f95bf89..58b024273b 100755
--- a/src/library/scala/Unit.scala
+++ b/src/library/scala/Unit.scala
@@ -10,7 +10,6 @@
package scala
-import runtime.BoxedUnit
/** Unit is a member of the value classes, those whose instances are
* not represented as objects by the underlying host system. There is
@@ -18,8 +17,28 @@ import runtime.BoxedUnit
*/
final class Unit extends AnyVal { }
+
object Unit extends AnyValCompanion {
- override def toString = "object scala.Unit"
- def box(x: Unit): BoxedUnit = BoxedUnit.UNIT
+
+ /** Transform a value type into a boxed reference type.
+ *
+ * @param x the Unit to be boxed
+ * @return a scala.runtime.BoxedUnit offering `x` as its underlying value.
+ */
+ def box(x: Unit): scala.runtime.BoxedUnit = scala.runtime.BoxedUnit.UNIT
+
+ /** Transform a boxed type into a value type. Note that this
+ * method is not typesafe: it accepts any Object, but will throw
+ * an exception if the argument is not a scala.runtime.BoxedUnit.
+ *
+ * @param x the scala.runtime.BoxedUnit to be unboxed.
+ * @throws ClassCastException if the argument is not a scala.runtime.BoxedUnit
+ * @return the Unit value ()
+ */
def unbox(x: java.lang.Object): Unit = ()
-} \ No newline at end of file
+
+ /** The String representation of the scala.Unit companion object.
+ */
+ override def toString = "object scala.Unit"
+}
+