diff options
author | Adam Chlipala <adamc@hcoop.net> | 2008-09-13 20:04:28 -0400 |
---|---|---|
committer | Adam Chlipala <adamc@hcoop.net> | 2008-09-13 20:04:28 -0400 |
commit | b145e03e5e25cfd59f544312efe3ea93e265a8ce (patch) | |
tree | 63178c623e47e45b58631910c533721505226647 /tests | |
parent | 291fe704e9a5be0a71cd03418ec5229c99910898 (diff) |
Crud gets column headings
Diffstat (limited to 'tests')
-rw-r--r-- | tests/crud.ur | 17 | ||||
-rw-r--r-- | tests/crud.urs | 2 | ||||
-rw-r--r-- | tests/crud1.ur | 8 |
3 files changed, 18 insertions, 9 deletions
diff --git a/tests/crud.ur b/tests/crud.ur index 7f0fc71c..c596eaad 100644 --- a/tests/crud.ur +++ b/tests/crud.ur @@ -1,4 +1,4 @@ -con colMeta' = fn t :: Type => {Show : t -> xbody} +con colMeta' = fn t :: Type => {Nam : string, Show : t -> xbody} con colMeta = fn cols :: {Type} => $(Top.mapTT colMeta' cols) functor Make(M : sig @@ -22,8 +22,8 @@ fun main () : transaction page = {foldTRX2 [idT] [colMeta'] [tr] (fn (nm :: Name) (t :: Type) (rest :: {Type}) => [[nm] ~ rest] => - fn v funcs => <tr> - <td>{funcs.Show v}</td> + fn v col => <tr> + <td>{col.Show v}</td> </tr>) [M.cols] (fs.T -- #Id) M.cols} </tr> @@ -36,7 +36,16 @@ fun main () : transaction page = <h1>{cdata M.title}</h1> <table border={1}> - <tr> <th>ID</th> </tr> + <tr> + <th>ID</th> + {foldTRX [colMeta'] [tr] + (fn (nm :: Name) (t :: Type) (rest :: {Type}) => + [[nm] ~ rest] => + fn col => <tr> + <th>{cdata col.Nam}</th> + </tr>) + [M.cols] M.cols} + </tr> {rows} </table> </body></html> diff --git a/tests/crud.urs b/tests/crud.urs index 4741af00..988c5458 100644 --- a/tests/crud.urs +++ b/tests/crud.urs @@ -1,4 +1,4 @@ -con colMeta' = fn t :: Type => {Show : t -> xbody} +con colMeta' = fn t :: Type => {Nam : string, Show : t -> xbody} con colMeta = fn cols :: {Type} => $(Top.mapTT colMeta' cols) functor Make(M : sig diff --git a/tests/crud1.ur b/tests/crud1.ur index 2253d459..f9d67ed8 100644 --- a/tests/crud1.ur +++ b/tests/crud1.ur @@ -6,9 +6,9 @@ open Crud.Make(struct val title = "Crud1" val cols = { - A = {Show = txt _}, - B = {Show = txt _}, - C = {Show = txt _}, - D = {Show = txt _} + A = {Nam = "A", Show = txt _}, + B = {Nam = "B", Show = txt _}, + C = {Nam = "C", Show = txt _}, + D = {Nam = "D", Show = txt _} } end) |