class TypedMultiMap[T <: AnyRef, K[_ <: T]] extends AnyRef
Ordering
- Alphabetic
- By Inheritance
Inherited
- TypedMultiMap
- AnyRef
- Any
Implicitly
- by any2stringadd
- by StringFormat
- by Ensuring
- by ArrowAssoc
- Hide All
- Show All
Visibility
- Public
- Protected
Value Members
- def ++(other: TypedMultiMap[T, K]): TypedMultiMap[T, K]
Add all entries from the other map, overwriting existing entries.
Add all entries from the other map, overwriting existing entries.
FIXME: should it merge, instead?
- def equals(other: Any): Boolean
- Definition Classes
- TypedMultiMap → AnyRef → Any
- def get(key: T): Set[K[key.type]]
Obtain all mappings for the given key.
- def hashCode(): Int
- Definition Classes
- TypedMultiMap → AnyRef → Any
- def inserted(key: T)(value: K[key.type]): TypedMultiMap[T, K]
Return a map that has the given value added to the mappings for the given key.
- def keyRemoved(key: T): TypedMultiMap[T, K]
Return a map that has all mappings for the given key removed.
- def keySet: Set[T]
Return the set of keys which are mapped to non-empty value sets.
- def removed(key: T)(value: K[key.type]): TypedMultiMap[T, K]
Return a map that has the given mapping from the given key removed.
- def setAll(key: T)(values: Set[K[key.type]]): TypedMultiMap[T, K]
- def toString(): String
- Definition Classes
- TypedMultiMap → AnyRef → Any
- def valueRemoved(value: Any): TypedMultiMap[T, K]
Return a map that has the given value removed from all keys.
An immutable multi-map that expresses the value type as a type function of the key type. Create it with a type constructor that expresses the relationship:
Caveat: using keys which take type parameters does not work due to conflicts with the existential interpretation of
Key[_]
. A workaround is to define a key type like above and provide a subtype that provides its type parameter as type memberType
.