comparison src/explify.sml @ 67:9f89f0b00b84

Elaborating cfold
author Adam Chlipala <adamc@hcoop.net>
date Thu, 26 Jun 2008 09:48:54 -0400
parents d609820c5834
children c1e21ab42896
comparison
equal deleted inserted replaced
66:1ec5703c09c4 67:9f89f0b00b84
57 57
58 | L.CName s => (L'.CName s, loc) 58 | L.CName s => (L'.CName s, loc)
59 59
60 | L.CRecord (k, xcs) => (L'.CRecord (explifyKind k, map (fn (c1, c2) => (explifyCon c1, explifyCon c2)) xcs), loc) 60 | L.CRecord (k, xcs) => (L'.CRecord (explifyKind k, map (fn (c1, c2) => (explifyCon c1, explifyCon c2)) xcs), loc)
61 | L.CConcat (c1, c2) => (L'.CConcat (explifyCon c1, explifyCon c2), loc) 61 | L.CConcat (c1, c2) => (L'.CConcat (explifyCon c1, explifyCon c2), loc)
62 | L.CFold _ => raise Fail "Explify CFold"
62 63
63 | L.CError => raise Fail ("explifyCon: CError at " ^ EM.spanToString loc) 64 | L.CError => raise Fail ("explifyCon: CError at " ^ EM.spanToString loc)
64 | L.CUnif (_, _, ref (SOME c)) => explifyCon c 65 | L.CUnif (_, _, ref (SOME c)) => explifyCon c
65 | L.CUnif _ => raise Fail ("explifyCon: CUnif at " ^ EM.spanToString loc) 66 | L.CUnif _ => raise Fail ("explifyCon: CUnif at " ^ EM.spanToString loc)
66 67