Skip to content

zliu41/multi-containers

Repository files navigation

multi-containers

A library that provides three multimap variants:

  • Multimap k a, a multimap where values of each key form a list.
  • SetMultimap k a, a multimap where values of each key form a set.
  • Table r c a, a two dimensional table where values are indexed by row keys and column keys; it is essentially a multimap where values of each key form a map.

For Multimap and SetMultimap, there's always at least one value associated with each key in the multimap. Upon removing the last value of a key, the key itself is removed from the multimap.

For Table, similarly, each row key in a table always has at least one value. So does each column key.