| abstract class $RO_MULTIMAP{K,E} < $CONTAINER{E} |
|---|
| **** | A mapping form K -> bags of E. A multimap binds elements of type `E' to keys of type `K'. In contrast to $MAP{K,E} there can be more than one element be bound to a key. It is essentially a one-to-many mapping, that allows for repetitions. i.e. it is a map from K->$BAG{E} |
| $CONTAINER{_} | $ELT{_} | $ELT |
| $MULTIMAP{_,_} | H_MULTIMAP{_,_} | MULTIMAP{_,_} |
| equals(m: $RO_MULTIMAP{K,E}): BOOL; |
|---|
| **** | Return true if all the key-value pairs are found in the same numbers in "m" |
| has_elt(e: E): BOOL; |
|---|
| **** | Return true if the map has the element "e" |
| has_ind(k: K): BOOL; |
|---|
| **** | Returns true if the map has the element "k" |
| ind!: K; |
|---|
| **** | Yields all keys which are bound in unspecifierd order. |
| n_inds: INT; |
|---|
| **** | Returns the number of keys which are bound. |
| n_targets(k:K): INT; |
|---|
| **** | Returns the number of elements bound to the index `k'. |
| pair!: TUP{K,E}; |
|---|
| **** | Yields all bindings in unpecified order. |
| size: INT; |
|---|
| **** | Returns the number of bindings in the dicitonary. |
| target!(once k:K): E; |
|---|
| **** | Yields all elements wich are bound to 'k' in unspecified order. |
| targets(k: K): $BAG{E}; |
|---|
| **** | Returns all the targets of the element "k" |