summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorGravatar Adam Chlipala <adam@chlipala.net>2019-12-04 09:19:55 -0500
committerGravatar Adam Chlipala <adam@chlipala.net>2019-12-04 09:19:55 -0500
commit2bca6e48c0ea8043c5300f4ebdefa5167e6472bf (patch)
tree1c61579ca6a1e1b8e8cbe309302c33857b191181 /lib
parent73c287964e8d41d9b3b53a81f0ace3f509dc6a20 (diff)
SQL SIMILAR (via pg_trgm)
Diffstat (limited to 'lib')
-rw-r--r--lib/ur/basis.urs10
1 files changed, 10 insertions, 0 deletions
diff --git a/lib/ur/basis.urs b/lib/ur/basis.urs
index a97c2855..dda48d2b 100644
--- a/lib/ur/basis.urs
+++ b/lib/ur/basis.urs
@@ -623,6 +623,16 @@ val sql_known : t ::: Type -> sql_ufunc t bool
val sql_lower : sql_ufunc string string
val sql_upper : sql_ufunc string string
+con sql_bfunc :: Type -> Type -> Type -> Type
+val sql_bfunc : tables ::: {{Type}} -> agg ::: {{Type}} -> exps ::: {Type}
+ -> dom1 ::: Type -> dom2 ::: Type -> ran ::: Type
+ -> sql_bfunc dom1 dom2 ran
+ -> sql_exp tables agg exps dom1
+ -> sql_exp tables agg exps dom2
+ -> sql_exp tables agg exps ran
+val sql_similarity : sql_bfunc string string float
+(* Only supported by Postgres for now, via the pg_trgm module *)
+
val sql_nullable : tables ::: {{Type}} -> agg ::: {{Type}} -> exps ::: {Type} -> t ::: Type
-> sql_injectable_prim t
-> sql_exp tables agg exps t