comparison src/corify.sml @ 707:d8217b4cb617

PRIMARY KEY
author Adam Chlipala <adamc@hcoop.net>
date Tue, 07 Apr 2009 16:14:31 -0400
parents e6706a1df013
children f152f215a02c
comparison
equal deleted inserted replaced
706:1fb318c17546 707:d8217b4cb617
974 (ds, st) 974 (ds, st)
975 end 975 end
976 end 976 end
977 | _ => raise Fail "Non-const signature for 'export'") 977 | _ => raise Fail "Non-const signature for 'export'")
978 978
979 | L.DTable (_, x, n, c, e, cc) => 979 | L.DTable (_, x, n, c, pe, pc, ce, cc) =>
980 let 980 let
981 val (st, n) = St.bindVal st x n 981 val (st, n) = St.bindVal st x n
982 val s = relify (doRestify (mods, x)) 982 val s = relify (doRestify (mods, x))
983 in 983 in
984 ([(L'.DTable (x, n, corifyCon st c, s, corifyExp st e, corifyCon st cc), loc)], st) 984 ([(L'.DTable (x, n, corifyCon st c, s,
985 corifyExp st pe, corifyCon st pc,
986 corifyExp st ce, corifyCon st cc), loc)], st)
985 end 987 end
986 | L.DSequence (_, x, n) => 988 | L.DSequence (_, x, n) =>
987 let 989 let
988 val (st, n) = St.bindVal st x n 990 val (st, n) = St.bindVal st x n
989 val s = relify (doRestify (mods, x)) 991 val s = relify (doRestify (mods, x))
1050 | L.DValRec vis => foldl (fn ((_, n', _, _), n) => Int.max (n, n)) n vis 1052 | L.DValRec vis => foldl (fn ((_, n', _, _), n) => Int.max (n, n)) n vis
1051 | L.DSgn (_, n', _) => Int.max (n, n') 1053 | L.DSgn (_, n', _) => Int.max (n, n')
1052 | L.DStr (_, n', _, str) => Int.max (n, Int.max (n', maxNameStr str)) 1054 | L.DStr (_, n', _, str) => Int.max (n, Int.max (n', maxNameStr str))
1053 | L.DFfiStr (_, n', _) => Int.max (n, n') 1055 | L.DFfiStr (_, n', _) => Int.max (n, n')
1054 | L.DExport _ => n 1056 | L.DExport _ => n
1055 | L.DTable (_, _, n', _, _, _) => Int.max (n, n') 1057 | L.DTable (_, _, n', _, _, _, _, _) => Int.max (n, n')
1056 | L.DSequence (_, _, n') => Int.max (n, n') 1058 | L.DSequence (_, _, n') => Int.max (n, n')
1057 | L.DDatabase _ => n 1059 | L.DDatabase _ => n
1058 | L.DCookie (_, _, n', _) => Int.max (n, n')) 1060 | L.DCookie (_, _, n', _) => Int.max (n, n'))
1059 0 ds 1061 0 ds
1060 1062