view demo/batchFun.urs @ 2142:3288e3c9948b

Fix XML indentation in Emacs mode The return value of MATCH-STRING is a string. At least on Emacs 25, the comparisons between string and character with EQUAL could never succeed, and so the cases for matching braces were never triggered. GET-TEXT-PROPERTY may return a list rather than an atom (for example, on long lines with whitespace-mode turned on), and this broke the heuristic of looking for the tag face in previous text.
author Julian Squires <julian@cipht.net>
date Mon, 04 May 2015 14:35:07 -0400
parents bb3fc575cfe7
children
line wrap: on
line source
con colMeta = fn (db :: Type, state :: Type) =>
                 {Nam : string,
                  Show : db -> xbody,
                  Inject : sql_injectable db,

                  NewState : transaction state,
                  Widget : state -> xbody,
                  ReadState : state -> transaction db}
con colsMeta = fn cols :: {(Type * Type)} => $(map colMeta cols)

val int : string -> colMeta (int, source string)
val float : string -> colMeta (float, source string)
val string : string -> colMeta (string, source string)

functor Make(M : sig
                 con cols :: {(Type * Type)}
                 constraint [Id] ~ cols
                 val fl : folder cols

                 table tab : ([Id = int] ++ map fst cols)

                 val title : string

                 val cols : colsMeta cols
             end) : sig
    val main : unit -> transaction page
end