Mercurial > urweb
annotate tests/query.ur @ 246:3aa010e97db9
Explify tables
author | Adam Chlipala <adamc@hcoop.net> |
---|---|
date | Sun, 31 Aug 2008 08:46:22 -0400 |
parents | 71bafe66dbe1 |
children | b6b75e6e0898 |
rev | line source |
---|---|
adamc@243 | 1 table t1 : {A : int, B : string, C : float} |
adamc@243 | 2 table t2 : {A : float, D : int} |
adamc@243 | 3 |
adamc@243 | 4 datatype list a = Nil | Cons of a * list a |
adamc@243 | 5 |
adamc@243 | 6 val q1 = (SELECT * FROM t1) |
adamc@243 | 7 val r1 : transaction (list {A : int, B : string, C : float}) = |
adamc@243 | 8 query q1 |
adamc@243 | 9 (fn fs _ acc => return (Cons (fs.T1, acc))) |
adamc@243 | 10 Nil |
adamc@243 | 11 |
adamc@243 | 12 val r2 : transaction int = |
adamc@243 | 13 ls <- r1; |
adamc@243 | 14 return (case ls of |
adamc@243 | 15 Nil => 0 |
adamc@243 | 16 | Cons ({A = a, ...}, _) => a) |