55
66
77--
8- -- The -> operator returns an encrypted matching the selector
8+ -- The -> operator returns an encrypted matching the provided selector
9+ --
910-- Encyprted JSON is represented as an array of `eql_v2_encrypted`.
10- -- Each `eql_v2_encrypted` value has a selector, ciphertext, and an index term of
11- -- - blake3
12- -- - ore_cllw_u64_8
13- -- - ore_cllw_var_8
11+ -- Each `eql_v2_encrypted` value has a selector, ciphertext, and an index term
1412--
1513-- {
1614-- "sv": [ {"c": "", "s": "", "b3": "" } ]
1715-- }
1816--
19-
20-
2117CREATE FUNCTION eql_v2 ." ->" (e eql_v2_encrypted, selector text )
2218 RETURNS eql_v2_encrypted
2319 IMMUTABLE STRICT PARALLEL SAFE
@@ -43,10 +39,35 @@ AS $$
4339 END;
4440$$ LANGUAGE plpgsql;
4541
42+ CREATE OPERATOR - > (
43+ FUNCTION= eql_v2." ->" ,
44+ LEFTARG= eql_v2_encrypted,
45+ RIGHTARG= text
46+ );
47+
4648
47- --
49+ -- -------------------------------------------------
4850
4951
52+ CREATE FUNCTION eql_v2 ." ->" (e eql_v2_encrypted, selector eql_v2_encrypted)
53+ RETURNS eql_v2_encrypted
54+ IMMUTABLE STRICT PARALLEL SAFE
55+ AS $$
56+ BEGIN
57+ RETURN eql_v2." ->" (e, eql_v2 .selector (selector));
58+ END;
59+ $$ LANGUAGE plpgsql;
60+
61+
62+
63+ CREATE OPERATOR - > (
64+ FUNCTION= eql_v2." ->" ,
65+ LEFTARG= eql_v2_encrypted,
66+ RIGHTARG= eql_v2_encrypted
67+ );
68+
69+
70+ -- -------------------------------------------------
5071
5172
5273CREATE FUNCTION eql_v2 ." ->" (e eql_v2_encrypted, selector integer )
7697$$ LANGUAGE plpgsql;
7798
7899
79- CREATE OPERATOR - > (
80- FUNCTION= eql_v2." ->" ,
81- LEFTARG= eql_v2_encrypted,
82- RIGHTARG= text
83- );
100+
84101
85102
86103CREATE OPERATOR - > (
0 commit comments