File tree Expand file tree Collapse file tree 4 files changed +96
-1
lines changed
Expand file tree Collapse file tree 4 files changed +96
-1
lines changed Original file line number Diff line number Diff line change @@ -10,8 +10,11 @@ CREATE FUNCTION eql_v2.blake3(val jsonb)
1010 IMMUTABLE STRICT PARALLEL SAFE
1111AS $$
1212 BEGIN
13+ IF val IS NULL THEN
14+ RETURN NULL ;
15+ END IF;
1316
14- IF NOT (val ? ' b3' ) NULL THEN
17+ IF NOT (val ? ' b3' ) THEN
1518 RAISE ' Expected a blake3 index (b3) value in json: %' , val;
1619 END IF;
1720
3437 RETURN (SELECT eql_v2 .blake3 (val .data ));
3538 END;
3639$$ LANGUAGE plpgsql;
40+
41+
42+ CREATE FUNCTION eql_v2 .has_blake3(val jsonb)
43+ RETURNS boolean
44+ IMMUTABLE STRICT PARALLEL SAFE
45+ AS $$
46+ BEGIN
47+ RETURN val ? ' b3' ;
48+ END;
49+ $$ LANGUAGE plpgsql;
50+
51+
52+ CREATE FUNCTION eql_v2 .has_blake3(val eql_v2_encrypted)
53+ RETURNS boolean
54+ IMMUTABLE STRICT PARALLEL SAFE
55+ AS $$
56+ BEGIN
57+ RETURN eql_v2 .has_blake3 (val .data );
58+ END;
59+ $$ LANGUAGE plpgsql;
60+
Original file line number Diff line number Diff line change @@ -8,9 +8,14 @@ CREATE FUNCTION eql_v2.bloom_filter(val jsonb)
88 IMMUTABLE STRICT PARALLEL SAFE
99AS $$
1010 BEGIN
11+ IF val IS NULL THEN
12+ RETURN NULL ;
13+ END IF;
14+
1115 IF val ? ' bf' THEN
1216 RETURN ARRAY(SELECT jsonb_array_elements(val- > ' bf' ))::eql_v2 .bloom_filter ;
1317 END IF;
18+
1419 RAISE ' Expected a match index (bf) value in json: %' , val;
1520 END;
1621$$ LANGUAGE plpgsql;
2631 RETURN (SELECT eql_v2 .bloom_filter (val .data ));
2732 END;
2833$$ LANGUAGE plpgsql;
34+
35+
36+ CREATE FUNCTION eql_v2 .has_bloom_filter(val jsonb)
37+ RETURNS boolean
38+ IMMUTABLE STRICT PARALLEL SAFE
39+ AS $$
40+ BEGIN
41+ RETURN val ? ' bf' ;
42+ END;
43+ $$ LANGUAGE plpgsql;
44+
45+
46+ CREATE FUNCTION eql_v2 .has_bloom_filter(val eql_v2_encrypted)
47+ RETURNS boolean
48+ IMMUTABLE STRICT PARALLEL SAFE
49+ AS $$
50+ BEGIN
51+ RETURN eql_v2 .has_bloom_filter (val .data );
52+ END;
53+ $$ LANGUAGE plpgsql;
Original file line number Diff line number Diff line change @@ -13,6 +13,9 @@ CREATE FUNCTION eql_v2.ore_cllw_u64_8(val jsonb)
1313 IMMUTABLE STRICT PARALLEL SAFE
1414AS $$
1515 BEGIN
16+ IF val IS NULL THEN
17+ RETURN NULL ;
18+ END IF;
1619
1720 IF NOT (val ? ' ocf' ) THEN
1821 RAISE ' Expected a ore_cllw_u64_8 index (ocf) value in json: %' , val;
3942$$ LANGUAGE plpgsql;
4043
4144
45+ CREATE FUNCTION eql_v2 .has_ore_cllw_u64_8(val jsonb)
46+ RETURNS boolean
47+ IMMUTABLE STRICT PARALLEL SAFE
48+ AS $$
49+ BEGIN
50+ RETURN val ? ' ocf' ;
51+ END;
52+ $$ LANGUAGE plpgsql;
53+
54+
55+ CREATE FUNCTION eql_v2 .has_ore_cllw_u64_8(val eql_v2_encrypted)
56+ RETURNS boolean
57+ IMMUTABLE STRICT PARALLEL SAFE
58+ AS $$
59+ BEGIN
60+ RETURN eql_v2 .has_ore_cllw_u64_8 (val .data );
61+ END;
62+ $$ LANGUAGE plpgsql;
63+
64+
4265
4366--
4467-- Compare ore cllw bytes
Original file line number Diff line number Diff line change @@ -13,6 +13,10 @@ CREATE FUNCTION eql_v2.ore_cllw_var_8(val jsonb)
1313AS $$
1414 BEGIN
1515
16+ IF val IS NULL THEN
17+ RETURN NULL ;
18+ END IF;
19+
1620 IF NOT (val ? ' ocv' ) THEN
1721 RAISE ' Expected a ore_cllw_var_8 index (ocv) value in json: %' , val;
1822 END IF;
3842$$ LANGUAGE plpgsql;
3943
4044
45+ CREATE FUNCTION eql_v2 .has_ore_cllw_var_8(val jsonb)
46+ RETURNS boolean
47+ IMMUTABLE STRICT PARALLEL SAFE
48+ AS $$
49+ BEGIN
50+ RETURN val ? ' ocv' ;
51+ END;
52+ $$ LANGUAGE plpgsql;
53+
54+
55+ CREATE FUNCTION eql_v2 .has_ore_cllw_var_8(val eql_v2_encrypted)
56+ RETURNS boolean
57+ IMMUTABLE STRICT PARALLEL SAFE
58+ AS $$
59+ BEGIN
60+ RETURN eql_v2 .has_ore_cllw_var_8 (val .data );
61+ END;
62+ $$ LANGUAGE plpgsql;
63+
4164
4265CREATE FUNCTION eql_v2 .compare_ore_cllw_var_8(a eql_v2 .ore_cllw_var_8 , b eql_v2 .ore_cllw_var_8 )
4366RETURNS int AS $$
You can’t perform that action at this time.
0 commit comments