view tests/cookie.ur @ 830:d07980bf1444

Defer pattern-matching exhaustiveness checks and normalize pattern types more thoroughly
author Adam Chlipala <adamc@hcoop.net>
date Sat, 30 May 2009 14:44:29 -0400
parents 1626dcba13ee
children
line wrap: on
line source
cookie c : string

fun other () =
    so <- getCookie c;
    case so of
        None => return <xml>No cookie</xml>
      | Some s => return <xml>Cookie: {[s]}</xml>

structure M = struct
    fun aux () =
        setCookie c "Hi";
        so <- getCookie c;
        case so of
            None => return <xml>No cookie</xml>
          | Some s => return <xml><body>Cookie: {[s]}<br/>
            <a link={other ()}>Other</a></body></xml>
end

fun main () : transaction page = return <xml><body>
  <a link={other ()}>Other</a><br/>
  <a link={M.aux ()}>Aux</a><br/>
</body></xml>