comparison src/explify.sml @ 68:c1e21ab42896

Explify cfold
author Adam Chlipala <adamc@hcoop.net>
date Thu, 26 Jun 2008 09:51:28 -0400
parents 9f89f0b00b84
children 6431b315a1e3
comparison
equal deleted inserted replaced
67:9f89f0b00b84 68:c1e21ab42896
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 | L.CFold (dom, ran) => (L'.CFold (explifyKind dom, explifyKind ran), loc)
63 63
64 | L.CError => raise Fail ("explifyCon: CError at " ^ EM.spanToString loc) 64 | L.CError => raise Fail ("explifyCon: CError at " ^ EM.spanToString loc)
65 | L.CUnif (_, _, ref (SOME c)) => explifyCon c 65 | L.CUnif (_, _, ref (SOME c)) => explifyCon c
66 | L.CUnif _ => raise Fail ("explifyCon: CUnif at " ^ EM.spanToString loc) 66 | L.CUnif _ => raise Fail ("explifyCon: CUnif at " ^ EM.spanToString loc)
67 67