comparison src/mono_shake.sml @ 273:09c66a30ef32

Table declarations pushed to Cjr
author Adam Chlipala <adamc@hcoop.net>
date Tue, 02 Sep 2008 13:09:54 -0400
parents 42dfb0d61cf0
children e976b187d73a
comparison
equal deleted inserted replaced
272:4d80d6122df1 273:09c66a30ef32
52 | ((DVal (_, n, t, e, _), _), (cdef, edef)) => 52 | ((DVal (_, n, t, e, _), _), (cdef, edef)) =>
53 (cdef, IM.insert (edef, n, (t, e))) 53 (cdef, IM.insert (edef, n, (t, e)))
54 | ((DValRec vis, _), (cdef, edef)) => 54 | ((DValRec vis, _), (cdef, edef)) =>
55 (cdef, foldl (fn ((_, n, t, e, _), edef) => IM.insert (edef, n, (t, e))) edef vis) 55 (cdef, foldl (fn ((_, n, t, e, _), edef) => IM.insert (edef, n, (t, e))) edef vis)
56 | ((DExport _, _), acc) => acc 56 | ((DExport _, _), acc) => acc
57 | ((DTable _, _), acc) => acc
57 | ((DDatabase _, _), acc) => acc) 58 | ((DDatabase _, _), acc) => acc)
58 (IM.empty, IM.empty) file 59 (IM.empty, IM.empty) file
59 60
60 fun typ (c, s) = 61 fun typ (c, s) =
61 case c of 62 case c of
106 in 107 in
107 List.filter (fn (DDatatype (_, n, _), _) => IS.member (#con s, n) 108 List.filter (fn (DDatatype (_, n, _), _) => IS.member (#con s, n)
108 | (DVal (_, n, _, _, _), _) => IS.member (#exp s, n) 109 | (DVal (_, n, _, _, _), _) => IS.member (#exp s, n)
109 | (DValRec vis, _) => List.exists (fn (_, n, _, _, _) => IS.member (#exp s, n)) vis 110 | (DValRec vis, _) => List.exists (fn (_, n, _, _, _) => IS.member (#exp s, n)) vis
110 | (DExport _, _) => true 111 | (DExport _, _) => true
112 | (DTable _, _) => true
111 | (DDatabase _, _) => true) file 113 | (DDatabase _, _) => true) file
112 end 114 end
113 115
114 end 116 end