Mercurial > urweb
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>