equal
deleted
inserted
replaced
42 NONE => Tab.update (k,v) t |
42 NONE => Tab.update (k,v) t |
43 | SOME v' => let val w = f v v' |
43 | SOME v' => let val w = f v v' |
44 in if z w then Tab.delete k t else Tab.update (k,w) t end; |
44 in if z w then Tab.delete k t else Tab.update (k,w) t end; |
45 in Tab.fold h a b end; |
45 in Tab.fold h a b end; |
46 |
46 |
47 fun choose f = case Tab.min_key f of |
47 fun choose f = |
48 SOME k => (k, the (Tab.lookup f k)) |
48 (case Tab.min f of |
49 | NONE => error "FuncFun.choose : Completely empty function" |
49 SOME entry => entry |
|
50 | NONE => error "FuncFun.choose : Completely empty function") |
50 |
51 |
51 fun onefunc kv = update kv empty |
52 fun onefunc kv = update kv empty |
52 |
53 |
53 end; |
54 end; |
54 |
55 |