aboutsummaryrefslogtreecommitdiffhomepage
path: root/demo/more/orm.urs
diff options
context:
space:
mode:
authorGravatar Adam Chlipala <adamc@hcoop.net>2009-10-05 16:36:38 -0400
committerGravatar Adam Chlipala <adamc@hcoop.net>2009-10-05 16:36:38 -0400
commit78e557c3b405113b62bc945382415895860a5825 (patch)
tree4bb99b24aa10939567424dd11c6c414094f8fe4f /demo/more/orm.urs
parentd795d3e7d07b8770335b414fd1b0d32af41016c5 (diff)
Better location calculation for record unification error messages; infer kind arguments to module-projected variables
Diffstat (limited to 'demo/more/orm.urs')
-rw-r--r--demo/more/orm.urs19
1 files changed, 19 insertions, 0 deletions
diff --git a/demo/more/orm.urs b/demo/more/orm.urs
new file mode 100644
index 00000000..8fab3ae8
--- /dev/null
+++ b/demo/more/orm.urs
@@ -0,0 +1,19 @@
+con link :: Type -> Type
+
+con meta = fn col :: Type => {
+ Link : link col,
+ Inj : sql_injectable col
+ }
+
+functor Table(M : sig
+ con cols :: {Type}
+ val cols : $(map meta cols)
+ constraint [Id] ~ cols
+ val folder : folder cols
+ end) : sig
+ type id
+ val inj : sql_injectable id
+ val id : meta id
+
+ val create : $M.cols -> transaction id
+end