Mercurial > urweb
comparison src/elab_env.sml @ 228:19e5791923d0
Resolving lingering type class constraints
author | Adam Chlipala <adamc@hcoop.net> |
---|---|
date | Thu, 21 Aug 2008 14:45:31 -0400 |
parents | a3413288cce1 |
children | 2b9dfaffb008 |
comparison
equal
deleted
inserted
replaced
227:524e10c91478 | 228:19e5791923d0 |
---|---|
361 | 361 |
362 fun class_name_in (c, _) = | 362 fun class_name_in (c, _) = |
363 case c of | 363 case c of |
364 CNamed n => SOME (ClNamed n) | 364 CNamed n => SOME (ClNamed n) |
365 | CModProj x => SOME (ClProj x) | 365 | CModProj x => SOME (ClProj x) |
366 | CUnif (_, _, _, ref (SOME c)) => class_name_in c | |
366 | _ => NONE | 367 | _ => NONE |
367 | 368 |
368 fun class_key_in (c, _) = | 369 fun class_key_in (c, _) = |
369 case c of | 370 case c of |
370 CRel n => SOME (CkRel n) | 371 CRel n => SOME (CkRel n) |
371 | CNamed n => SOME (CkNamed n) | 372 | CNamed n => SOME (CkNamed n) |
372 | CModProj x => SOME (CkProj x) | 373 | CModProj x => SOME (CkProj x) |
374 | CUnif (_, _, _, ref (SOME c)) => class_key_in c | |
373 | _ => NONE | 375 | _ => NONE |
374 | 376 |
375 fun class_pair_in (c, _) = | 377 fun class_pair_in (c, _) = |
376 case c of | 378 case c of |
377 CApp (f, x) => | 379 CApp (f, x) => |