comparison src/elaborate.sml @ 159:1e382d10e832

Abstracting datatypes with signature ascription
author Adam Chlipala <adamc@hcoop.net>
date Thu, 24 Jul 2008 16:41:12 -0400
parents b4b70de488e9
children 870e8abbe3b9
comparison
equal deleted inserted replaced
158:b4b70de488e9 159:1e382d10e832
1722 NONE 1722 NONE
1723 in 1723 in
1724 case sgi1 of 1724 case sgi1 of
1725 L'.SgiConAbs (x', n1, k1) => found (x', n1, k1, NONE) 1725 L'.SgiConAbs (x', n1, k1) => found (x', n1, k1, NONE)
1726 | L'.SgiCon (x', n1, k1, c1) => found (x', n1, k1, SOME c1) 1726 | L'.SgiCon (x', n1, k1, c1) => found (x', n1, k1, SOME c1)
1727 | L'.SgiDatatype (x', n1, _) => found (x', n1, (L'.KType, loc), NONE)
1728 | L'.SgiDatatypeImp (x', n1, m1, ms, s) =>
1729 found (x', n1, (L'.KType, loc), SOME (L'.CModProj (m1, ms, s), loc))
1727 | _ => NONE 1730 | _ => NONE
1728 end) 1731 end)
1729 1732
1730 | L'.SgiCon (x, n2, k2, c2) => 1733 | L'.SgiCon (x, n2, k2, c2) =>
1731 seek (fn sgi1All as (sgi1, _) => 1734 seek (fn sgi1All as (sgi1, _) =>