comparison src/mono_shake.sml @ 1623:218e2a9a53d0

Better error messages about non-SQL-izability of types
author Adam Chlipala <adam@chlipala.net>
date Sat, 03 Dec 2011 15:59:21 -0500
parents cbacd38d4ec2
children c1e3805e604e
comparison
equal deleted inserted replaced
1622:a20daedfd1d0 1623:218e2a9a53d0
113 List.foldl 113 List.foldl
114 (fn ((DExport (_, _, n, _, _, _), _), (page_cs, page_es)) => (page_cs, IS.add (page_es, n)) 114 (fn ((DExport (_, _, n, _, _, _), _), (page_cs, page_es)) => (page_cs, IS.add (page_es, n))
115 | ((DDatabase {expunge = n1, initialize = n2, ...}, _), (page_cs, page_es)) => 115 | ((DDatabase {expunge = n1, initialize = n2, ...}, _), (page_cs, page_es)) =>
116 (page_cs, IS.addList (page_es, [n1, n2])) 116 (page_cs, IS.addList (page_es, [n1, n2]))
117 | ((DTask (e1, e2), _), st) => usedVars (usedVars st e2) e1 117 | ((DTask (e1, e2), _), st) => usedVars (usedVars st e2) e1
118 | ((DTable (_, xts, e1, e2), _), st) => usedVars (usedVars (usedVars st e1) e2)
119 (ERecord (map (fn (x, t) => (x, (ERecord [], #2 e1), t)) xts), #2 e1)
118 | ((DView (_, _, e), _), st) => usedVars st e 120 | ((DView (_, _, e), _), st) => usedVars st e
119 | ((DPolicy pol, _), st) => 121 | ((DPolicy pol, _), st) =>
120 let 122 let
121 val e1 = case pol of 123 val e1 = case pol of
122 PolClient e1 => e1 124 PolClient e1 => e1