view 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
line wrap: on
line source
functor Make (M : sig
                  con fs :: {Unit}
                  val fl : folder fs
                  val names : $(mapU string fs)
              end) = struct

    fun handler values = return <xml><body>
      {@mapUX2 [string] [string] [body]
        (fn [nm :: Name] [rest ::_] [[nm] ~ rest] name value => <xml>
          <li> {[name]} = {[value]}</li>
        </xml>)
        M.fl M.names values}
    </body></xml>

    fun main () = return <xml><body>
      <form>
        {@foldUR [string] [fn cols => xml form [] (mapU string cols)]
          (fn [nm :: Name] [rest ::_] [[nm] ~ rest] name acc => <xml>
            <li> {[name]}: <textbox{nm}/></li>
            {useMore acc}
          </xml>)
          <xml/>
          M.fl M.names}
        <submit action={handler}/>
      </form>
    </body></xml>

end