comparison src/expl_env.sml @ 705:e6706a1df013

Track uniqueness sets in table types
author Adam Chlipala <adamc@hcoop.net>
date Tue, 07 Apr 2009 14:11:32 -0400
parents 70cbdcf5989b
children d8217b4cb617
comparison
equal deleted inserted replaced
704:70cbdcf5989b 705:e6706a1df013
296 | DValRec vis => foldl (fn ((x, n, t, _), env) => pushENamed env x n t) env vis 296 | DValRec vis => foldl (fn ((x, n, t, _), env) => pushENamed env x n t) env vis
297 | DSgn (x, n, sgn) => pushSgnNamed env x n sgn 297 | DSgn (x, n, sgn) => pushSgnNamed env x n sgn
298 | DStr (x, n, sgn, _) => pushStrNamed env x n sgn 298 | DStr (x, n, sgn, _) => pushStrNamed env x n sgn
299 | DFfiStr (x, n, sgn) => pushStrNamed env x n sgn 299 | DFfiStr (x, n, sgn) => pushStrNamed env x n sgn
300 | DExport _ => env 300 | DExport _ => env
301 | DTable (tn, x, n, c, _) => 301 | DTable (tn, x, n, c, _, cc) =>
302 let 302 let
303 val t = (CApp ((CModProj (tn, [], "sql_table"), loc), c), loc) 303 val ct = (CModProj (tn, [], "sql_table"), loc)
304 in 304 val ct = (CApp (ct, c), loc)
305 pushENamed env x n t 305 val ct = (CApp (ct, cc), loc)
306 in
307 pushENamed env x n ct
306 end 308 end
307 | DSequence (tn, x, n) => 309 | DSequence (tn, x, n) =>
308 let 310 let
309 val t = (CModProj (tn, [], "sql_sequence"), loc) 311 val t = (CModProj (tn, [], "sql_sequence"), loc)
310 in 312 in