==>>
IMap
という別名がついています。HaskellのMapを移植したものです。
scalaz.Order
を使っていて、順序を保持するtree mapになっています。
先頭のIは、IListやISetと同様、あまり深い意味はありません。imap-name
矢印のようになっているのは、Key ==>> Value
という形式で中置記法で型を書くためだと思われますinfix。
実際Scalaz内部でも基本的に==>>
の型は中置記法で書かれています。
imap-name. (あえて言うなら、invariantもしくはimmutableあたりが由来?) ↩
infix. 記号に限らず、型パラメータを2つとる型についてA[B, C]
をB A C
と書けるのは、Scala自体の言語仕様です。たとえばEither[String, Int]
はString Either Int
と書けます。 ↩