summaryrefslogtreecommitdiff
path: root/src/library
diff options
context:
space:
mode:
authorPaul Phillips <paulp@improving.org>2012-05-02 14:39:13 -0700
committerPaul Phillips <paulp@improving.org>2012-05-02 18:23:14 -0700
commit6300c3033e7b852c6cbef332af6085aac6150a70 (patch)
tree4a508dc17945e3152c80e27a4a122196e348a5cd /src/library
parentb6e989fbf63c9f47acfb54175241b42fdfbfe51b (diff)
downloadscala-6300c3033e7b852c6cbef332af6085aac6150a70.tar.gz
scala-6300c3033e7b852c6cbef332af6085aac6150a70.tar.bz2
scala-6300c3033e7b852c6cbef332af6085aac6150a70.zip
Eliminating reflective calls.
Frobbed knobs and made little traits until all relevant looking reflective calls were gone.
Diffstat (limited to 'src/library')
-rw-r--r--src/library/scala/collection/generic/Clearable.scala26
-rw-r--r--src/library/scala/collection/generic/Growable.scala4
-rw-r--r--src/library/scala/reflect/api/RequiredFile.scala7
3 files changed, 35 insertions, 2 deletions
diff --git a/src/library/scala/collection/generic/Clearable.scala b/src/library/scala/collection/generic/Clearable.scala
new file mode 100644
index 0000000000..6c8d9558b0
--- /dev/null
+++ b/src/library/scala/collection/generic/Clearable.scala
@@ -0,0 +1,26 @@
+/* __ *\
+** ________ ___ / / ___ Scala API **
+** / __/ __// _ | / / / _ | (c) 2003-2011, LAMP/EPFL **
+** __\ \/ /__/ __ |/ /__/ __ | http://scala-lang.org/ **
+** /____/\___/_/ |_/____/_/ | | **
+** |/ **
+\* */
+
+package scala.collection
+package generic
+
+/** This trait forms part of collections that can be cleared
+ * with a clear() call.
+ *
+ * @author Paul Phillips
+ * @version 2.10
+ * @since 2.10
+ * @define coll clearable collection
+ * @define Coll `Clearable`
+ */
+trait Clearable {
+ /** Clears the $coll's contents. After this operation, the
+ * $coll is empty.
+ */
+ def clear(): Unit
+}
diff --git a/src/library/scala/collection/generic/Growable.scala b/src/library/scala/collection/generic/Growable.scala
index baf332fcd8..d6a263af2f 100644
--- a/src/library/scala/collection/generic/Growable.scala
+++ b/src/library/scala/collection/generic/Growable.scala
@@ -22,7 +22,7 @@ package generic
* @define add add
* @define Add add
*/
-trait Growable[-A] {
+trait Growable[-A] extends Clearable {
/** ${Add}s a single element to this $coll.
*
@@ -50,5 +50,5 @@ trait Growable[-A] {
/** Clears the $coll's contents. After this operation, the
* $coll is empty.
*/
- def clear()
+ def clear(): Unit
}
diff --git a/src/library/scala/reflect/api/RequiredFile.scala b/src/library/scala/reflect/api/RequiredFile.scala
new file mode 100644
index 0000000000..4a54595940
--- /dev/null
+++ b/src/library/scala/reflect/api/RequiredFile.scala
@@ -0,0 +1,7 @@
+package scala.reflect
+package api
+
+trait RequiredFile {
+ def path: String
+ def canonicalPath: String
+}