Mercurial > urweb
annotate demo/metaform.ur @ 1904:686fa4e7f397
xml/parse: Accept entity files on the command line
Signed-off-by: Anders Kaseorg <andersk@mit.edu>
---
Makefile.am | 2 +-
xml/parse.sml | 4 +---
2 files changed, 2 insertions(+), 4 deletions(-)
author | Anders Kaseorg <andersk@mit.edu> |
---|---|
date | Fri, 22 Nov 2013 09:36:14 -0500 |
parents | c7b9a33c26c8 |
children |
rev | line source |
---|---|
adamc@418 | 1 functor Make (M : sig |
adamc@418 | 2 con fs :: {Unit} |
adamc@632 | 3 val fl : folder fs |
adamc@643 | 4 val names : $(mapU string fs) |
adamc@418 | 5 end) = struct |
adamc@418 | 6 |
adamc@418 | 7 fun handler values = return <xml><body> |
adamc@1176 | 8 {@mapUX2 [string] [string] [body] |
adam@1302 | 9 (fn [nm :: Name] [rest ::_] [[nm] ~ rest] name value => <xml> |
adamc@1093 | 10 <li> {[name]} = {[value]}</li> |
adamc@1093 | 11 </xml>) |
adamc@1093 | 12 M.fl M.names values} |
adamc@418 | 13 </body></xml> |
adamc@418 | 14 |
adamc@418 | 15 fun main () = return <xml><body> |
adamc@418 | 16 <form> |
adam@1302 | 17 {@foldUR [string] [fn cols => xml form [] (mapU string cols)] |
adam@1303 | 18 (fn [nm :: Name] [rest ::_] [[nm] ~ rest] name acc => <xml> |
adam@1303 | 19 <li> {[name]}: <textbox{nm}/></li> |
adam@1303 | 20 {useMore acc} |
adam@1303 | 21 </xml>) |
adamc@1093 | 22 <xml/> |
adamc@1093 | 23 M.fl M.names} |
adamc@418 | 24 <submit action={handler}/> |
adamc@418 | 25 </form> |
adamc@418 | 26 </body></xml> |
adamc@418 | 27 |
adamc@418 | 28 end |