comparison src/corify.sml @ 493:ae03d09043c1

Add CutMulti
author Adam Chlipala <adamc@hcoop.net>
date Tue, 11 Nov 2008 19:20:37 -0500
parents 40c737913075
children 803b2f3bb86b
comparison
equal deleted inserted replaced
492:4a241d108a2c 493:ae03d09043c1
588 {field = corifyCon st field, rest = corifyCon st rest}), loc) 588 {field = corifyCon st field, rest = corifyCon st rest}), loc)
589 | L.EConcat (e1, c1, e2, c2) => (L'.EConcat (corifyExp st e1, corifyCon st c1, corifyExp st e2, 589 | L.EConcat (e1, c1, e2, c2) => (L'.EConcat (corifyExp st e1, corifyCon st c1, corifyExp st e2,
590 corifyCon st c2), loc) 590 corifyCon st c2), loc)
591 | L.ECut (e1, c, {field, rest}) => (L'.ECut (corifyExp st e1, corifyCon st c, 591 | L.ECut (e1, c, {field, rest}) => (L'.ECut (corifyExp st e1, corifyCon st c,
592 {field = corifyCon st field, rest = corifyCon st rest}), loc) 592 {field = corifyCon st field, rest = corifyCon st rest}), loc)
593 | L.ECutMulti (e1, c, {rest}) => (L'.ECutMulti (corifyExp st e1, corifyCon st c,
594 {rest = corifyCon st rest}), loc)
593 | L.EFold k => (L'.EFold (corifyKind k), loc) 595 | L.EFold k => (L'.EFold (corifyKind k), loc)
594 596
595 | L.ECase (e, pes, {disc, result}) => 597 | L.ECase (e, pes, {disc, result}) =>
596 (L'.ECase (corifyExp st e, 598 (L'.ECase (corifyExp st e,
597 map (fn (p, e) => (corifyPat st p, corifyExp st e)) pes, 599 map (fn (p, e) => (corifyPat st p, corifyExp st e)) pes,