Mercurial > urweb
comparison src/elab_env.sml @ 123:e3041657d653
Parsing and elaborating (non-mutual) 'val rec'
author | Adam Chlipala <adamc@hcoop.net> |
---|---|
date | Thu, 17 Jul 2008 10:09:34 -0400 |
parents | 813e5a52063d |
children | 34ccd7d2bea8 |
comparison
equal
deleted
inserted
replaced
122:f7c6ceb87bbd | 123:e3041657d653 |
---|---|
294 | 294 |
295 fun declBinds env (d, _) = | 295 fun declBinds env (d, _) = |
296 case d of | 296 case d of |
297 DCon (x, n, k, c) => pushCNamedAs env x n k (SOME c) | 297 DCon (x, n, k, c) => pushCNamedAs env x n k (SOME c) |
298 | DVal (x, n, t, _) => pushENamedAs env x n t | 298 | DVal (x, n, t, _) => pushENamedAs env x n t |
299 | DValRec vis => foldl (fn ((x, n, t, _), env) => pushENamedAs env x n t) env vis | |
299 | DSgn (x, n, sgn) => pushSgnNamedAs env x n sgn | 300 | DSgn (x, n, sgn) => pushSgnNamedAs env x n sgn |
300 | DStr (x, n, sgn, _) => pushStrNamedAs env x n sgn | 301 | DStr (x, n, sgn, _) => pushStrNamedAs env x n sgn |
301 | DFfiStr (x, n, sgn) => pushStrNamedAs env x n sgn | 302 | DFfiStr (x, n, sgn) => pushStrNamedAs env x n sgn |
302 | DConstraint _ => env | 303 | DConstraint _ => env |
303 | DExport _ => env | 304 | DExport _ => env |