Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class SortedMultiMap[K,V] private (private val delegate: SortedMap[K, Set[V]])
- (implicit ord: Ordering[K])
- extends SortedMap[K, Set[V]]
- with SortedMapLike[K, Set[V], SortedMultiMap[K,V]]
- override def +[B1 >: Set[V]](kv: (K, B1)) = new SortedMultiMap(delegate + kv)
- override def +[B1 >: Set[V]](kv: (K, B1)): SortedMap[K, B1] = delegate + kv // general case
- def +(kv: (K,Set[V])): SortedMultiMap[K, V] = new SortedMultiMap(delegate + kv) // specific case
- override def +[B1 >: Set[V]](kv: (K, B1)) = new SortedMultiMap(delegate + kv)
- override def +[B1 >: Set[V]](kv: (K, B1)): SortedMap[K, B1] = kv._2 match {
- // may need some massaging to persuade the compiler
- case v: Set[a] => new SortedMultiMap(delegate + (kv._1, v))
- case _ => delegate + kv
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement