Mercurial > urweb
comparison src/cjrize.sml @ 338:e976b187d73a
SQL sequences
author | Adam Chlipala <adamc@hcoop.net> |
---|---|
date | Sun, 14 Sep 2008 11:02:18 -0400 |
parents | 04ebfe929a98 |
children | 7abb28e9d51f |
comparison
equal
deleted
inserted
replaced
337:18d5affa790d | 338:e976b187d73a |
---|---|
386 val (e, sm) = cifyExp (e, sm) | 386 val (e, sm) = cifyExp (e, sm) |
387 in | 387 in |
388 ((L'.EDml {dml = e, prepared = NONE}, loc), sm) | 388 ((L'.EDml {dml = e, prepared = NONE}, loc), sm) |
389 end | 389 end |
390 | 390 |
391 | L.ENextval e => | |
392 let | |
393 val (e, sm) = cifyExp (e, sm) | |
394 in | |
395 ((L'.ENextval {seq = e, prepared = NONE}, loc), sm) | |
396 end | |
397 | |
391 | 398 |
392 fun cifyDecl ((d, loc), sm) = | 399 fun cifyDecl ((d, loc), sm) = |
393 case d of | 400 case d of |
394 L.DDatatype (x, n, xncs) => | 401 L.DDatatype (x, n, xncs) => |
395 let | 402 let |
488 ((x, t), sm) | 495 ((x, t), sm) |
489 end) sm xts | 496 end) sm xts |
490 in | 497 in |
491 (SOME (L'.DTable (s, xts), loc), NONE, sm) | 498 (SOME (L'.DTable (s, xts), loc), NONE, sm) |
492 end | 499 end |
500 | L.DSequence s => | |
501 (SOME (L'.DSequence s, loc), NONE, sm) | |
493 | L.DDatabase s => (SOME (L'.DDatabase s, loc), NONE, sm) | 502 | L.DDatabase s => (SOME (L'.DDatabase s, loc), NONE, sm) |
494 | 503 |
495 fun cjrize ds = | 504 fun cjrize ds = |
496 let | 505 let |
497 val (dsF, ds, ps, sm) = foldl (fn (d, (dsF, ds, ps, sm)) => | 506 val (dsF, ds, ps, sm) = foldl (fn (d, (dsF, ds, ps, sm)) => |