Mercurial > urweb
view demo/nested.ur @ 2174:ce312cad5ecd
Use correct OpenSSL thread safety macros on OS X (closes #209)
Create an Autoconf test to determine if pthread_t is a pointer or scalar
type, and use the appropriate CRYPTO_THREADID_set macro based on the
result.
author | Benjamin Barenblat <bbaren at mit.edu> |
---|---|
date | Sun, 20 Sep 2015 17:46:07 -0400 |
parents | d4a81273d4b1 |
children |
line wrap: on
line source
fun pageA () = return <xml> <head> <title>A</title> </head> <body> <form> <table> <tr> <td>Forename:</td> <td><textbox{#Forename}/></td> </tr> <tr> <td>Enter a Surname?</td> <td><checkbox{#EnterSurname}/></td> </tr> </table> <submit action={fromA} /> </form> </body> </xml> and fromA r = let val forename = r.Forename fun pageB () = return <xml> <head> <title>B</title> </head> <body> <form> Surname: <textbox{#Surname}/> <submit action={pageC'} /> </form> <a link={pageA ()}>Previous</a> </body> </xml> and pageC' r = pageC (Some r.Surname) and pageC surname = return <xml> <head> <title>C</title> </head> <body> <p>Hello {[forename]}{case surname of None => <xml/> | Some s => <xml> {[s]}</xml>}</p> {case surname of None => <xml><a link={pageA ()}>Previous</a></xml> | Some _ => <xml><a link={pageB ()}>Previous</a></xml>} </body> </xml> in if r.EnterSurname then pageB () else pageC None end val main = pageA