22 |
fun lift2i f (_, (k, a), (_, b)) = f(k, a, b) |
fun lift2i f (_, (k, a), (_, b)) = f(k, a, b) |
23 |
|
|
24 |
val empty = Map.empty |
val empty = Map.empty |
|
val isEmpty = Map.isEmpty |
|
25 |
fun singleton (obj, v) = Map.singleton (HC.tag obj, (obj, v)) |
fun singleton (obj, v) = Map.singleton (HC.tag obj, (obj, v)) |
26 |
fun insert (m, obj, v) = Map.insert(m, HC.tag obj, (obj, v)) |
fun insert (m, obj, v) = Map.insert(m, HC.tag obj, (obj, v)) |
27 |
fun insert' (p as (obj, v), m) = Map.insert(m, HC.tag obj, p) |
fun insert' (p as (obj, v), m) = Map.insert(m, HC.tag obj, p) |
51 |
in |
in |
52 |
(map, v) |
(map, v) |
53 |
end |
end |
54 |
fun first (map : ('a, 'b) map) = Option.map #2 (Map.first map) |
val isEmpty = Map.isEmpty |
|
val firsti = Map.first |
|
55 |
val numItems = Map.numItems |
val numItems = Map.numItems |
56 |
fun listItems map = Map.foldr (fn ((_, v), vs) => v::vs) [] map |
fun listItems map = Map.foldr (fn ((_, v), vs) => v::vs) [] map |
57 |
val listItemsi = Map.listItems |
val listItemsi = Map.listItems |