Mercurial > urweb
comparison demo/more/versioned.urs @ 995:166ea3944b91
Versioned1 demo working
author | Adam Chlipala <adamc@hcoop.net> |
---|---|
date | Tue, 06 Oct 2009 17:36:45 -0400 |
parents | 10114d7b7477 |
children |
comparison
equal
deleted
inserted
replaced
994:7932d577cf78 | 995:166ea3944b91 |
---|---|
1 functor Make(M : sig | 1 functor Make(M : sig |
2 con key :: {Type} | 2 con key :: {Type} |
3 con data :: {Type} | 3 con data :: {Type} |
4 constraint key ~ data | 4 constraint key ~ data |
5 constraint [When] ~ (key ++ data) | 5 constraint [When, Version] ~ (key ++ data) |
6 | 6 |
7 val key : $(map sql_injectable key) | 7 val key : $(map sql_injectable key) |
8 val data : $(map (fn t => {Inj : sql_injectable_prim t, | 8 val data : $(map (fn t => {Inj : sql_injectable_prim t, |
9 Eq : eq t}) data) | 9 Eq : eq t}) data) |
10 | 10 |
14 val insert : $(M.key ++ M.data) -> transaction unit | 14 val insert : $(M.key ++ M.data) -> transaction unit |
15 val update : $(M.key ++ M.data) -> transaction unit | 15 val update : $(M.key ++ M.data) -> transaction unit |
16 | 16 |
17 val keys : transaction (list $M.key) | 17 val keys : transaction (list $M.key) |
18 val current : $M.key -> transaction (option $M.data) | 18 val current : $M.key -> transaction (option $M.data) |
19 | |
20 type version | |
21 val keysAt : version -> transaction (list $M.key) | |
22 val archive : version -> $M.key -> transaction (option $M.data) | |
23 val updateTimes : transaction (list (version * time)) | |
19 end | 24 end |