diff options
author | Adam Chlipala <adamc@hcoop.net> | 2009-10-20 10:19:00 -0400 |
---|---|---|
committer | Adam Chlipala <adamc@hcoop.net> | 2009-10-20 10:19:00 -0400 |
commit | aece9fdadf1bdfbf069cc5ac5ab397eef1e3f2ad (patch) | |
tree | 800ab89ca52c3ef6e7df0f9420292131459f0e47 /demo/more/conference.urs | |
parent | e177d0dd0db2639bd056e81296f2f0f5c930ad5f (diff) |
Add tuple pattern-matching at the constructor level
Diffstat (limited to 'demo/more/conference.urs')
-rw-r--r-- | demo/more/conference.urs | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/demo/more/conference.urs b/demo/more/conference.urs new file mode 100644 index 00000000..696b8b32 --- /dev/null +++ b/demo/more/conference.urs @@ -0,0 +1,20 @@ +con reviewMeta = fn (db :: Type, widget :: Type) => + {Show : db -> xbody, + Widget : nm :: Name -> xml form [] [nm = widget], + WidgetPopulated : nm :: Name -> db -> xml form [] [nm = widget], + Parse : widget -> db, + Inject : sql_injectable db} + +val int : reviewMeta (int, string) +val float : reviewMeta (float, string) +val string : reviewMeta (string, string) +val bool : reviewMeta (bool, bool) + +functor Make(M : sig + con review :: {(Type * Type)} + val review : $(map reviewMeta review) + end) : sig + + val main : unit -> transaction page + +end |