view demo/view.ur @ 1455:913d9c2f55c9

Corify Basis.unit to empty record; this is needed so that specialize can see that they are equivalent.
author Karn Kallio <kkallio@eka>
date Fri, 06 May 2011 16:24:45 -0430
parents c7b9a33c26c8
children
line wrap: on
line source
table t : { A : int }
view v = SELECT t.A AS A FROM t WHERE t.A > 7

fun list [u] (_ : fieldsOf u [A = int]) (title : string) (x : u) : transaction xbody =
    xml <- queryX (SELECT * FROM x)
           (fn r : {X : {A : int}} => <xml><li>{[r.X.A]}</li></xml>);
    return <xml>
      <h2>{[title]}</h2>
      <ul>{xml}</ul>
    </xml>

fun main () =
    listT <- list "T" t;
    listV <- list "V" v;
    return <xml><body>
      {listT}
      {listV}
      <br/>

      <form>Insert: <textbox{#A}/> <submit action={ins}/></form>
    </body></xml>

and ins r =
    dml (INSERT INTO t (A) VALUES ({[readError r.A]}));
    main ()