Mercurial > urweb
view demo/refFun.ur @ 1906:0d2fdc2cc46c
Allow building in a separate build directory
Signed-off-by: Anders Kaseorg <andersk@mit.edu>
---
Makefile.am | 30 +++---
src/c/Makefile.am | 2 +-
src/compiler.mlb | 2 +-
src/sources | 302 +++++++++++++++++++++++++++---------------------------
4 files changed, 168 insertions(+), 168 deletions(-)
author | Anders Kaseorg <andersk@mit.edu> |
---|---|
date | Fri, 22 Nov 2013 09:36:14 -0500 |
parents | 1a317a707d71 |
children |
line wrap: on
line source
functor Make(M : sig type data val inj : sql_injectable data end) = struct type ref = int sequence s table t : { Id : int, Data : M.data } PRIMARY KEY Id fun new d = id <- nextval s; dml (INSERT INTO t (Id, Data) VALUES ({[id]}, {[d]})); return id fun read r = o <- oneOrNoRows (SELECT t.Data FROM t WHERE t.Id = {[r]}); case o of None => error <xml>You already deleted that ref!</xml> | Some r => return r.T.Data fun write r d = dml (UPDATE t SET Data = {[d]} WHERE Id = {[r]}) fun delete r = dml (DELETE FROM t WHERE Id = {[r]}) end