Mercurial > urweb
comparison src/elab_util.sml @ 1797:bb942416bf1c
Remove 'class' declaration; now use 'con' instead
author | Adam Chlipala <adam@chlipala.net> |
---|---|
date | Sun, 29 Jul 2012 12:27:13 -0400 |
parents | d28adceef22a |
children | 1aa9629e3a4c |
comparison
equal
deleted
inserted
replaced
1796:0de0daab5fbb | 1797:bb942416bf1c |
---|---|
917 val ct = (CModProj (n, [], "sql_view"), loc) | 917 val ct = (CModProj (n, [], "sql_view"), loc) |
918 val ct = (CApp (ct, c), loc) | 918 val ct = (CApp (ct, c), loc) |
919 in | 919 in |
920 bind (ctx, NamedE (x, ct)) | 920 bind (ctx, NamedE (x, ct)) |
921 end | 921 end |
922 | DClass (x, n, k, c) => | |
923 bind (ctx, NamedC (x, n, (KArrow (k, (KType, loc)), loc), SOME c)) | |
924 | DDatabase _ => ctx | 922 | DDatabase _ => ctx |
925 | DCookie (tn, x, n, c) => | 923 | DCookie (tn, x, n, c) => |
926 bind (ctx, NamedE (x, (CApp ((CModProj (n, [], "cookie"), loc), | 924 bind (ctx, NamedE (x, (CApp ((CModProj (n, [], "cookie"), loc), |
927 c), loc))) | 925 c), loc))) |
928 | DStyle (tn, x, n) => | 926 | DStyle (tn, x, n) => |
1038 fn e' => | 1036 fn e' => |
1039 S.map2 (mfc ctx c, | 1037 S.map2 (mfc ctx c, |
1040 fn c' => | 1038 fn c' => |
1041 (DView (tn, x, n, e', c'), loc))) | 1039 (DView (tn, x, n, e', c'), loc))) |
1042 | 1040 |
1043 | DClass (x, n, k, c) => | |
1044 S.bind2 (mfk ctx k, | |
1045 fn k' => | |
1046 S.map2 (mfc ctx c, | |
1047 fn c' => | |
1048 (DClass (x, n, k', c'), loc))) | |
1049 | |
1050 | DDatabase _ => S.return2 dAll | 1041 | DDatabase _ => S.return2 dAll |
1051 | 1042 |
1052 | DCookie (tn, x, n, c) => | 1043 | DCookie (tn, x, n, c) => |
1053 S.map2 (mfc ctx c, | 1044 S.map2 (mfc ctx c, |
1054 fn c' => | 1045 fn c' => |
1231 | DValRec vis => foldl (fn ((_, n, _, _), count) => Int.max (n, count)) 0 vis | 1222 | DValRec vis => foldl (fn ((_, n, _, _), count) => Int.max (n, count)) 0 vis |
1232 | DStr (_, n, sgn, str) => Int.max (n, Int.max (maxNameSgn sgn, maxNameStr str)) | 1223 | DStr (_, n, sgn, str) => Int.max (n, Int.max (maxNameSgn sgn, maxNameStr str)) |
1233 | DSgn (_, n, sgn) => Int.max (n, maxNameSgn sgn) | 1224 | DSgn (_, n, sgn) => Int.max (n, maxNameSgn sgn) |
1234 | DFfiStr (_, n, sgn) => Int.max (n, maxNameSgn sgn) | 1225 | DFfiStr (_, n, sgn) => Int.max (n, maxNameSgn sgn) |
1235 | DConstraint _ => 0 | 1226 | DConstraint _ => 0 |
1236 | DClass (_, n, _, _) => n | |
1237 | DExport _ => 0 | 1227 | DExport _ => 0 |
1238 | DTable (n1, _, n2, _, _, _, _, _) => Int.max (n1, n2) | 1228 | DTable (n1, _, n2, _, _, _, _, _) => Int.max (n1, n2) |
1239 | DSequence (n1, _, n2) => Int.max (n1, n2) | 1229 | DSequence (n1, _, n2) => Int.max (n1, n2) |
1240 | DView (n1, _, n2, _, _) => Int.max (n1, n2) | 1230 | DView (n1, _, n2, _, _) => Int.max (n1, n2) |
1241 | DDatabase _ => 0 | 1231 | DDatabase _ => 0 |