summaryrefslogtreecommitdiff
path: root/test/files/run/Meter.scala
diff options
context:
space:
mode:
Diffstat (limited to 'test/files/run/Meter.scala')
-rw-r--r--test/files/run/Meter.scala19
1 files changed, 19 insertions, 0 deletions
diff --git a/test/files/run/Meter.scala b/test/files/run/Meter.scala
new file mode 100644
index 0000000000..0c30ddd41e
--- /dev/null
+++ b/test/files/run/Meter.scala
@@ -0,0 +1,19 @@
+class Meter(val underlying: Double) extends AnyVal with Printable {
+ def + (other: Meter): Meter =
+ new Meter(this.underlying + other.underlying)
+ def / (other: Meter): Double = this.underlying / other.underlying
+ def / (factor: Double): Meter = new Meter(this.underlying / factor)
+ def < (other: Meter): Boolean = this.underlying < other.underlying
+ override def toString: String = underlying.toString+"m"
+}
+trait Printable extends Any { def print: Unit = Console.print(this) }
+
+object Test extends App {
+
+ val x = new Meter(1)
+ println((x + x) / x)
+ println((x + x) / 0.5)
+ println((x < x).toString)
+
+
+}