diff tests/jsinj.ur @ 594:55829473f6a7

Injected an option
author Adam Chlipala <adamc@hcoop.net>
date Fri, 02 Jan 2009 13:03:22 -0500
parents f277f5faebcd
children 02c8ab9f3e8b
line wrap: on
line diff
--- a/tests/jsinj.ur	Fri Jan 02 12:42:39 2009 -0500
+++ b/tests/jsinj.ur	Fri Jan 02 13:03:22 2009 -0500
@@ -8,6 +8,7 @@
 cookie string : string
 cookie bool : bool
 cookie pair : int * float
+cookie option : option int
 
 fun main () : transaction page =
     n <- getCookie int;
@@ -30,6 +31,10 @@
     p <- return (getOpt p (1, 2.3));
     sp <- source (4, 5.6);
 
+    o <- getCookie option;
+    o <- return (getOpt o (Some 1));
+    op <- source None;
+
     return <xml><body>
       <dyn signal={n <- signal sn; return <xml>{[n]}</xml>}/>
       <a onclick={set sn n}>CHANGE</a><br/>
@@ -45,4 +50,9 @@
 
       <dyn signal={p <- signal sp; return <xml>{[p.1]}, {[p.2]}</xml>}/>
       <a onclick={set sp p}>CHANGE</a><br/>
+
+      <dyn signal={o <- signal op; case o of
+                                       None => return <xml>None</xml>
+                                     | Some x => return <xml>{[x]}</xml>}/>
+      <a onclick={set op o}>CHANGE</a><br/>
     </body></xml>