LongMap's is a performance oriented addition, yet updating it requires two lookups because the updateWith function is delegated to MapOps.
Furthermore, updateWith deals with the 'XT' Option[A] => Option[A] remap function, which discourages otherwise good uses of the function, and degrades performance. Therefore I propose to add transformValue(key: K)(transformation: V => V) and transformValueDefault(key: K)(default: => V)(transformation: V => V) that deal with the most common usecases.
LongMap's is a performance oriented addition, yet updating it requires two lookups because the updateWith function is delegated to MapOps.
Furthermore, updateWith deals with the 'XT'
Option[A] => Option[A]
remap function, which discourages otherwise good uses of the function, and degrades performance. Therefore I propose to addtransformValue(key: K)(transformation: V => V)
andtransformValueDefault(key: K)(default: => V)(transformation: V => V)
that deal with the most common usecases.