scala.collection.generic

trait MutableMapTemplateBase

[source: scala/collection/generic/MutableMapTemplateBase.scala]

trait MutableMapTemplateBase[A, B, +This <: MutableMapTemplateBase[A, B, This] with Map[A, B]]
extends MapTemplate[A, B, This] with Cloneable[This]
The reason for this class is so that we can have both a generic immutable `+` with signature def + [B1 >: B](kv: (A, B1)): Map[A, B1] and a (deprecated) mutable `+` of signature def + (kv: (A, B)): this.type = this += kv The former is required to fulfill the Map contract. The latter is required for backwards compatibility. We can't have both methods in the same class, as that would give a double definition. They are OK in different classes though, and narrowly escape a `same erasure' problem. Once the deprecated + goes away we can do without class MutableMapTemplateBase.
Author
Martin Odersky
Version
2.8
Direct Known Subclasses:
MutableMapTemplate

Method Summary
def + [B1 >: B](kv : (A, B1)) : Map[A, B1]
Add a key/value pair to this map, returning a new map.
Methods inherited from Cloneable
clone
Methods inherited from MapTemplate
empty (abstract), get (abstract), iterator (abstract), - (abstract), newBuilder, isEmpty, getOrElse, apply, contains, isDefinedAt, keySet, keysIterator, keys, valueIterable, valuesIterator, values, default, filterKeys, mapValues, mapElements, updated, +, ++, ++, addString, equals, stringPrefix, toString
Methods inherited from Subtractable
-, --, --
Methods inherited from IterableTemplate
elements, foreach, foldRight, reduceRight, toIterable, head, takeRight, dropRight, sameElements, toStream, view, view, first, firstOption, toSeq, projection
Methods inherited from TraversableTemplate
thisCollection, nonEmpty, size, hasDefiniteSize, ++, ++, map, flatMap, filter, filterMap, filterNot, remove, partition, groupBy, forall, exists, count, find, foldLeft, /:, :\, reduceLeft, reduceLeftOption, reduceRightOption, headOption, tail, last, lastOption, init, take, drop, slice, takeWhile, dropWhile, span, splitAt, copyToBuffer, copyToArray, copyToArray, toArray, toList, toSequence, toSet, mkString, mkString, mkString, addString, addString
Methods inherited from PartialFunction
orElse, andThen
Methods inherited from Function1
compose
Methods inherited from AnyRef
getClass, hashCode, notify, notifyAll, wait, wait, wait, finalize, ==, !=, eq, ne, synchronized
Methods inherited from Any
==, !=, isInstanceOf, asInstanceOf
Method Details
def +[B1 >: B](kv : (A, B1)) : Map[A, B1]
Add a key/value pair to this map, returning a new map.
Parameters
kv - the key/value pair
Returns
A new map with the new binding added to this map
Overrides
MapTemplate.+