diff tests/unurlify.ur @ 402:ebf27030ae3b

Recursive unurlify for Default datatypes
author Adam Chlipala <adamc@hcoop.net>
date Tue, 21 Oct 2008 15:11:42 -0400
parents ab3177746c78
children
line wrap: on
line diff
--- a/tests/unurlify.ur	Tue Oct 21 13:56:38 2008 -0400
+++ b/tests/unurlify.ur	Tue Oct 21 15:11:42 2008 -0400
@@ -2,6 +2,19 @@
 
 fun handler (ls : list bool) = return <xml/>
 
+datatype wlist = WNil | Empty | WCons of bool * wlist
+
+fun whandler' (ls : wlist) =
+    case ls of
+        WNil => <xml>Nil</xml>
+      | Empty => <xml>Empty</xml>
+      | WCons (x, ls') => <xml>{[x]} :: {whandler' ls'}</xml>
+
+fun whandler ls = return (whandler' ls)
+
 fun main () : transaction page = return <xml><body>
-  <a link={handler Nil}>!</a>
+  <a link={handler Nil}>!</a><br/>
+  <a link={whandler WNil}>Nil</a><br/>
+  <a link={whandler Empty}>Empty</a><br/>
+  <a link={whandler (WCons (True, WCons (False, Empty)))}>True :: False :: Empty</a><br/>
 </body></xml>