Skip to content

Commit 2e5aa78

Browse files
committed
Genealise equality operators
1 parent 1bcce1f commit 2e5aa78

File tree

1 file changed

+20
-10
lines changed

1 file changed

+20
-10
lines changed

sql/015-operators-unique.sql renamed to sql/015-operators-eq.sql

Lines changed: 20 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,8 @@ DROP FUNCTION IF EXISTS cs_encrypted_eq_v1(a cs_encrypted_v1, b cs_encrypted_v1)
1515

1616
CREATE FUNCTION cs_encrypted_eq_v1(a cs_encrypted_v1, b cs_encrypted_v1)
1717
RETURNS boolean AS $$
18-
SELECT cs_unique_v1(a) = cs_unique_v1(b);
18+
SELECT cs_unique_v1(a) = cs_unique_v1(b) OR
19+
cs_ore_64_8_v1(a) = cs_ore_64_8_v1(b);
1920
$$ LANGUAGE SQL;
2021

2122
CREATE OPERATOR = (
@@ -34,7 +35,8 @@ DROP FUNCTION IF EXISTS cs_encrypted_eq_v1(a cs_encrypted_v1, b jsonb);
3435

3536
CREATE FUNCTION cs_encrypted_eq_v1(a cs_encrypted_v1, b jsonb)
3637
RETURNS boolean AS $$
37-
SELECT cs_unique_v1(a) = cs_unique_v1(b);
38+
SELECT cs_unique_v1(a) = cs_unique_v1(b) OR
39+
cs_ore_64_8_v1(a) = cs_ore_64_8_v1(b);
3840
$$ LANGUAGE SQL;
3941

4042
CREATE OPERATOR = (
@@ -53,7 +55,8 @@ DROP FUNCTION IF EXISTS cs_encrypted_eq_v1(a jsonb, b cs_encrypted_v1);
5355

5456
CREATE FUNCTION cs_encrypted_eq_v1(a jsonb, b cs_encrypted_v1)
5557
RETURNS boolean AS $$
56-
SELECT cs_unique_v1(a) = cs_unique_v1(b);
58+
SELECT cs_unique_v1(a) = cs_unique_v1(b) OR
59+
cs_ore_64_8_v1(a) = cs_ore_64_8_v1(b);
5760
$$ LANGUAGE SQL;
5861

5962
CREATE OPERATOR = (
@@ -73,7 +76,8 @@ DROP FUNCTION IF EXISTS cs_encrypted_eq_v1(a cs_encrypted_v1, b cs_unique_index_
7376

7477
CREATE FUNCTION cs_encrypted_eq_v1(a cs_encrypted_v1, b cs_unique_index_v1)
7578
RETURNS boolean AS $$
76-
SELECT cs_unique_v1(a) = b;
79+
SELECT cs_unique_v1(a) = b OR
80+
cs_ore_64_8_v1(a) = b;
7781
$$ LANGUAGE SQL;
7882

7983
CREATE OPERATOR = (
@@ -92,7 +96,8 @@ DROP FUNCTION IF EXISTS cs_encrypted_eq_v1(a cs_unique_index_v1, b cs_encrypted_
9296

9397
CREATE FUNCTION cs_encrypted_eq_v1(a cs_unique_index_v1, b cs_encrypted_v1)
9498
RETURNS boolean AS $$
95-
SELECT a = cs_unique_v1(b);
99+
SELECT a = cs_unique_v1(b) OR
100+
a = cs_ore_64_8_v1(b);
96101
$$ LANGUAGE SQL;
97102

98103
CREATE OPERATOR =(
@@ -115,7 +120,8 @@ DROP FUNCTION IF EXISTS cs_encrypted_neq_v1(a cs_encrypted_v1, b cs_encrypted_v1
115120

116121
CREATE FUNCTION cs_encrypted_neq_v1(a cs_encrypted_v1, b cs_encrypted_v1)
117122
RETURNS boolean AS $$
118-
SELECT cs_unique_v1(a) <> cs_unique_v1(b);
123+
SELECT cs_unique_v1(a) <> cs_unique_v1(b) OR
124+
cs_ore_64_8_v1(a) <> cs_ore_64_8_v1(b);
119125
$$ LANGUAGE SQL;
120126

121127
CREATE OPERATOR <> (
@@ -135,7 +141,8 @@ DROP FUNCTION IF EXISTS cs_encrypted_neq_v1(a cs_encrypted_v1, b jsonb);
135141

136142
CREATE FUNCTION cs_encrypted_neq_v1(a cs_encrypted_v1, b jsonb)
137143
RETURNS boolean AS $$
138-
SELECT cs_unique_v1(a) <> cs_unique_v1(b);
144+
SELECT cs_unique_v1(a) <> cs_unique_v1(b) OR
145+
cs_ore_64_8_v1(a) <> cs_ore_64_8_v1(b);
139146
$$ LANGUAGE SQL;
140147

141148
CREATE OPERATOR <> (
@@ -155,7 +162,8 @@ DROP FUNCTION IF EXISTS cs_encrypted_neq_v1(a jsonb, b cs_encrypted_v1);
155162

156163
CREATE FUNCTION cs_encrypted_neq_v1(a jsonb, b cs_encrypted_v1)
157164
RETURNS boolean AS $$
158-
SELECT cs_unique_v1(a) <> cs_unique_v1(b);
165+
SELECT cs_unique_v1(a) <> cs_unique_v1(b) OR
166+
cs_ore_64_8_v1(a) <> cs_ore_64_8_v1(b);
159167
$$ LANGUAGE SQL;
160168

161169
CREATE OPERATOR <> (
@@ -175,7 +183,8 @@ DROP FUNCTION IF EXISTS cs_encrypted_neq_v1(a cs_encrypted_v1, b cs_unique_index
175183

176184
CREATE FUNCTION cs_encrypted_neq_v1(a cs_encrypted_v1, b cs_unique_index_v1)
177185
RETURNS boolean AS $$
178-
SELECT cs_unique_v1(a) <> b;
186+
SELECT cs_unique_v1(a) <> b OR
187+
cs_ore_64_8_v1(a) <> b;
179188
$$ LANGUAGE SQL;
180189

181190
CREATE OPERATOR <> (
@@ -195,7 +204,8 @@ DROP FUNCTION IF EXISTS cs_encrypted_neq_v1(a cs_unique_index_v1, b cs_encrypted
195204

196205
CREATE FUNCTION cs_encrypted_neq_v1(a cs_unique_index_v1, b cs_encrypted_v1)
197206
RETURNS boolean AS $$
198-
SELECT a <> cs_unique_v1(b);
207+
SELECT a <> cs_unique_v1(b) OR
208+
a <> cs_ore_64_8_v1(b);
199209
$$ LANGUAGE SQL;
200210

201211
CREATE OPERATOR <> (

0 commit comments

Comments
 (0)