Mercurial > urweb
annotate demo/more/versioned.urs @ 993:10114d7b7477
SELECT DISTINCT; eta expansion during Cjrization
author | Adam Chlipala <adamc@hcoop.net> |
---|---|
date | Tue, 06 Oct 2009 15:39:27 -0400 |
parents | |
children | 166ea3944b91 |
rev | line source |
---|---|
adamc@993 | 1 functor Make(M : sig |
adamc@993 | 2 con key :: {Type} |
adamc@993 | 3 con data :: {Type} |
adamc@993 | 4 constraint key ~ data |
adamc@993 | 5 constraint [When] ~ (key ++ data) |
adamc@993 | 6 |
adamc@993 | 7 val key : $(map sql_injectable key) |
adamc@993 | 8 val data : $(map (fn t => {Inj : sql_injectable_prim t, |
adamc@993 | 9 Eq : eq t}) data) |
adamc@993 | 10 |
adamc@993 | 11 val keyFolder : folder key |
adamc@993 | 12 val dataFolder : folder data |
adamc@993 | 13 end) : sig |
adamc@993 | 14 val insert : $(M.key ++ M.data) -> transaction unit |
adamc@993 | 15 val update : $(M.key ++ M.data) -> transaction unit |
adamc@993 | 16 |
adamc@993 | 17 val keys : transaction (list $M.key) |
adamc@993 | 18 val current : $M.key -> transaction (option $M.data) |
adamc@993 | 19 end |