diff options
Diffstat (limited to 'src/library')
18 files changed, 29 insertions, 27 deletions
diff --git a/src/library/scala/List.scala b/src/library/scala/List.scala index 386911b18e..1b1299b25a 100644 --- a/src/library/scala/List.scala +++ b/src/library/scala/List.scala @@ -711,6 +711,10 @@ sealed abstract class List[+A] extends Seq[A] { /** Returns all the elements of this list that satisfy the * predicate <code>p</code>. The order of the elements is preserved. + * It is guarenteed that the receiver list itself is returned iff all its + * elements satisfy the predicate `p'. Hence the following equality is valid: + * + * (xs filter p) eq xs == xs forall p * * @param p the predicate used to filter the list. * @return the elements of this list satisfying <code>p</code>. diff --git a/src/library/scala/Seq.scala b/src/library/scala/Seq.scala index c44c8fa552..f46517c9e4 100644 --- a/src/library/scala/Seq.scala +++ b/src/library/scala/Seq.scala @@ -268,7 +268,7 @@ trait Seq[+A] extends AnyRef with PartialFunction[Int, A] with Collection[A] { * @return <code>true</code> iff there is an element of this sequence * which is equal (w.r.t. <code>==</code>) to <code>elem</code>. */ - def contains(elem: Any): Boolean = exists (.==(elem)) + def contains(elem: Any): Boolean = exists (_ == elem) /** Returns a subsequence starting from index <code>from</code> * consisting of <code>len</code> elements. diff --git a/src/library/scala/Symbol.scala b/src/library/scala/Symbol.scala index 6110fa07dd..92a4e838f0 100644 --- a/src/library/scala/Symbol.scala +++ b/src/library/scala/Symbol.scala @@ -48,7 +48,7 @@ final case class Symbol(name: String) { * @return the unique reference to this symbol. */ def intern: Symbol = internedSymbols.synchronized { - internedSymbols.get(this).map(.get).getOrElse(None) match { + internedSymbols.get(this).map(_.get).getOrElse(None) match { case Some(sym) => sym case _ => internedSymbols(this) = new ref.WeakReference(this); this diff --git a/src/library/scala/collection/Map.scala b/src/library/scala/collection/Map.scala index 3dfa5d999f..015bda5f21 100644 --- a/src/library/scala/collection/Map.scala +++ b/src/library/scala/collection/Map.scala @@ -113,7 +113,7 @@ trait Map[A, +B] extends PartialFunction[A, B] with Collection[(A, B)] { def keySet: Set[A] = new Set[A] { def size = Map.this.size def contains(key : A) = Map.this.contains(key) - def elements = Map.this.elements.map(._1) + def elements = Map.this.elements.map(_._1) } /** Creates an iterator for a contained values. diff --git a/src/library/scala/collection/SortedMap.scala b/src/library/scala/collection/SortedMap.scala index f645c9d9ba..d166ca3d7d 100644 --- a/src/library/scala/collection/SortedMap.scala +++ b/src/library/scala/collection/SortedMap.scala @@ -32,7 +32,7 @@ trait SortedMap[K,+E] extends Map[K,E] with Sorted[K,Tuple2[K,E]] { protected class DefaultKeySet extends SortedSet[K] { def size = SortedMap.this.size def contains(key : K) = SortedMap.this.contains(key) - def elements = SortedMap.this.elements.map(._1) + def elements = SortedMap.this.elements.map(_._1) def compare(k0 : K, k1 : K) = SortedMap.this.compare(k0, k1); override def rangeImpl(from : Option[K], until : Option[K]) : SortedSet[K] = { val map = SortedMap.this.rangeImpl(from,until); diff --git a/src/library/scala/collection/immutable/TreeSet.scala b/src/library/scala/collection/immutable/TreeSet.scala index 645308a658..4873426f38 100644 --- a/src/library/scala/collection/immutable/TreeSet.scala +++ b/src/library/scala/collection/immutable/TreeSet.scala @@ -83,9 +83,9 @@ class TreeSet[A <% Ordered[A]](val size: int, t: RedBlack[A]#Tree[Unit]) * * @return the new iterator */ - def elements: Iterator[A] = tree.elements.elements map (._1) + def elements: Iterator[A] = tree.elements.elements map (_._1) - def elementsSlow = tree.elementsSlow map (._1) + def elementsSlow = tree.elementsSlow map (_._1) override def foreach(f : A => Unit) : Unit = tree.visit[Unit](())((unit0,y,unit1) => Tuple2(true, f(y))) diff --git a/src/library/scala/collection/jcl/Map.scala b/src/library/scala/collection/jcl/Map.scala index 96dddd6add..40b2bcaf9c 100644 --- a/src/library/scala/collection/jcl/Map.scala +++ b/src/library/scala/collection/jcl/Map.scala @@ -22,7 +22,7 @@ trait Map[K,E] extends MutableIterable[Tuple2[K,E]] with scala.collection.mutabl /** The values of this map as a projection, which means removals from the returned collection will remove the element from this map. @returns a projection of this map's elements. */ - def valueSet : MutableIterable.Projection[E] = projection.map(._2); + def valueSet : MutableIterable.Projection[E] = projection.map(_._2); def put(key : K, elem : E) : Option[E]; def putAll(that : Iterable[Tuple2[K,E]]) : Unit = that.foreach(p => put(p._1, p._2)); @@ -41,7 +41,7 @@ trait Map[K,E] extends MutableIterable[Tuple2[K,E]] with scala.collection.mutabl case Some(e) if e == pair._2 => true; case _ => false; } - override def get(key : K) = elements.find(p => p._1 == key).map(._2); + override def get(key : K) = elements.find(p => p._1 == key).map(_._2); override def update(key : K, e : E) : Unit = put(key,e); override def +(pair : Tuple2[K,E]) : this.type = { put(pair._1,pair._2); this; @@ -80,7 +80,7 @@ trait Map[K,E] extends MutableIterable[Tuple2[K,E]] with scala.collection.mutabl protected class KeySet extends Set[K] { override def size = Map.this.size; override def add(k : K) = Map.this.put(k, default(k)) == None; - override def elements = Map.this.elements.map(._1); + override def elements = Map.this.elements.map(_._1); override def has(k : K) = Map.this.contains(k); } override def filterKeys(p : K => Boolean) : Map.Projection[K,E] = new Filter(p); diff --git a/src/library/scala/collection/jcl/Tests.scala b/src/library/scala/collection/jcl/Tests.scala index 39683323fa..a3007d8e1b 100644 --- a/src/library/scala/collection/jcl/Tests.scala +++ b/src/library/scala/collection/jcl/Tests.scala @@ -29,11 +29,11 @@ private[jcl] object Tests { rset + "bad"; Console.println(rset); Console.println(set); - val fset : SortedSet[String] = rset.projection.filter(.endsWith("d")); + val fset : SortedSet[String] = rset.projection.filter(_.endsWith("d")); Console.println(fset); fset += "cd"; Console.println(set); - //set.projection.map(.length).retain(x => x == 3); + //set.projection.map(_.length).retain(x => x == 3); Console.println(set); Console.println(rset); Console.println(fset); diff --git a/src/library/scala/collection/mutable/DoubleLinkedList.scala b/src/library/scala/collection/mutable/DoubleLinkedList.scala index 0d97a50176..d7a1ebf4f1 100644 --- a/src/library/scala/collection/mutable/DoubleLinkedList.scala +++ b/src/library/scala/collection/mutable/DoubleLinkedList.scala @@ -21,9 +21,8 @@ package scala.collection.mutable * @version 1.0, 08/07/2003 */ abstract class DoubleLinkedList[A, This >: Null <: DoubleLinkedList[A, This]] - requires This extends SingleLinkedList[A, This] -{ +{ self: This => var prev: This diff --git a/src/library/scala/collection/mutable/ObservableBuffer.scala b/src/library/scala/collection/mutable/ObservableBuffer.scala index 424c80ea86..63ceb12e65 100644 --- a/src/library/scala/collection/mutable/ObservableBuffer.scala +++ b/src/library/scala/collection/mutable/ObservableBuffer.scala @@ -22,11 +22,11 @@ package scala.collection.mutable * @author Matthias Zenger * @version 1.0, 08/07/2003 */ -trait ObservableBuffer[A, This <: ObservableBuffer[A, This]] requires This +trait ObservableBuffer[A, This <: ObservableBuffer[A, This]] extends Buffer[A] with Publisher[Message[(Location, A)] with Undoable, This] -{ +{ self: This => abstract override def +(element: A): Buffer[A] = { super.+(element) diff --git a/src/library/scala/collection/mutable/ObservableMap.scala b/src/library/scala/collection/mutable/ObservableMap.scala index 6841a3df5e..56843604fa 100644 --- a/src/library/scala/collection/mutable/ObservableMap.scala +++ b/src/library/scala/collection/mutable/ObservableMap.scala @@ -21,11 +21,11 @@ package scala.collection.mutable * @author Martin Odersky * @version 2.0, 31/12/2006 */ -trait ObservableMap[A, B, This <: ObservableMap[A, B, This]] requires This +trait ObservableMap[A, B, This <: ObservableMap[A, B, This]] extends Map[A, B] with Publisher[Message[(A, B)] with Undoable, This] -{ +{ self: This => abstract override def update(key: A, value: B): Unit = get(key) match { case None => diff --git a/src/library/scala/collection/mutable/ObservableSet.scala b/src/library/scala/collection/mutable/ObservableSet.scala index 46140275c9..b2e63b29b1 100644 --- a/src/library/scala/collection/mutable/ObservableSet.scala +++ b/src/library/scala/collection/mutable/ObservableSet.scala @@ -20,11 +20,11 @@ package scala.collection.mutable * @author Matthias Zenger * @version 1.0, 08/07/2003 */ -trait ObservableSet[A, This <: ObservableSet[A, This]] requires This +trait ObservableSet[A, This <: ObservableSet[A, This]] extends Set[A] with Publisher[Message[A] with Undoable, This] -{ +{ self: This => abstract override def +=(elem: A): Unit = if (!contains(elem)) { super.+=(elem) diff --git a/src/library/scala/collection/mutable/Publisher.scala b/src/library/scala/collection/mutable/Publisher.scala index 8d499e2e24..ddeb984442 100644 --- a/src/library/scala/collection/mutable/Publisher.scala +++ b/src/library/scala/collection/mutable/Publisher.scala @@ -22,7 +22,7 @@ package scala.collection.mutable * @author Matthias Zenger * @version 1.0, 08/07/2003 */ -trait Publisher[A, This <: Publisher[A, This]] requires This { +trait Publisher[A, This <: Publisher[A, This]] { self: This => private val filters = new HashMap[Subscriber[A, This], scala.collection.mutable.Set[A => Boolean]] with MultiMap[Subscriber[A, This], A => Boolean] diff --git a/src/library/scala/collection/mutable/SingleLinkedList.scala b/src/library/scala/collection/mutable/SingleLinkedList.scala index 80b4b6efe3..5ee6de582c 100644 --- a/src/library/scala/collection/mutable/SingleLinkedList.scala +++ b/src/library/scala/collection/mutable/SingleLinkedList.scala @@ -20,9 +20,8 @@ package scala.collection.mutable * @version 1.0, 08/07/2003 */ abstract class SingleLinkedList[A, This >: Null <: SingleLinkedList[A, This]] - requires This extends AnyRef with Seq[A] -{ +{ self: This => var elem: A diff --git a/src/library/scala/io/BytePickle.scala b/src/library/scala/io/BytePickle.scala index c41b231460..772b1246bc 100644 --- a/src/library/scala/io/BytePickle.scala +++ b/src/library/scala/io/BytePickle.scala @@ -275,7 +275,7 @@ object BytePickle { share(wrap((a:Array[byte]) => UTF8Codec.decode(a, 0, a.length), (s:String) => UTF8Codec.encode(s), bytearray)); def bytearray: SPU[Array[byte]] = { - wrap((l:List[byte]) => l.toArray, .toList, list(byte)) + wrap((l:List[byte]) => l.toArray, (_.toList), list(byte)) } def bool: SPU[boolean] = { diff --git a/src/library/scala/ref/Reference.scala b/src/library/scala/ref/Reference.scala index aac2e2a32a..65c49583ae 100644 --- a/src/library/scala/ref/Reference.scala +++ b/src/library/scala/ref/Reference.scala @@ -19,7 +19,7 @@ trait Reference[+T <: AnyRef] extends Function0[T] { def apply(): T /** return <code>Some</code> underlying if it hasn't been collected, otherwise <code>None</code> */ def get : Option[T] - override def toString = get.map(.toString).getOrElse("<deleted>") + override def toString = get.map(_.toString).getOrElse("<deleted>") def clear(): Unit def enqueue(): Boolean def isEnqueued(): Boolean diff --git a/src/library/scala/xml/parsing/ExternalSources.scala b/src/library/scala/xml/parsing/ExternalSources.scala index 90b7f406a4..699946be88 100644 --- a/src/library/scala/xml/parsing/ExternalSources.scala +++ b/src/library/scala/xml/parsing/ExternalSources.scala @@ -15,7 +15,7 @@ import compat.StringBuilder import scala.io.Source; import java.net.URL; -trait ExternalSources requires (ExternalSources with MarkupParser with MarkupHandler) { +trait ExternalSources { self: ExternalSources with MarkupParser with MarkupHandler => private def externalSourceFromURL(url:URL): Source = { import java.io.{BufferedReader, InputStreamReader}; diff --git a/src/library/scala/xml/parsing/MarkupParser.scala b/src/library/scala/xml/parsing/MarkupParser.scala index a1c34f7287..f3b0173288 100644 --- a/src/library/scala/xml/parsing/MarkupParser.scala +++ b/src/library/scala/xml/parsing/MarkupParser.scala @@ -28,7 +28,7 @@ import scala.xml.dtd._ * @author Burak Emir * @version 1.0 */ -trait MarkupParser requires (MarkupParser with MarkupHandler) extends AnyRef with TokenTests { +trait MarkupParser extends AnyRef with TokenTests { self: MarkupParser with MarkupHandler => val input: Source @@ -407,7 +407,7 @@ trait MarkupParser requires (MarkupParser with MarkupHandler) extends AnyRef wit * see [66] */ def xCharRef(ch: () => Char, nextch: () => Unit): String = { - Utility.parseCharRef(ch, nextch, &reportSyntaxError) + Utility.parseCharRef(ch, nextch, reportSyntaxError _) /* val hex = (ch() == 'x') && { nextch(); true }; val base = if (hex) 16 else 10; |