scala.collection.immutable
class HashMap

[source: `scala/collection/immutable/HashMap.scala`]

@serializable
`` `class` HashMap[A, B]
  `extends` Map[A, B]`with` HashTable[A]

  This class implements immutable maps using a hash table.

Author
  Martin Odersky
Version
  2.0, 19/01/2007

Type Summary
`type` | Entry

Value Summary
`protected var` | deltaSize : Int
`protected var` | later : HashMap[A, B]
`protected var` | oldKey : A
`protected var` | oldValue : Option[B]

Values and Variables inherited from HashTable
loadFactorDenum, initialThreshold, table, tableSize, threshold

Method Summary
`def` | - (key : A) : Map[A, B] Remove a key from this map
`def` | elements : Iterator[(A, B)] Creates a new iterator over all elements contained in this object.
`def` | empty [C] : Map[A, C] This method returns a new map instance of the same class mapping keys of the same type to values of type `C`.
`def` | get (key : A) : Option[B] Check if this map maps `key` to a value and return the value if it exists.
`override def` | size : Int Returns the size of this hash table.
`def` | update [B1 >: B](key : A, value : B1) : Map[A, B1] This method allows one to create a new map with an additional mapping from `key` to `value`. If the map contains already a mapping for `key`, it will be overridden by this function.

Methods inherited from HashTable
loadFactor, initialSize, findEntry, addEntry, removeEntry, entries, clear, elemEquals, elemHashCode, improve, index

Methods inherited from Map
+, +, ++, ++, -, --, --, withDefault, withDefaultValue, transform, filter, +, incl, incl, excl, excl, mappingToString

Methods inherited from Map
getOrElse, isEmpty, apply, contains, isDefinedAt, keys, keySet, values, equals, hashCode, toString, default, projection, filterKeys, mapElements

Methods inherited from Collection
toArray, stringPrefix

Methods inherited from Iterable
concat, ++, map, flatMap, takeWhile, dropWhile, take, drop, foreach, forall, exists, find, findIndexOf, indexOf, foldLeft, foldRight, /:, :\, reduceLeft, reduceRight, copyToBuffer, sameElements, toList, toStream, mkString, mkString, mkString, addString, addString, copyToArray, hasDefiniteSize

Methods inherited from PartialFunction
orElse, andThen

Methods inherited from Function1
compose

Methods inherited from AnyRef
getClass, clone, notify, notifyAll, wait, wait, wait, finalize, ==, !=, eq, ne, synchronized

Methods inherited from Any
==, !=, isInstanceOf, asInstanceOf

Type Details

`` `type` Entry

Value Details

`protected` `var` later : HashMap[A, B]

`protected` `var` oldKey : A

`protected` `var` oldValue : Option[B]

`protected` `var` deltaSize : Int

Method Details

`` `def` empty[C] : Map[A, C]

  This method returns a new map instance of the same class mapping keys of the same type to values of type `C`.

Overrides
  Map.empty

`` `def` get(key : A) : Option[B]

  Check if this map maps `key` to a value and return the value if it exists.

Parameters
  `key -` the key of the mapping of interest
Returns
  the value of the mapping, if it exists

`` `def` update[B1 >: B](key : A, value : B1) : Map[A, B1]

  This method allows one to create a new map with an additional mapping from `key` to `value`. If the map contains already a mapping for `key`, it will be overridden by this function.

Parameters
  `key -` ...
  `value -` ...
Returns
  the created map
Deprecated
  use `+({A, B})` instead

Overrides
  Map.update

`` `def` -(key : A) : Map[A, B]

  Remove a key from this map

Parameters
  `key -` the key to be removed
Returns
  If the map does not contain a binding for `key` it is returned unchanged. Otherwise, return a new map without a binding for `key`

Overrides
  Map.-

`override` `def` size : Int

  Returns the size of this hash table.

Overrides
  HashTable.size

`` `def` elements : Iterator[(A, B)]

  Creates a new iterator over all elements contained in this object.

Returns
  the new iterator