comparison src/shake.sml @ 1073:b2311dfb3158

Initializers and setval
author Adam Chlipala <adamc@hcoop.net>
date Sun, 13 Dec 2009 14:20:41 -0500
parents 3bc726a822fb
children 0657e5adc938
comparison
equal deleted inserted replaced
1072:9001966ae1c8 1073:b2311dfb3158
77 val (usedE, usedC) = usedVars (usedE, usedC) pe 77 val (usedE, usedC) = usedVars (usedE, usedC) pe
78 val (usedE, usedC) = usedVars (usedE, usedC) ce 78 val (usedE, usedC) = usedVars (usedE, usedC) ce
79 in 79 in
80 (usedE, usedC) 80 (usedE, usedC)
81 end 81 end
82 | ((DInitializer e, _), st) => usedVars st e
82 | (_, acc) => acc) (IS.empty, IS.empty) file 83 | (_, acc) => acc) (IS.empty, IS.empty) file
83 84
84 val (cdef, edef) = foldl (fn ((DCon (_, n, _, c), _), (cdef, edef)) => (IM.insert (cdef, n, [c]), edef) 85 val (cdef, edef) = foldl (fn ((DCon (_, n, _, c), _), (cdef, edef)) => (IM.insert (cdef, n, [c]), edef)
85 | ((DDatatype dts, _), (cdef, edef)) => 86 | ((DDatatype dts, _), (cdef, edef)) =>
86 (foldl (fn ((_, n, _, xncs), cdef) => 87 (foldl (fn ((_, n, _, xncs), cdef) =>
102 (cdef, IM.insert (edef, n, ([], c, dummye))) 103 (cdef, IM.insert (edef, n, ([], c, dummye)))
103 | ((DDatabase _, _), acc) => acc 104 | ((DDatabase _, _), acc) => acc
104 | ((DCookie (_, n, c, _), _), (cdef, edef)) => 105 | ((DCookie (_, n, c, _), _), (cdef, edef)) =>
105 (cdef, IM.insert (edef, n, ([], c, dummye))) 106 (cdef, IM.insert (edef, n, ([], c, dummye)))
106 | ((DStyle (_, n, _), _), (cdef, edef)) => 107 | ((DStyle (_, n, _), _), (cdef, edef)) =>
107 (cdef, IM.insert (edef, n, ([], dummyt, dummye)))) 108 (cdef, IM.insert (edef, n, ([], dummyt, dummye)))
109 | ((DInitializer _, _), acc) => acc)
108 (IM.empty, IM.empty) file 110 (IM.empty, IM.empty) file
109 111
110 fun kind (_, s) = s 112 fun kind (_, s) = s
111 113
112 fun con (c, s) = 114 fun con (c, s) =
181 | (DView _, _) => true 183 | (DView _, _) => true
182 | (DSequence _, _) => true 184 | (DSequence _, _) => true
183 | (DTable _, _) => true 185 | (DTable _, _) => true
184 | (DDatabase _, _) => true 186 | (DDatabase _, _) => true
185 | (DCookie _, _) => true 187 | (DCookie _, _) => true
186 | (DStyle _, _) => true) file 188 | (DStyle _, _) => true
189 | (DInitializer _, _) => true) file
187 end 190 end
188 191
189 end 192 end