annotate demo/crud.urs @ 1905:cd1cfecc8c72
Remove autogenerated config.h.in from version control
Signed-off-by: Anders Kaseorg <andersk@mit.edu>
---
.hgignore | 1 +
include/urweb/config.h.in | 104 ----------------------------------------------
2 files changed, 1 insertion(+), 104 deletions(-)
delete mode 100644 include/urweb/config.h.in
author |
Anders Kaseorg <andersk@mit.edu> |
date |
Fri, 22 Nov 2013 09:36:14 -0500 |
parents |
bb3fc575cfe7 |
children |
|
rev |
line source |
adamc@1002
|
1 con colMeta = fn (db :: Type, widget :: Type) =>
|
adamc@421
|
2 {Nam : string,
|
adamc@1002
|
3 Show : db -> xbody,
|
adamc@1002
|
4 Widget : nm :: Name -> xml form [] [nm = widget],
|
adamc@1002
|
5 WidgetPopulated : nm :: Name -> db -> xml form [] [nm = widget],
|
adamc@1002
|
6 Parse : widget -> db,
|
adamc@1002
|
7 Inject : sql_injectable db}
|
adamc@622
|
8 con colsMeta = fn cols :: {(Type * Type)} => $(map colMeta cols)
|
adamc@421
|
9
|
adamc@421
|
10 val int : string -> colMeta (int, string)
|
adamc@421
|
11 val float : string -> colMeta (float, string)
|
adamc@421
|
12 val string : string -> colMeta (string, string)
|
adamc@421
|
13 val bool : string -> colMeta (bool, bool)
|
adamc@421
|
14
|
adamc@421
|
15 functor Make(M : sig
|
adamc@421
|
16 con cols :: {(Type * Type)}
|
adamc@421
|
17 constraint [Id] ~ cols
|
adamc@632
|
18 val fl : folder cols
|
adamc@632
|
19
|
adamc@706
|
20 table tab : ([Id = int] ++ map fst cols)
|
adamc@421
|
21
|
adamc@421
|
22 val title : string
|
adamc@421
|
23
|
adamc@421
|
24 val cols : colsMeta cols
|
adamc@421
|
25 end) : sig
|
adamc@421
|
26 val main : unit -> transaction page
|
adamc@421
|
27 end
|