Mercurial > urweb
comparison src/mono_shake.sml @ 683:9a2c18dab11d
Expunging non-nullable rows
author | Adam Chlipala <adamc@hcoop.net> |
---|---|
date | Sun, 29 Mar 2009 13:30:01 -0400 |
parents | 56aaa1941dad |
children | a3ddf05fb3e3 |
comparison
equal
deleted
inserted
replaced
682:5bbb542243e8 | 683:9a2c18dab11d |
---|---|
43 | 43 |
44 fun shake file = | 44 fun shake file = |
45 let | 45 let |
46 val page_es = List.foldl | 46 val page_es = List.foldl |
47 (fn ((DExport (_, _, n, _, _), _), page_es) => n :: page_es | 47 (fn ((DExport (_, _, n, _, _), _), page_es) => n :: page_es |
48 | ((DDatabase (_, n), _), page_es) => n :: page_es | |
48 | (_, page_es) => page_es) [] file | 49 | (_, page_es) => page_es) [] file |
49 | 50 |
50 val (cdef, edef) = foldl (fn ((DDatatype (_, n, xncs), _), (cdef, edef)) => | 51 val (cdef, edef) = foldl (fn ((DDatatype (_, n, xncs), _), (cdef, edef)) => |
51 (IM.insert (cdef, n, xncs), edef) | 52 (IM.insert (cdef, n, xncs), edef) |
52 | ((DVal (_, n, t, e, _), _), (cdef, edef)) => | 53 | ((DVal (_, n, t, e, _), _), (cdef, edef)) => |