view tests/rpcDE.ur @ 1697:cb0f05bdc183

Refactor SQL parsing code from Iflow to Sql, add querydml parser.
author Edward Z. Yang <ezyang@mit.edu>
date Mon, 12 Mar 2012 12:00:23 -0700
parents 3ee6bb48f6e8
children
line wrap: on
line source
datatype result = Neg | Zero | Pos

table t : {A : int}

fun main () : transaction page =
    let
        fun check () =
            r <- oneRow (SELECT SUM(t.A) AS X FROM t);
            return (if r.X < 0 then
                        Neg
                    else if r.X = 0 then
                        Zero
                    else
                        Pos)

        fun show r =
            case r of
                Neg => <xml>-</xml>
              | Zero => <xml>0</xml>
              | Pos => <xml>+</xml>
    in
        s <- source Zero;
        return <xml><body>
          <button value="Get It On!"
                  onclick={r <- check ();
                           set s r}/><br/>
          <br/>
          Current: <dyn signal={r <- signal s; return (show r)}/>
        </body></xml>
    end