comparison src/explify.sml @ 48:0a5c312de09a

Start of FFI
author Adam Chlipala <adamc@hcoop.net>
date Sun, 22 Jun 2008 09:27:29 -0400
parents 3c1ce1b4eb3d
children abb2b32c19fb
comparison
equal deleted inserted replaced
47:ac4c0b4111ba 48:0a5c312de09a
101 L.DCon (x, n, k, c) => (L'.DCon (x, n, explifyKind k, explifyCon c), loc) 101 L.DCon (x, n, k, c) => (L'.DCon (x, n, explifyKind k, explifyCon c), loc)
102 | L.DVal (x, n, t, e) => (L'.DVal (x, n, explifyCon t, explifyExp e), loc) 102 | L.DVal (x, n, t, e) => (L'.DVal (x, n, explifyCon t, explifyExp e), loc)
103 103
104 | L.DSgn (x, n, sgn) => (L'.DSgn (x, n, explifySgn sgn), loc) 104 | L.DSgn (x, n, sgn) => (L'.DSgn (x, n, explifySgn sgn), loc)
105 | L.DStr (x, n, sgn, str) => (L'.DStr (x, n, explifySgn sgn, explifyStr str), loc) 105 | L.DStr (x, n, sgn, str) => (L'.DStr (x, n, explifySgn sgn, explifyStr str), loc)
106 | L.DFfiStr (x, n, sgn) => (L'.DFfiStr (x, n, explifySgn sgn), loc)
106 107
107 and explifyStr (str, loc) = 108 and explifyStr (str, loc) =
108 case str of 109 case str of
109 L.StrConst ds => (L'.StrConst (map explifyDecl ds), loc) 110 L.StrConst ds => (L'.StrConst (map explifyDecl ds), loc)
110 | L.StrVar n => (L'.StrVar n, loc) 111 | L.StrVar n => (L'.StrVar n, loc)