Mercurial > urweb
comparison src/elaborate.sml @ 1191:61c3139eab12
Subquery expressions
author | Adam Chlipala <adamc@hcoop.net> |
---|---|
date | Thu, 25 Mar 2010 15:44:24 -0400 |
parents | 0b1d666bddb4 |
children | c316ca3c9ec6 |
comparison
equal
deleted
inserted
replaced
1190:899875315bde | 1191:61c3139eab12 |
---|---|
1 (* Copyright (c) 2008, Adam Chlipala | 1 (* Copyright (c) 2008-2010, Adam Chlipala |
2 * All rights reserved. | 2 * All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions are met: | 5 * modification, are permitted provided that the following conditions are met: |
6 * | 6 * |
3678 val cv = viewOf () | 3678 val cv = viewOf () |
3679 val cv = (L'.CApp (cv, fs), loc) | 3679 val cv = (L'.CApp (cv, fs), loc) |
3680 val (env', n) = E.pushENamed env x cv | 3680 val (env', n) = E.pushENamed env x cv |
3681 | 3681 |
3682 val ct = queryOf () | 3682 val ct = queryOf () |
3683 val ct = (L'.CApp (ct, (L'.CRecord ((L'.KRecord (L'.KType, loc), loc), []), loc)), loc) | |
3683 val ct = (L'.CApp (ct, ts), loc) | 3684 val ct = (L'.CApp (ct, ts), loc) |
3684 val ct = (L'.CApp (ct, fs), loc) | 3685 val ct = (L'.CApp (ct, fs), loc) |
3685 in | 3686 in |
3686 checkCon env e' t ct; | 3687 checkCon env e' t ct; |
3687 ([(L'.DView (!basis_r, x, n, e', fs), loc)], | 3688 ([(L'.DView (!basis_r, x, n, e', fs), loc)], |