diff --git a/.changeset/eql-cross-query-domain-blockers.md b/.changeset/eql-cross-query-domain-blockers.md new file mode 100644 index 0000000000..e7b840d4d0 --- /dev/null +++ b/.changeset/eql-cross-query-domain-blockers.md @@ -0,0 +1,6 @@ +--- +"@cipherstash/eql": patch +"stash": patch +--- + +Comparing an encrypted column with a different domain's query operand now raises instead of silently returning no rows. For example `public.eql_v3_text_ord = $1::eql_v3.query_text_eq`, or `eql_v3_text_ord < $1::eql_v3.query_text_ord_ope`, previously fell through to native `jsonb` comparison and answered false for equal values. Within a type family, every pair of a column domain and another domain's query operand now resolves to a blocker for the operators both sides support, naming both operands and telling the caller to use the query domain that matches the column. Use the query domain of the column's own domain (`eql_v3.query_`). The install bundle grows by about 1,060 functions and the same number of operators, so a single-transaction uninstall now takes about 8,550 locks (up from about 6,400); raise `max_locks_per_transaction` on busy clusters. diff --git a/packages/eql/crates/eql-codegen/src/context.rs b/packages/eql/crates/eql-codegen/src/context.rs index d05eccabbe..4d0e7380f9 100644 --- a/packages/eql/crates/eql-codegen/src/context.rs +++ b/packages/eql/crates/eql-codegen/src/context.rs @@ -229,6 +229,12 @@ pub enum FnEntry { function_name: String, // e.g. lt / "->" / "#>" args: [SqlParam; 2], returns: String, // boolean / text / jsonb / domain (selection STAYS in Rust) + // `Some(" and ")` (sql_str-escaped) for a blocker that rejects a + // storage domain paired with ANOTHER domain's query twin: the template + // then emits compact docs (there is one per ordered pair of domains in a + // family) and a message naming both operands. `None` for every other + // blocker. + mismatch: Option, }, } @@ -311,6 +317,30 @@ pub fn unsupported_entry(op: &Operator, args: [SqlParam; 2], returns: &str) -> F function_name: op.function_name.to_string(), args, returns: returns.to_string(), + mismatch: None, + } +} + +/// Build a blocker for a storage domain paired with another domain's query twin +/// (see [`FnEntry::Unsupported::mismatch`]). Same marker text as every other +/// blocker, so the lints that recognise blockers by message keep seeing it. +pub fn mismatch_blocker_entry(op: &Operator, args: [SqlParam; 2], returns: &str) -> FnEntry { + let operands = sql_str(&format!("{} and {}", args[0].ty, args[1].ty)); + match unsupported_entry(op, args, returns) { + FnEntry::Unsupported { + operator_lit, + function_name, + args, + returns, + .. + } => FnEntry::Unsupported { + operator_lit, + function_name, + args, + returns, + mismatch: Some(operands), + }, + other => other, } } diff --git a/packages/eql/crates/eql-codegen/src/generate.rs b/packages/eql/crates/eql-codegen/src/generate.rs index 25466237ab..77a3cfdd49 100644 --- a/packages/eql/crates/eql-codegen/src/generate.rs +++ b/packages/eql/crates/eql-codegen/src/generate.rs @@ -5,7 +5,7 @@ use std::path::{Path, PathBuf}; use eql_domains::{Domain, DomainFamily, Role, Term}; use crate::context::{domain_name, is_ord_capable, query_domain_name}; -use crate::operator_surface::OPERATORS; +use crate::operator_surface::{Operator, OperatorSignature, TypeSlot, OPERATORS}; /// REQUIRE edge for the v3 schema file — pulled in by every generated file. const V3_SCHEMA: &str = "src/v3/schema.sql"; @@ -248,6 +248,47 @@ fn query_types_path(family_name: &str) -> String { scalar_path(family_name, &format!("query_{family_name}_types.sql")) } +/// The family's term-bearing storage domains OTHER than `domain` — the operands +/// that must never be compared with `domain`'s query twin. Storage-only domains +/// (no terms, no operators) are left out: every pair costs two schema objects +/// (see [`cross_pair_operators`]). +fn cross_pair_domains(spec: &DomainFamily, domain: &Domain) -> Vec<&'static Domain> { + spec.domains + .iter() + .filter(|d| d.is_scalar() && d.name != domain.name && !d.terms.is_empty()) + .collect() +} + +/// The operators (with their `(domain, domain)` signature) blocked for a +/// `(sibling storage domain, this domain's query twin)` pair: those BOTH domains +/// advertise. A query twin of a different domain is a DIFFERENT index family, so +/// there is no sound comparison to offer — the pair raises rather than flatten to +/// native `jsonb jsonb`. +/// +/// The intersection, not the union, is deliberate. Each blocked pair costs a +/// function and an operator, and the uninstaller takes a lock per object against +/// a stock budget it already approaches (docs/upgrading/v3.0.md, U-009), so the +/// set is held to the operators a caller can reasonably believe both sides +/// support. The remaining unblocked cases name an operator one side does not +/// support at all, which is a second mistake on top of the wrong query domain. +fn cross_pair_operators( + domain: &Domain, + sibling: &Domain, +) -> Vec<(&'static Operator, OperatorSignature)> { + let ours = Term::operators_for_terms(domain.terms); + let theirs = Term::operators_for_terms(sibling.terms); + OPERATORS + .iter() + .filter(|op| ours.contains(&op.symbol.as_str()) && theirs.contains(&op.symbol.as_str())) + .filter_map(|op| { + op.signatures + .iter() + .find(|s| s.left == TypeSlot::Domain && s.right == TypeSlot::Domain) + .map(|s| (op, *s)) + }) + .collect() +} + /// Body for a term-bearing domain's query__functions.sql: the /// query-operand extractor OVERLOADS (the same extractors, on /// `eql_v3.query_`) plus the comparison WRAPPERS binding the storage @@ -255,11 +296,19 @@ fn query_types_path(family_name: &str) -> String { /// both directions. Reuses the same `functions.sql` template as the storage /// surface; a query operand carries the same terms, so each wrapper compares /// `extractor(a)` to `extractor(b)` with no ciphertext cast. -pub fn render_query_functions_file(family_name: &str, domain: &Domain) -> String { +/// +/// `siblings` are the family's OTHER scalar storage domains (see +/// [`cross_pair_domains`]). Each gets exact-signature blockers against this +/// query twin in both directions — see [`cross_pair_operators`]. +pub fn render_query_functions_file( + family_name: &str, + domain: &Domain, + siblings: &[&Domain], +) -> String { use crate::consts::sql_str; use crate::context::{ - domain_name, environment, extractor_entry, query_domain_name, wrapper_entry, - FunctionsContext, + domain_name, environment, extractor_entry, mismatch_blocker_entry, query_domain_name, + wrapper_entry, FunctionsContext, SqlParam, }; let name = domain.full_name(family_name); let query_name = domain.query_name(family_name); @@ -277,14 +326,12 @@ pub fn render_query_functions_file(family_name: &str, domain: &Domain) -> String // for supported operators only (a query operand is never sent for a blocked // operator). `is_supported(op) ⟹ term_for_operator is Some`. // - // Query twins deliberately emit NO blockers (unlike the storage surface). A - // query operand only ever appears as the RHS of `col operand`, and for - // an unsupported `` that predicate resolves against the STORAGE domain's - // `(, jsonb)` blocker (the query operand degrades to its `jsonb` - // base), which raises — so the realistic path is already protected. The only - // unblocked cases are nonsensical `operand operand` / `operand - // jsonb`, which no caller writes; blocking them would mean emitting the full - // blocker matrix against every query twin for zero real-world coverage. + // Query twins emit no blockers against their OWN storage domain or `jsonb`: + // a query operand only ever appears as the RHS of `col operand`, and + // for an unsupported `` that predicate resolves against the STORAGE + // domain's `(, jsonb)` blocker, which raises. The pairs that are + // NOT covered that way are a DIFFERENT domain's operand against this twin, + // handled by the cross-pair blockers below. for op in OPERATORS { if !supported.contains(&op.symbol.as_str()) { continue; @@ -307,6 +354,35 @@ pub fn render_query_functions_file(family_name: &str, domain: &Domain) -> String )); } + // Cross-pair blockers: a DIFFERENT domain of this family against this query + // twin. Both are domains over `jsonb`, so without an exact signature + // PostgreSQL flattens the pair to native `jsonb jsonb` and answers + // silently (`eql_v3_text_ord = query_text_eq` is false for equal values). + for sibling in siblings { + let sibling_dom = domain_name(&sibling.full_name(family_name)); + for (op, sig) in cross_pair_operators(domain, sibling) { + for (left, right) in [ + (sibling_dom.clone(), query_dom.clone()), + (query_dom.clone(), sibling_dom.clone()), + ] { + entries.push(mismatch_blocker_entry( + op, + [ + SqlParam { + name: "a", + ty: left, + }, + SqlParam { + name: arg_b_name(op.symbol.as_str()), + ty: right, + }, + ], + &sig.render(&query_dom).returns, + )); + } + } + } + let ctx = FunctionsContext { requires: vec![ V3_SCHEMA.to_string(), @@ -330,7 +406,14 @@ pub fn render_query_functions_file(family_name: &str, domain: &Domain) -> String /// `CREATE OPERATOR` binding `(storage_domain, query_)` for every /// supported operator, plus its `(query_, storage_domain)` commutator, so /// `col $1::eql_v3.query_` resolves to the query wrapper. -pub fn render_query_operators_file(family_name: &str, domain: &Domain) -> String { +/// +/// `siblings` as for [`render_query_functions_file`]: each binds a blocker for +/// the `(sibling, query)` pair and its commutator. +pub fn render_query_operators_file( + family_name: &str, + domain: &Domain, + siblings: &[&Domain], +) -> String { use crate::context::{ domain_name, environment, operator_entry, query_domain_name, OperatorsContext, }; @@ -348,7 +431,13 @@ pub fn render_query_operators_file(family_name: &str, domain: &Domain) -> String operators.push(operator_entry(op, &storage_dom, &query_dom, true)); operators.push(operator_entry(op, &query_dom, &storage_dom, true)); } - + for sibling in siblings { + let sibling_dom = domain_name(&sibling.full_name(family_name)); + for (op, _) in cross_pair_operators(domain, sibling) { + operators.push(operator_entry(op, &sibling_dom, &query_dom, false)); + operators.push(operator_entry(op, &query_dom, &sibling_dom, false)); + } + } let ctx = OperatorsContext { requires: vec![ V3_SCHEMA.to_string(), @@ -947,11 +1036,11 @@ pub fn render_type(spec: &DomainFamily, out_dir: &Path) -> Vec<(PathBuf, String) let query_name = d.query_name(family_name); rendered.push(( out_dir.join(format!("{query_name}_functions.sql")), - render_query_functions_file(family_name, d), + render_query_functions_file(family_name, d, &cross_pair_domains(spec, d)), )); rendered.push(( out_dir.join(format!("{query_name}_operators.sql")), - render_query_operators_file(family_name, d), + render_query_operators_file(family_name, d, &cross_pair_domains(spec, d)), )); } if let Some(agg) = render_aggregates_file(family_name, d) { @@ -1127,6 +1216,51 @@ pub fn clean_all(out_root: &Path) -> Result, WriteError> { #[cfg(test)] mod tests { + /// A query twin carries blockers for every OTHER term-bearing + /// domain of its family (both directions, only operators both sides + /// advertise) and none for the family's own storage domain or storage-only + /// domains, so a mismatched pair raises instead of flattening to `jsonb`. + #[test] + fn query_twin_blocks_other_domains_of_its_family() { + let text = eql_domains::CATALOG + .iter() + .find(|f| f.name == "text") + .expect("text family"); + let eq = text.domains.iter().find(|d| d.name == "eq").unwrap(); + let ord = text.domains.iter().find(|d| d.name == "ord").unwrap(); + let siblings = cross_pair_domains(text, eq); + assert!(siblings + .iter() + .all(|d| d.name != "eq" && !d.terms.is_empty())); + assert!(siblings.iter().any(|d| d.name == "ord")); + + let sql = render_query_functions_file("text", eq, &siblings); + for (l, r) in [ + ("public.eql_v3_text_ord", "eql_v3.query_text_eq"), + ("eql_v3.query_text_eq", "public.eql_v3_text_ord"), + ] { + assert!( + sql.contains(&format!("eql_v3_internal.eq(a {l}, b {r})")), + "missing {l} = {r} blocker" + ); + } + // query_text_eq advertises only `=`/`<>`: no ordering blocker. + assert!(!sql.contains("eql_v3_internal.lt(a public.eql_v3_text_ord")); + // Never the own twin, never the storage-only base domain. + assert!(!sql.contains("eql_v3_internal.eq(a public.eql_v3_text_eq")); + assert!(!sql.contains("eql_v3_internal.eq(a public.eql_v3_text,")); + + let ops = render_query_operators_file("text", eq, &siblings); + assert!(ops.contains( + "FUNCTION = eql_v3_internal.eq,\n LEFTARG = public.eql_v3_text_ord, RIGHTARG = eql_v3.query_text_eq\n" + )); + + // The ordering twin gets ordering blockers against `search`. + let ord_sql = render_query_functions_file("text", ord, &cross_pair_domains(text, ord)); + assert!(ord_sql + .contains("eql_v3_internal.lt(a public.eql_v3_text_search, b eql_v3.query_text_ord)")); + } + use super::*; use eql_domains::CATALOG; @@ -1220,7 +1354,7 @@ mod tests { let s = spec("integer"); let d = domain(s, "ord_ore"); let storage = render_functions_file("integer", d); - let query = render_query_functions_file("integer", d); + let query = render_query_functions_file("integer", d, &cross_pair_domains(s, d)); for op in ["=", "<>", "<", "<=", ">", ">="] { let body = format!( "SELECT eql_v3.ord_term_ore(a) OPERATOR(public.{op}) eql_v3.ord_term_ore(b) $$;" diff --git a/packages/eql/crates/eql-codegen/templates/functions/unsupported.sql.j2 b/packages/eql/crates/eql-codegen/templates/functions/unsupported.sql.j2 index de76fa1e62..02ad5d421f 100644 --- a/packages/eql/crates/eql-codegen/templates/functions/unsupported.sql.j2 +++ b/packages/eql/crates/eql-codegen/templates/functions/unsupported.sql.j2 @@ -1,3 +1,9 @@ +{% if e.mismatch -%} +--! @brief Unsupported operator blocker for {{ dom }}: {{ e.mismatch }} (mismatched query domain). +--! @param {{ e.args[0].name }} {{ e.args[0].ty }} left operand +--! @param {{ e.args[1].name }} {{ e.args[1].ty }} right operand +--! @return {{ e.returns }} never returned — the function always raises +{% else -%} --! @brief Unsupported operator blocker for {{ dom }}. --! --! Intercepts an operator that is not supported on {{ dom }} and always raises; @@ -7,7 +13,12 @@ --! @param {{ e.args[0].name }} {{ e.args[0].ty }} left operand of the blocked operator --! @param {{ e.args[1].name }} {{ e.args[1].ty }} right operand of the blocked operator --! @return {{ e.returns }} never returned — the function always raises "operator not supported" +{% endif -%} CREATE FUNCTION {{ internal_schema }}.{{ e.function_name }}({{ e.args[0].name }} {{ e.args[0].ty }}, {{ e.args[1].name }} {{ e.args[1].ty }}) RETURNS {{ e.returns }} IMMUTABLE PARALLEL SAFE +{% if e.mismatch -%} +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '{{ e.operator_lit }}', '{{ e.mismatch }}'; END; $$ +{% else -%} AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %', '{{ e.operator_lit }}', '{{ domain_lit }}'; END; $$ +{% endif -%} LANGUAGE plpgsql; diff --git a/packages/eql/docs/upgrading/v3.0.md b/packages/eql/docs/upgrading/v3.0.md index 573c636133..b6c15e5131 100644 --- a/packages/eql/docs/upgrading/v3.0.md +++ b/packages/eql/docs/upgrading/v3.0.md @@ -21,7 +21,7 @@ the `eql_v3` surface (U-001 through U-010 below). 6. **`public.eql_v3_text_search` is backed by CLLW-OPE too, and `public.eql_v3_text_search_ore` is new** ([U-006](#u-006-text_search-is-backed-by-cllw-ope)). The combined search domain now requires `hm` + `op` + `bf` and orders via `eql_v3.ord_term(col)`; equality (`hm`) and bloom fuzzy match (`bf`) are unchanged. The block-ORE shape (`hm` + `ob` + `bf`) lives on the new `public.eql_v3_text_search_ore`. `text_search` now accepts the empty string. 7. **The encrypted-JSON domains are renamed, and `public.eql_v3_json` is now storage-only** ([U-007](#u-007-the-encrypted-json-domains-are-renamed-and-publiceql_v3_json-is-now-storage-only)). The searchable SteVec document `public.eql_v3_json` → `public.eql_v3_json_search`, `public.eql_v3_jsonb_entry` → `public.eql_v3_json_entry`, `eql_v3.query_jsonb` → `eql_v3.query_json`; the bare `public.eql_v3_json` is now a new ciphertext-only storage-only domain. Only affects 3.0.0 pre-release adopters. 8. **Text bloom fuzzy match is `@@` / `eql_v3.matches`, not `@>` / `eql_v3.contains`** ([U-008](#u-008-text-bloom-fuzzy-match-is-renamed-to---eql_v3matches)). On `public.eql_v3_text_match` / `text_search` / `text_search_ore` the fuzzy match is now the single directional operator `@@` (backed by `eql_v3.matches`); `@>` / `<@` (and `eql_v3.contains` / `contained_by`) now **raise** on these domains. It is n-gram token matching, not containment. The GIN index recipe is unchanged. Genuine JSON containment keeps `@>` / `<@`. -9. **Uninstalling can exceed the stock lock budget** ([U-009](#u-009-the-uninstaller-can-exceed-postgress-default-lock-budget)). The single-transaction uninstaller drops ~6,400+ objects, each taking one lock — right at the capacity a default `max_locks_per_transaction = 64` cluster affords. A lone uninstall on a quiet cluster normally succeeds; under concurrent load it can fail with `out of shared memory`. Raise `max_locks_per_transaction` (needs a restart) or uninstall during a quiet window. Installation is unaffected. +9. **Uninstalling can exceed the stock lock budget** ([U-009](#u-009-the-uninstaller-can-exceed-postgress-default-lock-budget)). The single-transaction uninstaller drops ~8,550 objects, each taking one lock — beyond the capacity a default `max_locks_per_transaction = 64` cluster affords. A lone uninstall on a quiet cluster normally succeeds; under concurrent load it can fail with `out of shared memory`. Raise `max_locks_per_transaction` (needs a restart) or uninstall during a quiet window. Installation is unaffected. 10. **SteVec exact match is value-selector presence, and the document wire format is restructured** ([U-010](#u-010-stevec-value-inclusive-selectors-and-the-envelope-wire-format)). Encrypted-JSON field equality now works exactly for *every* type (including `text` / `bigint` / `numeric`) via document containment on a value-inclusive selector — spell it `col @> $1::eql_v3.query_json`; the per-value `hm` term is retired, and extract-surface equality (`-> 'sel' = …`) is blocked (ranges stay). The document now carries a once-per-document key header `h` (no root `c`); each entry's `c` is raw AEAD output with a selector-derived nonce; `eql_v3.jsonb_array_elements_text` is removed. **Re-encryption required** — there is no mechanical conversion. 11. **An empty-bloom fuzzy-match term no longer matches every row** ([U-011](#u-011-an-empty-bloom-fuzzy-match-term-no-longer-matches-every-row)). `col @@ $1` (`eql_v3.matches`) on the text match/search domains matched the *entire table* when the query term carried an empty bloom filter (a search string with no n-gram tokens — e.g. a value below the tokeniser's trigram floor), because empty-array containment is vacuously true. It now uses `LIKE ''` semantics: an empty needle matches only a value whose own bloom is also empty. Normal (non-empty needle) queries are unchanged and still index-accelerated. No re-encryption, no schema change. @@ -53,7 +53,7 @@ the `eql_v3` surface (U-001 through U-010 below). | `eql_v3.ore_cllw(entry)` / `eql_v3.has_ore_cllw(entry)` / `eql_v3_internal.ore_cllw` (+ comparator, operators, opclass) | **Removed.** Entry ordering is `eql_v3.ord_term(entry)` — see U-004. | | Text bloom fuzzy match (`public.eql_v3_text_match` / `text_search` / `text_search_ore`) | **Changed.** `@>` / `<@` (`eql_v3.contains` / `contained_by`) → the single directional `@@` (`eql_v3.matches`); `@>` / `<@` now raise on these domains — see U-008. | | Empty-bloom fuzzy-match needle (`@@` / `eql_v3.matches`) | **Changed.** An empty needle bloom matched every row (vacuous containment); now `LIKE ''`-shaped — matches only empty-bloom values. Normal queries and the GIN index recipe unchanged — see U-011. | -| Uninstaller lock footprint | **Grown.** The single-transaction uninstall takes ~6,400+ locks — at/over the default `max_locks_per_transaction = 64` cluster budget under concurrent load — see U-009. Installation unaffected. | +| Uninstaller lock footprint | **Grown.** The single-transaction uninstall takes ~8,550 locks — over the default `max_locks_per_transaction = 64` cluster budget under concurrent load — see U-009. Installation unaffected. | | JSON containment (`public.eql_v3_json_search` `@>` / `<@`, `eql_v3.jsonb_document_contains`) | **Unchanged.** Genuine containment keeps the containment vocabulary — see U-008. (The implementation was called `eql_v3.ste_vec_contains` until 3.0.5 renamed it; the operators never changed. See [Upgrading to EQL 3.0.5](./v3.0.5.md).) | | Legacy `eql_v2` wire documentation (`docs/reference/schema/eql-payload-v2.*.schema.json`) | **Unchanged.** Stays `v: 2`. | @@ -651,8 +651,9 @@ operator/function name moved — so no re-encryption or index rebuild is involve **What changed.** The v3 surface has grown to the point where the shipped uninstaller — whose core is `DROP SCHEMA eql_v3 CASCADE` followed by -`DROP SCHEMA eql_v3_internal CASCADE` — takes **6,433 locks** when run as a -single transaction (measured on this release: one per dropped function, +`DROP SCHEMA eql_v3_internal CASCADE` — takes **8,558 locks** when run as a +single transaction (measured on this release, including the mismatched-query-domain +blockers, which account for about 2,100 of them: one per dropped function, operator, type, and cast, all held until commit). Note the shipped file contains no `BEGIN`/`COMMIT` of its own: run it with `psql --single-transaction -f cipherstash-encrypt-uninstall.sql` to get the @@ -662,7 +663,7 @@ commits separately (fewer locks at once, but `eql_v3` can drop while its shared lock table once at startup as `max_locks_per_transaction × (max_connections + max_prepared_transactions)`; at the defaults (64 × 100) that is **6,400 slots for the whole cluster**, so a full single-transaction -uninstall now exceeds what the default configuration nominally affords. +uninstall now exceeds what the default configuration nominally affords by about a third. **Who is affected.** Anyone running `cipherstash-encrypt-uninstall.sql` on a cluster with the default `max_locks_per_transaction = 64` — in practice only diff --git a/packages/eql/src/v3/scalars/bigint/query_bigint_eq_functions.sql b/packages/eql/src/v3/scalars/bigint/query_bigint_eq_functions.sql index e8d9e3e927..a006e6bf90 100644 --- a/packages/eql/src/v3/scalars/bigint/query_bigint_eq_functions.sql +++ b/packages/eql/src/v3/scalars/bigint/query_bigint_eq_functions.sql @@ -45,3 +45,111 @@ AS $$ SELECT eql_v3.eq_term(a) OPERATOR(pg_catalog.<>) eql_v3.eq_term(b) $$; CREATE FUNCTION eql_v3.neq(a eql_v3.query_bigint_eq, b public.eql_v3_bigint_eq) RETURNS boolean LANGUAGE sql IMMUTABLE STRICT PARALLEL SAFE AS $$ SELECT eql_v3.eq_term(a) OPERATOR(pg_catalog.<>) eql_v3.eq_term(b) $$; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_eq: public.eql_v3_bigint_ord_ore and eql_v3.query_bigint_eq (mismatched query domain). +--! @param a public.eql_v3_bigint_ord_ore left operand +--! @param b eql_v3.query_bigint_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_bigint_ord_ore, b eql_v3.query_bigint_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_bigint_ord_ore and eql_v3.query_bigint_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_eq: eql_v3.query_bigint_eq and public.eql_v3_bigint_ord_ore (mismatched query domain). +--! @param a eql_v3.query_bigint_eq left operand +--! @param b public.eql_v3_bigint_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_bigint_eq, b public.eql_v3_bigint_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_bigint_eq and public.eql_v3_bigint_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_eq: public.eql_v3_bigint_ord_ore and eql_v3.query_bigint_eq (mismatched query domain). +--! @param a public.eql_v3_bigint_ord_ore left operand +--! @param b eql_v3.query_bigint_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_bigint_ord_ore, b eql_v3.query_bigint_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_bigint_ord_ore and eql_v3.query_bigint_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_eq: eql_v3.query_bigint_eq and public.eql_v3_bigint_ord_ore (mismatched query domain). +--! @param a eql_v3.query_bigint_eq left operand +--! @param b public.eql_v3_bigint_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_bigint_eq, b public.eql_v3_bigint_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_bigint_eq and public.eql_v3_bigint_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_eq: public.eql_v3_bigint_ord and eql_v3.query_bigint_eq (mismatched query domain). +--! @param a public.eql_v3_bigint_ord left operand +--! @param b eql_v3.query_bigint_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_bigint_ord, b eql_v3.query_bigint_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_bigint_ord and eql_v3.query_bigint_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_eq: eql_v3.query_bigint_eq and public.eql_v3_bigint_ord (mismatched query domain). +--! @param a eql_v3.query_bigint_eq left operand +--! @param b public.eql_v3_bigint_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_bigint_eq, b public.eql_v3_bigint_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_bigint_eq and public.eql_v3_bigint_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_eq: public.eql_v3_bigint_ord and eql_v3.query_bigint_eq (mismatched query domain). +--! @param a public.eql_v3_bigint_ord left operand +--! @param b eql_v3.query_bigint_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_bigint_ord, b eql_v3.query_bigint_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_bigint_ord and eql_v3.query_bigint_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_eq: eql_v3.query_bigint_eq and public.eql_v3_bigint_ord (mismatched query domain). +--! @param a eql_v3.query_bigint_eq left operand +--! @param b public.eql_v3_bigint_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_bigint_eq, b public.eql_v3_bigint_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_bigint_eq and public.eql_v3_bigint_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_eq: public.eql_v3_bigint_ord_ope and eql_v3.query_bigint_eq (mismatched query domain). +--! @param a public.eql_v3_bigint_ord_ope left operand +--! @param b eql_v3.query_bigint_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_bigint_ord_ope, b eql_v3.query_bigint_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_bigint_ord_ope and eql_v3.query_bigint_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_eq: eql_v3.query_bigint_eq and public.eql_v3_bigint_ord_ope (mismatched query domain). +--! @param a eql_v3.query_bigint_eq left operand +--! @param b public.eql_v3_bigint_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_bigint_eq, b public.eql_v3_bigint_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_bigint_eq and public.eql_v3_bigint_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_eq: public.eql_v3_bigint_ord_ope and eql_v3.query_bigint_eq (mismatched query domain). +--! @param a public.eql_v3_bigint_ord_ope left operand +--! @param b eql_v3.query_bigint_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_bigint_ord_ope, b eql_v3.query_bigint_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_bigint_ord_ope and eql_v3.query_bigint_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_eq: eql_v3.query_bigint_eq and public.eql_v3_bigint_ord_ope (mismatched query domain). +--! @param a eql_v3.query_bigint_eq left operand +--! @param b public.eql_v3_bigint_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_bigint_eq, b public.eql_v3_bigint_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_bigint_eq and public.eql_v3_bigint_ord_ope'; END; $$ +LANGUAGE plpgsql; diff --git a/packages/eql/src/v3/scalars/bigint/query_bigint_eq_operators.sql b/packages/eql/src/v3/scalars/bigint/query_bigint_eq_operators.sql index 76f9908ece..56d41b05fc 100644 --- a/packages/eql/src/v3/scalars/bigint/query_bigint_eq_operators.sql +++ b/packages/eql/src/v3/scalars/bigint/query_bigint_eq_operators.sql @@ -29,3 +29,63 @@ CREATE OPERATOR <> ( LEFTARG = eql_v3.query_bigint_eq, RIGHTARG = public.eql_v3_bigint_eq, COMMUTATOR = <>, NEGATOR = =, RESTRICT = neqsel, JOIN = neqjoinsel ); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_bigint_ord_ore, RIGHTARG = eql_v3.query_bigint_eq +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_bigint_eq, RIGHTARG = public.eql_v3_bigint_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_bigint_ord_ore, RIGHTARG = eql_v3.query_bigint_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_bigint_eq, RIGHTARG = public.eql_v3_bigint_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_bigint_ord, RIGHTARG = eql_v3.query_bigint_eq +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_bigint_eq, RIGHTARG = public.eql_v3_bigint_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_bigint_ord, RIGHTARG = eql_v3.query_bigint_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_bigint_eq, RIGHTARG = public.eql_v3_bigint_ord +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_bigint_ord_ope, RIGHTARG = eql_v3.query_bigint_eq +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_bigint_eq, RIGHTARG = public.eql_v3_bigint_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_bigint_ord_ope, RIGHTARG = eql_v3.query_bigint_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_bigint_eq, RIGHTARG = public.eql_v3_bigint_ord_ope +); diff --git a/packages/eql/src/v3/scalars/bigint/query_bigint_ord_functions.sql b/packages/eql/src/v3/scalars/bigint/query_bigint_ord_functions.sql index c9fdbc058c..17550cf089 100644 --- a/packages/eql/src/v3/scalars/bigint/query_bigint_ord_functions.sql +++ b/packages/eql/src/v3/scalars/bigint/query_bigint_ord_functions.sql @@ -109,3 +109,255 @@ AS $$ SELECT eql_v3.ord_term(a) OPERATOR(pg_catalog.>=) eql_v3.ord_term(b) $$; CREATE FUNCTION eql_v3.gte(a eql_v3.query_bigint_ord, b public.eql_v3_bigint_ord) RETURNS boolean LANGUAGE sql IMMUTABLE STRICT PARALLEL SAFE AS $$ SELECT eql_v3.ord_term(a) OPERATOR(pg_catalog.>=) eql_v3.ord_term(b) $$; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord: public.eql_v3_bigint_eq and eql_v3.query_bigint_ord (mismatched query domain). +--! @param a public.eql_v3_bigint_eq left operand +--! @param b eql_v3.query_bigint_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_bigint_eq, b eql_v3.query_bigint_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_bigint_eq and eql_v3.query_bigint_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord: eql_v3.query_bigint_ord and public.eql_v3_bigint_eq (mismatched query domain). +--! @param a eql_v3.query_bigint_ord left operand +--! @param b public.eql_v3_bigint_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_bigint_ord, b public.eql_v3_bigint_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_bigint_ord and public.eql_v3_bigint_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord: public.eql_v3_bigint_eq and eql_v3.query_bigint_ord (mismatched query domain). +--! @param a public.eql_v3_bigint_eq left operand +--! @param b eql_v3.query_bigint_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_bigint_eq, b eql_v3.query_bigint_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_bigint_eq and eql_v3.query_bigint_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord: eql_v3.query_bigint_ord and public.eql_v3_bigint_eq (mismatched query domain). +--! @param a eql_v3.query_bigint_ord left operand +--! @param b public.eql_v3_bigint_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_bigint_ord, b public.eql_v3_bigint_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_bigint_ord and public.eql_v3_bigint_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord: public.eql_v3_bigint_ord_ore and eql_v3.query_bigint_ord (mismatched query domain). +--! @param a public.eql_v3_bigint_ord_ore left operand +--! @param b eql_v3.query_bigint_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_bigint_ord_ore, b eql_v3.query_bigint_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_bigint_ord_ore and eql_v3.query_bigint_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord: eql_v3.query_bigint_ord and public.eql_v3_bigint_ord_ore (mismatched query domain). +--! @param a eql_v3.query_bigint_ord left operand +--! @param b public.eql_v3_bigint_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_bigint_ord, b public.eql_v3_bigint_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_bigint_ord and public.eql_v3_bigint_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord: public.eql_v3_bigint_ord_ore and eql_v3.query_bigint_ord (mismatched query domain). +--! @param a public.eql_v3_bigint_ord_ore left operand +--! @param b eql_v3.query_bigint_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_bigint_ord_ore, b eql_v3.query_bigint_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_bigint_ord_ore and eql_v3.query_bigint_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord: eql_v3.query_bigint_ord and public.eql_v3_bigint_ord_ore (mismatched query domain). +--! @param a eql_v3.query_bigint_ord left operand +--! @param b public.eql_v3_bigint_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_bigint_ord, b public.eql_v3_bigint_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_bigint_ord and public.eql_v3_bigint_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord: public.eql_v3_bigint_ord_ore and eql_v3.query_bigint_ord (mismatched query domain). +--! @param a public.eql_v3_bigint_ord_ore left operand +--! @param b eql_v3.query_bigint_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_bigint_ord_ore, b eql_v3.query_bigint_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_bigint_ord_ore and eql_v3.query_bigint_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord: eql_v3.query_bigint_ord and public.eql_v3_bigint_ord_ore (mismatched query domain). +--! @param a eql_v3.query_bigint_ord left operand +--! @param b public.eql_v3_bigint_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_bigint_ord, b public.eql_v3_bigint_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_bigint_ord and public.eql_v3_bigint_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord: public.eql_v3_bigint_ord_ore and eql_v3.query_bigint_ord (mismatched query domain). +--! @param a public.eql_v3_bigint_ord_ore left operand +--! @param b eql_v3.query_bigint_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_bigint_ord_ore, b eql_v3.query_bigint_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_bigint_ord_ore and eql_v3.query_bigint_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord: eql_v3.query_bigint_ord and public.eql_v3_bigint_ord_ore (mismatched query domain). +--! @param a eql_v3.query_bigint_ord left operand +--! @param b public.eql_v3_bigint_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_bigint_ord, b public.eql_v3_bigint_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_bigint_ord and public.eql_v3_bigint_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord: public.eql_v3_bigint_ord_ore and eql_v3.query_bigint_ord (mismatched query domain). +--! @param a public.eql_v3_bigint_ord_ore left operand +--! @param b eql_v3.query_bigint_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_bigint_ord_ore, b eql_v3.query_bigint_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_bigint_ord_ore and eql_v3.query_bigint_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord: eql_v3.query_bigint_ord and public.eql_v3_bigint_ord_ore (mismatched query domain). +--! @param a eql_v3.query_bigint_ord left operand +--! @param b public.eql_v3_bigint_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_bigint_ord, b public.eql_v3_bigint_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_bigint_ord and public.eql_v3_bigint_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord: public.eql_v3_bigint_ord_ore and eql_v3.query_bigint_ord (mismatched query domain). +--! @param a public.eql_v3_bigint_ord_ore left operand +--! @param b eql_v3.query_bigint_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_bigint_ord_ore, b eql_v3.query_bigint_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_bigint_ord_ore and eql_v3.query_bigint_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord: eql_v3.query_bigint_ord and public.eql_v3_bigint_ord_ore (mismatched query domain). +--! @param a eql_v3.query_bigint_ord left operand +--! @param b public.eql_v3_bigint_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_bigint_ord, b public.eql_v3_bigint_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_bigint_ord and public.eql_v3_bigint_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord: public.eql_v3_bigint_ord_ope and eql_v3.query_bigint_ord (mismatched query domain). +--! @param a public.eql_v3_bigint_ord_ope left operand +--! @param b eql_v3.query_bigint_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_bigint_ord_ope, b eql_v3.query_bigint_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_bigint_ord_ope and eql_v3.query_bigint_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord: eql_v3.query_bigint_ord and public.eql_v3_bigint_ord_ope (mismatched query domain). +--! @param a eql_v3.query_bigint_ord left operand +--! @param b public.eql_v3_bigint_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_bigint_ord, b public.eql_v3_bigint_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_bigint_ord and public.eql_v3_bigint_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord: public.eql_v3_bigint_ord_ope and eql_v3.query_bigint_ord (mismatched query domain). +--! @param a public.eql_v3_bigint_ord_ope left operand +--! @param b eql_v3.query_bigint_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_bigint_ord_ope, b eql_v3.query_bigint_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_bigint_ord_ope and eql_v3.query_bigint_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord: eql_v3.query_bigint_ord and public.eql_v3_bigint_ord_ope (mismatched query domain). +--! @param a eql_v3.query_bigint_ord left operand +--! @param b public.eql_v3_bigint_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_bigint_ord, b public.eql_v3_bigint_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_bigint_ord and public.eql_v3_bigint_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord: public.eql_v3_bigint_ord_ope and eql_v3.query_bigint_ord (mismatched query domain). +--! @param a public.eql_v3_bigint_ord_ope left operand +--! @param b eql_v3.query_bigint_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_bigint_ord_ope, b eql_v3.query_bigint_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_bigint_ord_ope and eql_v3.query_bigint_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord: eql_v3.query_bigint_ord and public.eql_v3_bigint_ord_ope (mismatched query domain). +--! @param a eql_v3.query_bigint_ord left operand +--! @param b public.eql_v3_bigint_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_bigint_ord, b public.eql_v3_bigint_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_bigint_ord and public.eql_v3_bigint_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord: public.eql_v3_bigint_ord_ope and eql_v3.query_bigint_ord (mismatched query domain). +--! @param a public.eql_v3_bigint_ord_ope left operand +--! @param b eql_v3.query_bigint_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_bigint_ord_ope, b eql_v3.query_bigint_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_bigint_ord_ope and eql_v3.query_bigint_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord: eql_v3.query_bigint_ord and public.eql_v3_bigint_ord_ope (mismatched query domain). +--! @param a eql_v3.query_bigint_ord left operand +--! @param b public.eql_v3_bigint_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_bigint_ord, b public.eql_v3_bigint_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_bigint_ord and public.eql_v3_bigint_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord: public.eql_v3_bigint_ord_ope and eql_v3.query_bigint_ord (mismatched query domain). +--! @param a public.eql_v3_bigint_ord_ope left operand +--! @param b eql_v3.query_bigint_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_bigint_ord_ope, b eql_v3.query_bigint_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_bigint_ord_ope and eql_v3.query_bigint_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord: eql_v3.query_bigint_ord and public.eql_v3_bigint_ord_ope (mismatched query domain). +--! @param a eql_v3.query_bigint_ord left operand +--! @param b public.eql_v3_bigint_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_bigint_ord, b public.eql_v3_bigint_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_bigint_ord and public.eql_v3_bigint_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord: public.eql_v3_bigint_ord_ope and eql_v3.query_bigint_ord (mismatched query domain). +--! @param a public.eql_v3_bigint_ord_ope left operand +--! @param b eql_v3.query_bigint_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_bigint_ord_ope, b eql_v3.query_bigint_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_bigint_ord_ope and eql_v3.query_bigint_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord: eql_v3.query_bigint_ord and public.eql_v3_bigint_ord_ope (mismatched query domain). +--! @param a eql_v3.query_bigint_ord left operand +--! @param b public.eql_v3_bigint_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_bigint_ord, b public.eql_v3_bigint_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_bigint_ord and public.eql_v3_bigint_ord_ope'; END; $$ +LANGUAGE plpgsql; diff --git a/packages/eql/src/v3/scalars/bigint/query_bigint_ord_ope_functions.sql b/packages/eql/src/v3/scalars/bigint/query_bigint_ord_ope_functions.sql index 4b7f6b5cd4..2fc575cab0 100644 --- a/packages/eql/src/v3/scalars/bigint/query_bigint_ord_ope_functions.sql +++ b/packages/eql/src/v3/scalars/bigint/query_bigint_ord_ope_functions.sql @@ -109,3 +109,255 @@ AS $$ SELECT eql_v3.ord_term(a) OPERATOR(pg_catalog.>=) eql_v3.ord_term(b) $$; CREATE FUNCTION eql_v3.gte(a eql_v3.query_bigint_ord_ope, b public.eql_v3_bigint_ord_ope) RETURNS boolean LANGUAGE sql IMMUTABLE STRICT PARALLEL SAFE AS $$ SELECT eql_v3.ord_term(a) OPERATOR(pg_catalog.>=) eql_v3.ord_term(b) $$; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord_ope: public.eql_v3_bigint_eq and eql_v3.query_bigint_ord_ope (mismatched query domain). +--! @param a public.eql_v3_bigint_eq left operand +--! @param b eql_v3.query_bigint_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_bigint_eq, b eql_v3.query_bigint_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_bigint_eq and eql_v3.query_bigint_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord_ope: eql_v3.query_bigint_ord_ope and public.eql_v3_bigint_eq (mismatched query domain). +--! @param a eql_v3.query_bigint_ord_ope left operand +--! @param b public.eql_v3_bigint_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_bigint_ord_ope, b public.eql_v3_bigint_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_bigint_ord_ope and public.eql_v3_bigint_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord_ope: public.eql_v3_bigint_eq and eql_v3.query_bigint_ord_ope (mismatched query domain). +--! @param a public.eql_v3_bigint_eq left operand +--! @param b eql_v3.query_bigint_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_bigint_eq, b eql_v3.query_bigint_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_bigint_eq and eql_v3.query_bigint_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord_ope: eql_v3.query_bigint_ord_ope and public.eql_v3_bigint_eq (mismatched query domain). +--! @param a eql_v3.query_bigint_ord_ope left operand +--! @param b public.eql_v3_bigint_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_bigint_ord_ope, b public.eql_v3_bigint_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_bigint_ord_ope and public.eql_v3_bigint_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord_ope: public.eql_v3_bigint_ord_ore and eql_v3.query_bigint_ord_ope (mismatched query domain). +--! @param a public.eql_v3_bigint_ord_ore left operand +--! @param b eql_v3.query_bigint_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_bigint_ord_ore, b eql_v3.query_bigint_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_bigint_ord_ore and eql_v3.query_bigint_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord_ope: eql_v3.query_bigint_ord_ope and public.eql_v3_bigint_ord_ore (mismatched query domain). +--! @param a eql_v3.query_bigint_ord_ope left operand +--! @param b public.eql_v3_bigint_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_bigint_ord_ope, b public.eql_v3_bigint_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_bigint_ord_ope and public.eql_v3_bigint_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord_ope: public.eql_v3_bigint_ord_ore and eql_v3.query_bigint_ord_ope (mismatched query domain). +--! @param a public.eql_v3_bigint_ord_ore left operand +--! @param b eql_v3.query_bigint_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_bigint_ord_ore, b eql_v3.query_bigint_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_bigint_ord_ore and eql_v3.query_bigint_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord_ope: eql_v3.query_bigint_ord_ope and public.eql_v3_bigint_ord_ore (mismatched query domain). +--! @param a eql_v3.query_bigint_ord_ope left operand +--! @param b public.eql_v3_bigint_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_bigint_ord_ope, b public.eql_v3_bigint_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_bigint_ord_ope and public.eql_v3_bigint_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord_ope: public.eql_v3_bigint_ord_ore and eql_v3.query_bigint_ord_ope (mismatched query domain). +--! @param a public.eql_v3_bigint_ord_ore left operand +--! @param b eql_v3.query_bigint_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_bigint_ord_ore, b eql_v3.query_bigint_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_bigint_ord_ore and eql_v3.query_bigint_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord_ope: eql_v3.query_bigint_ord_ope and public.eql_v3_bigint_ord_ore (mismatched query domain). +--! @param a eql_v3.query_bigint_ord_ope left operand +--! @param b public.eql_v3_bigint_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_bigint_ord_ope, b public.eql_v3_bigint_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_bigint_ord_ope and public.eql_v3_bigint_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord_ope: public.eql_v3_bigint_ord_ore and eql_v3.query_bigint_ord_ope (mismatched query domain). +--! @param a public.eql_v3_bigint_ord_ore left operand +--! @param b eql_v3.query_bigint_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_bigint_ord_ore, b eql_v3.query_bigint_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_bigint_ord_ore and eql_v3.query_bigint_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord_ope: eql_v3.query_bigint_ord_ope and public.eql_v3_bigint_ord_ore (mismatched query domain). +--! @param a eql_v3.query_bigint_ord_ope left operand +--! @param b public.eql_v3_bigint_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_bigint_ord_ope, b public.eql_v3_bigint_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_bigint_ord_ope and public.eql_v3_bigint_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord_ope: public.eql_v3_bigint_ord_ore and eql_v3.query_bigint_ord_ope (mismatched query domain). +--! @param a public.eql_v3_bigint_ord_ore left operand +--! @param b eql_v3.query_bigint_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_bigint_ord_ore, b eql_v3.query_bigint_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_bigint_ord_ore and eql_v3.query_bigint_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord_ope: eql_v3.query_bigint_ord_ope and public.eql_v3_bigint_ord_ore (mismatched query domain). +--! @param a eql_v3.query_bigint_ord_ope left operand +--! @param b public.eql_v3_bigint_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_bigint_ord_ope, b public.eql_v3_bigint_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_bigint_ord_ope and public.eql_v3_bigint_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord_ope: public.eql_v3_bigint_ord_ore and eql_v3.query_bigint_ord_ope (mismatched query domain). +--! @param a public.eql_v3_bigint_ord_ore left operand +--! @param b eql_v3.query_bigint_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_bigint_ord_ore, b eql_v3.query_bigint_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_bigint_ord_ore and eql_v3.query_bigint_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord_ope: eql_v3.query_bigint_ord_ope and public.eql_v3_bigint_ord_ore (mismatched query domain). +--! @param a eql_v3.query_bigint_ord_ope left operand +--! @param b public.eql_v3_bigint_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_bigint_ord_ope, b public.eql_v3_bigint_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_bigint_ord_ope and public.eql_v3_bigint_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord_ope: public.eql_v3_bigint_ord and eql_v3.query_bigint_ord_ope (mismatched query domain). +--! @param a public.eql_v3_bigint_ord left operand +--! @param b eql_v3.query_bigint_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_bigint_ord, b eql_v3.query_bigint_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_bigint_ord and eql_v3.query_bigint_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord_ope: eql_v3.query_bigint_ord_ope and public.eql_v3_bigint_ord (mismatched query domain). +--! @param a eql_v3.query_bigint_ord_ope left operand +--! @param b public.eql_v3_bigint_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_bigint_ord_ope, b public.eql_v3_bigint_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_bigint_ord_ope and public.eql_v3_bigint_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord_ope: public.eql_v3_bigint_ord and eql_v3.query_bigint_ord_ope (mismatched query domain). +--! @param a public.eql_v3_bigint_ord left operand +--! @param b eql_v3.query_bigint_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_bigint_ord, b eql_v3.query_bigint_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_bigint_ord and eql_v3.query_bigint_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord_ope: eql_v3.query_bigint_ord_ope and public.eql_v3_bigint_ord (mismatched query domain). +--! @param a eql_v3.query_bigint_ord_ope left operand +--! @param b public.eql_v3_bigint_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_bigint_ord_ope, b public.eql_v3_bigint_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_bigint_ord_ope and public.eql_v3_bigint_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord_ope: public.eql_v3_bigint_ord and eql_v3.query_bigint_ord_ope (mismatched query domain). +--! @param a public.eql_v3_bigint_ord left operand +--! @param b eql_v3.query_bigint_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_bigint_ord, b eql_v3.query_bigint_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_bigint_ord and eql_v3.query_bigint_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord_ope: eql_v3.query_bigint_ord_ope and public.eql_v3_bigint_ord (mismatched query domain). +--! @param a eql_v3.query_bigint_ord_ope left operand +--! @param b public.eql_v3_bigint_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_bigint_ord_ope, b public.eql_v3_bigint_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_bigint_ord_ope and public.eql_v3_bigint_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord_ope: public.eql_v3_bigint_ord and eql_v3.query_bigint_ord_ope (mismatched query domain). +--! @param a public.eql_v3_bigint_ord left operand +--! @param b eql_v3.query_bigint_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_bigint_ord, b eql_v3.query_bigint_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_bigint_ord and eql_v3.query_bigint_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord_ope: eql_v3.query_bigint_ord_ope and public.eql_v3_bigint_ord (mismatched query domain). +--! @param a eql_v3.query_bigint_ord_ope left operand +--! @param b public.eql_v3_bigint_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_bigint_ord_ope, b public.eql_v3_bigint_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_bigint_ord_ope and public.eql_v3_bigint_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord_ope: public.eql_v3_bigint_ord and eql_v3.query_bigint_ord_ope (mismatched query domain). +--! @param a public.eql_v3_bigint_ord left operand +--! @param b eql_v3.query_bigint_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_bigint_ord, b eql_v3.query_bigint_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_bigint_ord and eql_v3.query_bigint_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord_ope: eql_v3.query_bigint_ord_ope and public.eql_v3_bigint_ord (mismatched query domain). +--! @param a eql_v3.query_bigint_ord_ope left operand +--! @param b public.eql_v3_bigint_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_bigint_ord_ope, b public.eql_v3_bigint_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_bigint_ord_ope and public.eql_v3_bigint_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord_ope: public.eql_v3_bigint_ord and eql_v3.query_bigint_ord_ope (mismatched query domain). +--! @param a public.eql_v3_bigint_ord left operand +--! @param b eql_v3.query_bigint_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_bigint_ord, b eql_v3.query_bigint_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_bigint_ord and eql_v3.query_bigint_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord_ope: eql_v3.query_bigint_ord_ope and public.eql_v3_bigint_ord (mismatched query domain). +--! @param a eql_v3.query_bigint_ord_ope left operand +--! @param b public.eql_v3_bigint_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_bigint_ord_ope, b public.eql_v3_bigint_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_bigint_ord_ope and public.eql_v3_bigint_ord'; END; $$ +LANGUAGE plpgsql; diff --git a/packages/eql/src/v3/scalars/bigint/query_bigint_ord_ope_operators.sql b/packages/eql/src/v3/scalars/bigint/query_bigint_ord_ope_operators.sql index 7e58ae3850..85372c1865 100644 --- a/packages/eql/src/v3/scalars/bigint/query_bigint_ord_ope_operators.sql +++ b/packages/eql/src/v3/scalars/bigint/query_bigint_ord_ope_operators.sql @@ -77,3 +77,143 @@ CREATE OPERATOR >= ( LEFTARG = eql_v3.query_bigint_ord_ope, RIGHTARG = public.eql_v3_bigint_ord_ope, COMMUTATOR = <=, NEGATOR = <, RESTRICT = scalargesel, JOIN = scalargejoinsel ); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_bigint_eq, RIGHTARG = eql_v3.query_bigint_ord_ope +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_bigint_ord_ope, RIGHTARG = public.eql_v3_bigint_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_bigint_eq, RIGHTARG = eql_v3.query_bigint_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_bigint_ord_ope, RIGHTARG = public.eql_v3_bigint_eq +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_bigint_ord_ore, RIGHTARG = eql_v3.query_bigint_ord_ope +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_bigint_ord_ope, RIGHTARG = public.eql_v3_bigint_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_bigint_ord_ore, RIGHTARG = eql_v3.query_bigint_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_bigint_ord_ope, RIGHTARG = public.eql_v3_bigint_ord_ore +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_bigint_ord_ore, RIGHTARG = eql_v3.query_bigint_ord_ope +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_bigint_ord_ope, RIGHTARG = public.eql_v3_bigint_ord_ore +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_bigint_ord_ore, RIGHTARG = eql_v3.query_bigint_ord_ope +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_bigint_ord_ope, RIGHTARG = public.eql_v3_bigint_ord_ore +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_bigint_ord_ore, RIGHTARG = eql_v3.query_bigint_ord_ope +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_bigint_ord_ope, RIGHTARG = public.eql_v3_bigint_ord_ore +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_bigint_ord_ore, RIGHTARG = eql_v3.query_bigint_ord_ope +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_bigint_ord_ope, RIGHTARG = public.eql_v3_bigint_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_bigint_ord, RIGHTARG = eql_v3.query_bigint_ord_ope +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_bigint_ord_ope, RIGHTARG = public.eql_v3_bigint_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_bigint_ord, RIGHTARG = eql_v3.query_bigint_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_bigint_ord_ope, RIGHTARG = public.eql_v3_bigint_ord +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_bigint_ord, RIGHTARG = eql_v3.query_bigint_ord_ope +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_bigint_ord_ope, RIGHTARG = public.eql_v3_bigint_ord +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_bigint_ord, RIGHTARG = eql_v3.query_bigint_ord_ope +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_bigint_ord_ope, RIGHTARG = public.eql_v3_bigint_ord +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_bigint_ord, RIGHTARG = eql_v3.query_bigint_ord_ope +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_bigint_ord_ope, RIGHTARG = public.eql_v3_bigint_ord +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_bigint_ord, RIGHTARG = eql_v3.query_bigint_ord_ope +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_bigint_ord_ope, RIGHTARG = public.eql_v3_bigint_ord +); diff --git a/packages/eql/src/v3/scalars/bigint/query_bigint_ord_operators.sql b/packages/eql/src/v3/scalars/bigint/query_bigint_ord_operators.sql index 9bbb5f8d01..08fd49ee47 100644 --- a/packages/eql/src/v3/scalars/bigint/query_bigint_ord_operators.sql +++ b/packages/eql/src/v3/scalars/bigint/query_bigint_ord_operators.sql @@ -77,3 +77,143 @@ CREATE OPERATOR >= ( LEFTARG = eql_v3.query_bigint_ord, RIGHTARG = public.eql_v3_bigint_ord, COMMUTATOR = <=, NEGATOR = <, RESTRICT = scalargesel, JOIN = scalargejoinsel ); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_bigint_eq, RIGHTARG = eql_v3.query_bigint_ord +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_bigint_ord, RIGHTARG = public.eql_v3_bigint_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_bigint_eq, RIGHTARG = eql_v3.query_bigint_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_bigint_ord, RIGHTARG = public.eql_v3_bigint_eq +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_bigint_ord_ore, RIGHTARG = eql_v3.query_bigint_ord +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_bigint_ord, RIGHTARG = public.eql_v3_bigint_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_bigint_ord_ore, RIGHTARG = eql_v3.query_bigint_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_bigint_ord, RIGHTARG = public.eql_v3_bigint_ord_ore +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_bigint_ord_ore, RIGHTARG = eql_v3.query_bigint_ord +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_bigint_ord, RIGHTARG = public.eql_v3_bigint_ord_ore +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_bigint_ord_ore, RIGHTARG = eql_v3.query_bigint_ord +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_bigint_ord, RIGHTARG = public.eql_v3_bigint_ord_ore +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_bigint_ord_ore, RIGHTARG = eql_v3.query_bigint_ord +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_bigint_ord, RIGHTARG = public.eql_v3_bigint_ord_ore +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_bigint_ord_ore, RIGHTARG = eql_v3.query_bigint_ord +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_bigint_ord, RIGHTARG = public.eql_v3_bigint_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_bigint_ord_ope, RIGHTARG = eql_v3.query_bigint_ord +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_bigint_ord, RIGHTARG = public.eql_v3_bigint_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_bigint_ord_ope, RIGHTARG = eql_v3.query_bigint_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_bigint_ord, RIGHTARG = public.eql_v3_bigint_ord_ope +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_bigint_ord_ope, RIGHTARG = eql_v3.query_bigint_ord +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_bigint_ord, RIGHTARG = public.eql_v3_bigint_ord_ope +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_bigint_ord_ope, RIGHTARG = eql_v3.query_bigint_ord +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_bigint_ord, RIGHTARG = public.eql_v3_bigint_ord_ope +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_bigint_ord_ope, RIGHTARG = eql_v3.query_bigint_ord +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_bigint_ord, RIGHTARG = public.eql_v3_bigint_ord_ope +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_bigint_ord_ope, RIGHTARG = eql_v3.query_bigint_ord +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_bigint_ord, RIGHTARG = public.eql_v3_bigint_ord_ope +); diff --git a/packages/eql/src/v3/scalars/bigint/query_bigint_ord_ore_functions.sql b/packages/eql/src/v3/scalars/bigint/query_bigint_ord_ore_functions.sql index 0875135da4..fe5c6cc58e 100644 --- a/packages/eql/src/v3/scalars/bigint/query_bigint_ord_ore_functions.sql +++ b/packages/eql/src/v3/scalars/bigint/query_bigint_ord_ore_functions.sql @@ -109,3 +109,255 @@ AS $$ SELECT eql_v3.ord_term_ore(a) OPERATOR(public.>=) eql_v3.ord_term_ore(b) $ CREATE FUNCTION eql_v3.gte(a eql_v3.query_bigint_ord_ore, b public.eql_v3_bigint_ord_ore) RETURNS boolean LANGUAGE sql IMMUTABLE STRICT PARALLEL SAFE AS $$ SELECT eql_v3.ord_term_ore(a) OPERATOR(public.>=) eql_v3.ord_term_ore(b) $$; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord_ore: public.eql_v3_bigint_eq and eql_v3.query_bigint_ord_ore (mismatched query domain). +--! @param a public.eql_v3_bigint_eq left operand +--! @param b eql_v3.query_bigint_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_bigint_eq, b eql_v3.query_bigint_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_bigint_eq and eql_v3.query_bigint_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord_ore: eql_v3.query_bigint_ord_ore and public.eql_v3_bigint_eq (mismatched query domain). +--! @param a eql_v3.query_bigint_ord_ore left operand +--! @param b public.eql_v3_bigint_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_bigint_ord_ore, b public.eql_v3_bigint_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_bigint_ord_ore and public.eql_v3_bigint_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord_ore: public.eql_v3_bigint_eq and eql_v3.query_bigint_ord_ore (mismatched query domain). +--! @param a public.eql_v3_bigint_eq left operand +--! @param b eql_v3.query_bigint_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_bigint_eq, b eql_v3.query_bigint_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_bigint_eq and eql_v3.query_bigint_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord_ore: eql_v3.query_bigint_ord_ore and public.eql_v3_bigint_eq (mismatched query domain). +--! @param a eql_v3.query_bigint_ord_ore left operand +--! @param b public.eql_v3_bigint_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_bigint_ord_ore, b public.eql_v3_bigint_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_bigint_ord_ore and public.eql_v3_bigint_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord_ore: public.eql_v3_bigint_ord and eql_v3.query_bigint_ord_ore (mismatched query domain). +--! @param a public.eql_v3_bigint_ord left operand +--! @param b eql_v3.query_bigint_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_bigint_ord, b eql_v3.query_bigint_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_bigint_ord and eql_v3.query_bigint_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord_ore: eql_v3.query_bigint_ord_ore and public.eql_v3_bigint_ord (mismatched query domain). +--! @param a eql_v3.query_bigint_ord_ore left operand +--! @param b public.eql_v3_bigint_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_bigint_ord_ore, b public.eql_v3_bigint_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_bigint_ord_ore and public.eql_v3_bigint_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord_ore: public.eql_v3_bigint_ord and eql_v3.query_bigint_ord_ore (mismatched query domain). +--! @param a public.eql_v3_bigint_ord left operand +--! @param b eql_v3.query_bigint_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_bigint_ord, b eql_v3.query_bigint_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_bigint_ord and eql_v3.query_bigint_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord_ore: eql_v3.query_bigint_ord_ore and public.eql_v3_bigint_ord (mismatched query domain). +--! @param a eql_v3.query_bigint_ord_ore left operand +--! @param b public.eql_v3_bigint_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_bigint_ord_ore, b public.eql_v3_bigint_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_bigint_ord_ore and public.eql_v3_bigint_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord_ore: public.eql_v3_bigint_ord and eql_v3.query_bigint_ord_ore (mismatched query domain). +--! @param a public.eql_v3_bigint_ord left operand +--! @param b eql_v3.query_bigint_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_bigint_ord, b eql_v3.query_bigint_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_bigint_ord and eql_v3.query_bigint_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord_ore: eql_v3.query_bigint_ord_ore and public.eql_v3_bigint_ord (mismatched query domain). +--! @param a eql_v3.query_bigint_ord_ore left operand +--! @param b public.eql_v3_bigint_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_bigint_ord_ore, b public.eql_v3_bigint_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_bigint_ord_ore and public.eql_v3_bigint_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord_ore: public.eql_v3_bigint_ord and eql_v3.query_bigint_ord_ore (mismatched query domain). +--! @param a public.eql_v3_bigint_ord left operand +--! @param b eql_v3.query_bigint_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_bigint_ord, b eql_v3.query_bigint_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_bigint_ord and eql_v3.query_bigint_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord_ore: eql_v3.query_bigint_ord_ore and public.eql_v3_bigint_ord (mismatched query domain). +--! @param a eql_v3.query_bigint_ord_ore left operand +--! @param b public.eql_v3_bigint_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_bigint_ord_ore, b public.eql_v3_bigint_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_bigint_ord_ore and public.eql_v3_bigint_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord_ore: public.eql_v3_bigint_ord and eql_v3.query_bigint_ord_ore (mismatched query domain). +--! @param a public.eql_v3_bigint_ord left operand +--! @param b eql_v3.query_bigint_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_bigint_ord, b eql_v3.query_bigint_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_bigint_ord and eql_v3.query_bigint_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord_ore: eql_v3.query_bigint_ord_ore and public.eql_v3_bigint_ord (mismatched query domain). +--! @param a eql_v3.query_bigint_ord_ore left operand +--! @param b public.eql_v3_bigint_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_bigint_ord_ore, b public.eql_v3_bigint_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_bigint_ord_ore and public.eql_v3_bigint_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord_ore: public.eql_v3_bigint_ord and eql_v3.query_bigint_ord_ore (mismatched query domain). +--! @param a public.eql_v3_bigint_ord left operand +--! @param b eql_v3.query_bigint_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_bigint_ord, b eql_v3.query_bigint_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_bigint_ord and eql_v3.query_bigint_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord_ore: eql_v3.query_bigint_ord_ore and public.eql_v3_bigint_ord (mismatched query domain). +--! @param a eql_v3.query_bigint_ord_ore left operand +--! @param b public.eql_v3_bigint_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_bigint_ord_ore, b public.eql_v3_bigint_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_bigint_ord_ore and public.eql_v3_bigint_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord_ore: public.eql_v3_bigint_ord_ope and eql_v3.query_bigint_ord_ore (mismatched query domain). +--! @param a public.eql_v3_bigint_ord_ope left operand +--! @param b eql_v3.query_bigint_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_bigint_ord_ope, b eql_v3.query_bigint_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_bigint_ord_ope and eql_v3.query_bigint_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord_ore: eql_v3.query_bigint_ord_ore and public.eql_v3_bigint_ord_ope (mismatched query domain). +--! @param a eql_v3.query_bigint_ord_ore left operand +--! @param b public.eql_v3_bigint_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_bigint_ord_ore, b public.eql_v3_bigint_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_bigint_ord_ore and public.eql_v3_bigint_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord_ore: public.eql_v3_bigint_ord_ope and eql_v3.query_bigint_ord_ore (mismatched query domain). +--! @param a public.eql_v3_bigint_ord_ope left operand +--! @param b eql_v3.query_bigint_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_bigint_ord_ope, b eql_v3.query_bigint_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_bigint_ord_ope and eql_v3.query_bigint_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord_ore: eql_v3.query_bigint_ord_ore and public.eql_v3_bigint_ord_ope (mismatched query domain). +--! @param a eql_v3.query_bigint_ord_ore left operand +--! @param b public.eql_v3_bigint_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_bigint_ord_ore, b public.eql_v3_bigint_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_bigint_ord_ore and public.eql_v3_bigint_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord_ore: public.eql_v3_bigint_ord_ope and eql_v3.query_bigint_ord_ore (mismatched query domain). +--! @param a public.eql_v3_bigint_ord_ope left operand +--! @param b eql_v3.query_bigint_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_bigint_ord_ope, b eql_v3.query_bigint_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_bigint_ord_ope and eql_v3.query_bigint_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord_ore: eql_v3.query_bigint_ord_ore and public.eql_v3_bigint_ord_ope (mismatched query domain). +--! @param a eql_v3.query_bigint_ord_ore left operand +--! @param b public.eql_v3_bigint_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_bigint_ord_ore, b public.eql_v3_bigint_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_bigint_ord_ore and public.eql_v3_bigint_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord_ore: public.eql_v3_bigint_ord_ope and eql_v3.query_bigint_ord_ore (mismatched query domain). +--! @param a public.eql_v3_bigint_ord_ope left operand +--! @param b eql_v3.query_bigint_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_bigint_ord_ope, b eql_v3.query_bigint_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_bigint_ord_ope and eql_v3.query_bigint_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord_ore: eql_v3.query_bigint_ord_ore and public.eql_v3_bigint_ord_ope (mismatched query domain). +--! @param a eql_v3.query_bigint_ord_ore left operand +--! @param b public.eql_v3_bigint_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_bigint_ord_ore, b public.eql_v3_bigint_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_bigint_ord_ore and public.eql_v3_bigint_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord_ore: public.eql_v3_bigint_ord_ope and eql_v3.query_bigint_ord_ore (mismatched query domain). +--! @param a public.eql_v3_bigint_ord_ope left operand +--! @param b eql_v3.query_bigint_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_bigint_ord_ope, b eql_v3.query_bigint_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_bigint_ord_ope and eql_v3.query_bigint_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord_ore: eql_v3.query_bigint_ord_ore and public.eql_v3_bigint_ord_ope (mismatched query domain). +--! @param a eql_v3.query_bigint_ord_ore left operand +--! @param b public.eql_v3_bigint_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_bigint_ord_ore, b public.eql_v3_bigint_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_bigint_ord_ore and public.eql_v3_bigint_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord_ore: public.eql_v3_bigint_ord_ope and eql_v3.query_bigint_ord_ore (mismatched query domain). +--! @param a public.eql_v3_bigint_ord_ope left operand +--! @param b eql_v3.query_bigint_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_bigint_ord_ope, b eql_v3.query_bigint_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_bigint_ord_ope and eql_v3.query_bigint_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_bigint_ord_ore: eql_v3.query_bigint_ord_ore and public.eql_v3_bigint_ord_ope (mismatched query domain). +--! @param a eql_v3.query_bigint_ord_ore left operand +--! @param b public.eql_v3_bigint_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_bigint_ord_ore, b public.eql_v3_bigint_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_bigint_ord_ore and public.eql_v3_bigint_ord_ope'; END; $$ +LANGUAGE plpgsql; diff --git a/packages/eql/src/v3/scalars/bigint/query_bigint_ord_ore_operators.sql b/packages/eql/src/v3/scalars/bigint/query_bigint_ord_ore_operators.sql index d672cfe57b..c5bc5b14dc 100644 --- a/packages/eql/src/v3/scalars/bigint/query_bigint_ord_ore_operators.sql +++ b/packages/eql/src/v3/scalars/bigint/query_bigint_ord_ore_operators.sql @@ -77,3 +77,143 @@ CREATE OPERATOR >= ( LEFTARG = eql_v3.query_bigint_ord_ore, RIGHTARG = public.eql_v3_bigint_ord_ore, COMMUTATOR = <=, NEGATOR = <, RESTRICT = scalargesel, JOIN = scalargejoinsel ); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_bigint_eq, RIGHTARG = eql_v3.query_bigint_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_bigint_ord_ore, RIGHTARG = public.eql_v3_bigint_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_bigint_eq, RIGHTARG = eql_v3.query_bigint_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_bigint_ord_ore, RIGHTARG = public.eql_v3_bigint_eq +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_bigint_ord, RIGHTARG = eql_v3.query_bigint_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_bigint_ord_ore, RIGHTARG = public.eql_v3_bigint_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_bigint_ord, RIGHTARG = eql_v3.query_bigint_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_bigint_ord_ore, RIGHTARG = public.eql_v3_bigint_ord +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_bigint_ord, RIGHTARG = eql_v3.query_bigint_ord_ore +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_bigint_ord_ore, RIGHTARG = public.eql_v3_bigint_ord +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_bigint_ord, RIGHTARG = eql_v3.query_bigint_ord_ore +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_bigint_ord_ore, RIGHTARG = public.eql_v3_bigint_ord +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_bigint_ord, RIGHTARG = eql_v3.query_bigint_ord_ore +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_bigint_ord_ore, RIGHTARG = public.eql_v3_bigint_ord +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_bigint_ord, RIGHTARG = eql_v3.query_bigint_ord_ore +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_bigint_ord_ore, RIGHTARG = public.eql_v3_bigint_ord +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_bigint_ord_ope, RIGHTARG = eql_v3.query_bigint_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_bigint_ord_ore, RIGHTARG = public.eql_v3_bigint_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_bigint_ord_ope, RIGHTARG = eql_v3.query_bigint_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_bigint_ord_ore, RIGHTARG = public.eql_v3_bigint_ord_ope +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_bigint_ord_ope, RIGHTARG = eql_v3.query_bigint_ord_ore +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_bigint_ord_ore, RIGHTARG = public.eql_v3_bigint_ord_ope +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_bigint_ord_ope, RIGHTARG = eql_v3.query_bigint_ord_ore +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_bigint_ord_ore, RIGHTARG = public.eql_v3_bigint_ord_ope +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_bigint_ord_ope, RIGHTARG = eql_v3.query_bigint_ord_ore +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_bigint_ord_ore, RIGHTARG = public.eql_v3_bigint_ord_ope +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_bigint_ord_ope, RIGHTARG = eql_v3.query_bigint_ord_ore +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_bigint_ord_ore, RIGHTARG = public.eql_v3_bigint_ord_ope +); diff --git a/packages/eql/src/v3/scalars/date/query_date_eq_functions.sql b/packages/eql/src/v3/scalars/date/query_date_eq_functions.sql index f92716646b..6065d9e5e0 100644 --- a/packages/eql/src/v3/scalars/date/query_date_eq_functions.sql +++ b/packages/eql/src/v3/scalars/date/query_date_eq_functions.sql @@ -45,3 +45,111 @@ AS $$ SELECT eql_v3.eq_term(a) OPERATOR(pg_catalog.<>) eql_v3.eq_term(b) $$; CREATE FUNCTION eql_v3.neq(a eql_v3.query_date_eq, b public.eql_v3_date_eq) RETURNS boolean LANGUAGE sql IMMUTABLE STRICT PARALLEL SAFE AS $$ SELECT eql_v3.eq_term(a) OPERATOR(pg_catalog.<>) eql_v3.eq_term(b) $$; + +--! @brief Unsupported operator blocker for eql_v3.query_date_eq: public.eql_v3_date_ord_ore and eql_v3.query_date_eq (mismatched query domain). +--! @param a public.eql_v3_date_ord_ore left operand +--! @param b eql_v3.query_date_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_date_ord_ore, b eql_v3.query_date_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_date_ord_ore and eql_v3.query_date_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_eq: eql_v3.query_date_eq and public.eql_v3_date_ord_ore (mismatched query domain). +--! @param a eql_v3.query_date_eq left operand +--! @param b public.eql_v3_date_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_date_eq, b public.eql_v3_date_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_date_eq and public.eql_v3_date_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_eq: public.eql_v3_date_ord_ore and eql_v3.query_date_eq (mismatched query domain). +--! @param a public.eql_v3_date_ord_ore left operand +--! @param b eql_v3.query_date_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_date_ord_ore, b eql_v3.query_date_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_date_ord_ore and eql_v3.query_date_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_eq: eql_v3.query_date_eq and public.eql_v3_date_ord_ore (mismatched query domain). +--! @param a eql_v3.query_date_eq left operand +--! @param b public.eql_v3_date_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_date_eq, b public.eql_v3_date_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_date_eq and public.eql_v3_date_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_eq: public.eql_v3_date_ord and eql_v3.query_date_eq (mismatched query domain). +--! @param a public.eql_v3_date_ord left operand +--! @param b eql_v3.query_date_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_date_ord, b eql_v3.query_date_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_date_ord and eql_v3.query_date_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_eq: eql_v3.query_date_eq and public.eql_v3_date_ord (mismatched query domain). +--! @param a eql_v3.query_date_eq left operand +--! @param b public.eql_v3_date_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_date_eq, b public.eql_v3_date_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_date_eq and public.eql_v3_date_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_eq: public.eql_v3_date_ord and eql_v3.query_date_eq (mismatched query domain). +--! @param a public.eql_v3_date_ord left operand +--! @param b eql_v3.query_date_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_date_ord, b eql_v3.query_date_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_date_ord and eql_v3.query_date_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_eq: eql_v3.query_date_eq and public.eql_v3_date_ord (mismatched query domain). +--! @param a eql_v3.query_date_eq left operand +--! @param b public.eql_v3_date_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_date_eq, b public.eql_v3_date_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_date_eq and public.eql_v3_date_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_eq: public.eql_v3_date_ord_ope and eql_v3.query_date_eq (mismatched query domain). +--! @param a public.eql_v3_date_ord_ope left operand +--! @param b eql_v3.query_date_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_date_ord_ope, b eql_v3.query_date_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_date_ord_ope and eql_v3.query_date_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_eq: eql_v3.query_date_eq and public.eql_v3_date_ord_ope (mismatched query domain). +--! @param a eql_v3.query_date_eq left operand +--! @param b public.eql_v3_date_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_date_eq, b public.eql_v3_date_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_date_eq and public.eql_v3_date_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_eq: public.eql_v3_date_ord_ope and eql_v3.query_date_eq (mismatched query domain). +--! @param a public.eql_v3_date_ord_ope left operand +--! @param b eql_v3.query_date_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_date_ord_ope, b eql_v3.query_date_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_date_ord_ope and eql_v3.query_date_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_eq: eql_v3.query_date_eq and public.eql_v3_date_ord_ope (mismatched query domain). +--! @param a eql_v3.query_date_eq left operand +--! @param b public.eql_v3_date_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_date_eq, b public.eql_v3_date_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_date_eq and public.eql_v3_date_ord_ope'; END; $$ +LANGUAGE plpgsql; diff --git a/packages/eql/src/v3/scalars/date/query_date_eq_operators.sql b/packages/eql/src/v3/scalars/date/query_date_eq_operators.sql index 9fe762f09e..8c78f31a0d 100644 --- a/packages/eql/src/v3/scalars/date/query_date_eq_operators.sql +++ b/packages/eql/src/v3/scalars/date/query_date_eq_operators.sql @@ -29,3 +29,63 @@ CREATE OPERATOR <> ( LEFTARG = eql_v3.query_date_eq, RIGHTARG = public.eql_v3_date_eq, COMMUTATOR = <>, NEGATOR = =, RESTRICT = neqsel, JOIN = neqjoinsel ); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_date_ord_ore, RIGHTARG = eql_v3.query_date_eq +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_date_eq, RIGHTARG = public.eql_v3_date_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_date_ord_ore, RIGHTARG = eql_v3.query_date_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_date_eq, RIGHTARG = public.eql_v3_date_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_date_ord, RIGHTARG = eql_v3.query_date_eq +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_date_eq, RIGHTARG = public.eql_v3_date_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_date_ord, RIGHTARG = eql_v3.query_date_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_date_eq, RIGHTARG = public.eql_v3_date_ord +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_date_ord_ope, RIGHTARG = eql_v3.query_date_eq +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_date_eq, RIGHTARG = public.eql_v3_date_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_date_ord_ope, RIGHTARG = eql_v3.query_date_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_date_eq, RIGHTARG = public.eql_v3_date_ord_ope +); diff --git a/packages/eql/src/v3/scalars/date/query_date_ord_functions.sql b/packages/eql/src/v3/scalars/date/query_date_ord_functions.sql index ccf8a660f7..0e5827e8a1 100644 --- a/packages/eql/src/v3/scalars/date/query_date_ord_functions.sql +++ b/packages/eql/src/v3/scalars/date/query_date_ord_functions.sql @@ -109,3 +109,255 @@ AS $$ SELECT eql_v3.ord_term(a) OPERATOR(pg_catalog.>=) eql_v3.ord_term(b) $$; CREATE FUNCTION eql_v3.gte(a eql_v3.query_date_ord, b public.eql_v3_date_ord) RETURNS boolean LANGUAGE sql IMMUTABLE STRICT PARALLEL SAFE AS $$ SELECT eql_v3.ord_term(a) OPERATOR(pg_catalog.>=) eql_v3.ord_term(b) $$; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord: public.eql_v3_date_eq and eql_v3.query_date_ord (mismatched query domain). +--! @param a public.eql_v3_date_eq left operand +--! @param b eql_v3.query_date_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_date_eq, b eql_v3.query_date_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_date_eq and eql_v3.query_date_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord: eql_v3.query_date_ord and public.eql_v3_date_eq (mismatched query domain). +--! @param a eql_v3.query_date_ord left operand +--! @param b public.eql_v3_date_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_date_ord, b public.eql_v3_date_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_date_ord and public.eql_v3_date_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord: public.eql_v3_date_eq and eql_v3.query_date_ord (mismatched query domain). +--! @param a public.eql_v3_date_eq left operand +--! @param b eql_v3.query_date_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_date_eq, b eql_v3.query_date_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_date_eq and eql_v3.query_date_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord: eql_v3.query_date_ord and public.eql_v3_date_eq (mismatched query domain). +--! @param a eql_v3.query_date_ord left operand +--! @param b public.eql_v3_date_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_date_ord, b public.eql_v3_date_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_date_ord and public.eql_v3_date_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord: public.eql_v3_date_ord_ore and eql_v3.query_date_ord (mismatched query domain). +--! @param a public.eql_v3_date_ord_ore left operand +--! @param b eql_v3.query_date_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_date_ord_ore, b eql_v3.query_date_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_date_ord_ore and eql_v3.query_date_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord: eql_v3.query_date_ord and public.eql_v3_date_ord_ore (mismatched query domain). +--! @param a eql_v3.query_date_ord left operand +--! @param b public.eql_v3_date_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_date_ord, b public.eql_v3_date_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_date_ord and public.eql_v3_date_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord: public.eql_v3_date_ord_ore and eql_v3.query_date_ord (mismatched query domain). +--! @param a public.eql_v3_date_ord_ore left operand +--! @param b eql_v3.query_date_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_date_ord_ore, b eql_v3.query_date_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_date_ord_ore and eql_v3.query_date_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord: eql_v3.query_date_ord and public.eql_v3_date_ord_ore (mismatched query domain). +--! @param a eql_v3.query_date_ord left operand +--! @param b public.eql_v3_date_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_date_ord, b public.eql_v3_date_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_date_ord and public.eql_v3_date_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord: public.eql_v3_date_ord_ore and eql_v3.query_date_ord (mismatched query domain). +--! @param a public.eql_v3_date_ord_ore left operand +--! @param b eql_v3.query_date_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_date_ord_ore, b eql_v3.query_date_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_date_ord_ore and eql_v3.query_date_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord: eql_v3.query_date_ord and public.eql_v3_date_ord_ore (mismatched query domain). +--! @param a eql_v3.query_date_ord left operand +--! @param b public.eql_v3_date_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_date_ord, b public.eql_v3_date_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_date_ord and public.eql_v3_date_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord: public.eql_v3_date_ord_ore and eql_v3.query_date_ord (mismatched query domain). +--! @param a public.eql_v3_date_ord_ore left operand +--! @param b eql_v3.query_date_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_date_ord_ore, b eql_v3.query_date_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_date_ord_ore and eql_v3.query_date_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord: eql_v3.query_date_ord and public.eql_v3_date_ord_ore (mismatched query domain). +--! @param a eql_v3.query_date_ord left operand +--! @param b public.eql_v3_date_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_date_ord, b public.eql_v3_date_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_date_ord and public.eql_v3_date_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord: public.eql_v3_date_ord_ore and eql_v3.query_date_ord (mismatched query domain). +--! @param a public.eql_v3_date_ord_ore left operand +--! @param b eql_v3.query_date_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_date_ord_ore, b eql_v3.query_date_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_date_ord_ore and eql_v3.query_date_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord: eql_v3.query_date_ord and public.eql_v3_date_ord_ore (mismatched query domain). +--! @param a eql_v3.query_date_ord left operand +--! @param b public.eql_v3_date_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_date_ord, b public.eql_v3_date_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_date_ord and public.eql_v3_date_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord: public.eql_v3_date_ord_ore and eql_v3.query_date_ord (mismatched query domain). +--! @param a public.eql_v3_date_ord_ore left operand +--! @param b eql_v3.query_date_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_date_ord_ore, b eql_v3.query_date_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_date_ord_ore and eql_v3.query_date_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord: eql_v3.query_date_ord and public.eql_v3_date_ord_ore (mismatched query domain). +--! @param a eql_v3.query_date_ord left operand +--! @param b public.eql_v3_date_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_date_ord, b public.eql_v3_date_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_date_ord and public.eql_v3_date_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord: public.eql_v3_date_ord_ope and eql_v3.query_date_ord (mismatched query domain). +--! @param a public.eql_v3_date_ord_ope left operand +--! @param b eql_v3.query_date_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_date_ord_ope, b eql_v3.query_date_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_date_ord_ope and eql_v3.query_date_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord: eql_v3.query_date_ord and public.eql_v3_date_ord_ope (mismatched query domain). +--! @param a eql_v3.query_date_ord left operand +--! @param b public.eql_v3_date_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_date_ord, b public.eql_v3_date_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_date_ord and public.eql_v3_date_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord: public.eql_v3_date_ord_ope and eql_v3.query_date_ord (mismatched query domain). +--! @param a public.eql_v3_date_ord_ope left operand +--! @param b eql_v3.query_date_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_date_ord_ope, b eql_v3.query_date_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_date_ord_ope and eql_v3.query_date_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord: eql_v3.query_date_ord and public.eql_v3_date_ord_ope (mismatched query domain). +--! @param a eql_v3.query_date_ord left operand +--! @param b public.eql_v3_date_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_date_ord, b public.eql_v3_date_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_date_ord and public.eql_v3_date_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord: public.eql_v3_date_ord_ope and eql_v3.query_date_ord (mismatched query domain). +--! @param a public.eql_v3_date_ord_ope left operand +--! @param b eql_v3.query_date_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_date_ord_ope, b eql_v3.query_date_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_date_ord_ope and eql_v3.query_date_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord: eql_v3.query_date_ord and public.eql_v3_date_ord_ope (mismatched query domain). +--! @param a eql_v3.query_date_ord left operand +--! @param b public.eql_v3_date_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_date_ord, b public.eql_v3_date_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_date_ord and public.eql_v3_date_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord: public.eql_v3_date_ord_ope and eql_v3.query_date_ord (mismatched query domain). +--! @param a public.eql_v3_date_ord_ope left operand +--! @param b eql_v3.query_date_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_date_ord_ope, b eql_v3.query_date_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_date_ord_ope and eql_v3.query_date_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord: eql_v3.query_date_ord and public.eql_v3_date_ord_ope (mismatched query domain). +--! @param a eql_v3.query_date_ord left operand +--! @param b public.eql_v3_date_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_date_ord, b public.eql_v3_date_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_date_ord and public.eql_v3_date_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord: public.eql_v3_date_ord_ope and eql_v3.query_date_ord (mismatched query domain). +--! @param a public.eql_v3_date_ord_ope left operand +--! @param b eql_v3.query_date_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_date_ord_ope, b eql_v3.query_date_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_date_ord_ope and eql_v3.query_date_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord: eql_v3.query_date_ord and public.eql_v3_date_ord_ope (mismatched query domain). +--! @param a eql_v3.query_date_ord left operand +--! @param b public.eql_v3_date_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_date_ord, b public.eql_v3_date_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_date_ord and public.eql_v3_date_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord: public.eql_v3_date_ord_ope and eql_v3.query_date_ord (mismatched query domain). +--! @param a public.eql_v3_date_ord_ope left operand +--! @param b eql_v3.query_date_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_date_ord_ope, b eql_v3.query_date_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_date_ord_ope and eql_v3.query_date_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord: eql_v3.query_date_ord and public.eql_v3_date_ord_ope (mismatched query domain). +--! @param a eql_v3.query_date_ord left operand +--! @param b public.eql_v3_date_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_date_ord, b public.eql_v3_date_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_date_ord and public.eql_v3_date_ord_ope'; END; $$ +LANGUAGE plpgsql; diff --git a/packages/eql/src/v3/scalars/date/query_date_ord_ope_functions.sql b/packages/eql/src/v3/scalars/date/query_date_ord_ope_functions.sql index ee0de84bb2..5ac0dd0d93 100644 --- a/packages/eql/src/v3/scalars/date/query_date_ord_ope_functions.sql +++ b/packages/eql/src/v3/scalars/date/query_date_ord_ope_functions.sql @@ -109,3 +109,255 @@ AS $$ SELECT eql_v3.ord_term(a) OPERATOR(pg_catalog.>=) eql_v3.ord_term(b) $$; CREATE FUNCTION eql_v3.gte(a eql_v3.query_date_ord_ope, b public.eql_v3_date_ord_ope) RETURNS boolean LANGUAGE sql IMMUTABLE STRICT PARALLEL SAFE AS $$ SELECT eql_v3.ord_term(a) OPERATOR(pg_catalog.>=) eql_v3.ord_term(b) $$; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord_ope: public.eql_v3_date_eq and eql_v3.query_date_ord_ope (mismatched query domain). +--! @param a public.eql_v3_date_eq left operand +--! @param b eql_v3.query_date_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_date_eq, b eql_v3.query_date_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_date_eq and eql_v3.query_date_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord_ope: eql_v3.query_date_ord_ope and public.eql_v3_date_eq (mismatched query domain). +--! @param a eql_v3.query_date_ord_ope left operand +--! @param b public.eql_v3_date_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_date_ord_ope, b public.eql_v3_date_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_date_ord_ope and public.eql_v3_date_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord_ope: public.eql_v3_date_eq and eql_v3.query_date_ord_ope (mismatched query domain). +--! @param a public.eql_v3_date_eq left operand +--! @param b eql_v3.query_date_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_date_eq, b eql_v3.query_date_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_date_eq and eql_v3.query_date_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord_ope: eql_v3.query_date_ord_ope and public.eql_v3_date_eq (mismatched query domain). +--! @param a eql_v3.query_date_ord_ope left operand +--! @param b public.eql_v3_date_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_date_ord_ope, b public.eql_v3_date_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_date_ord_ope and public.eql_v3_date_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord_ope: public.eql_v3_date_ord_ore and eql_v3.query_date_ord_ope (mismatched query domain). +--! @param a public.eql_v3_date_ord_ore left operand +--! @param b eql_v3.query_date_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_date_ord_ore, b eql_v3.query_date_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_date_ord_ore and eql_v3.query_date_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord_ope: eql_v3.query_date_ord_ope and public.eql_v3_date_ord_ore (mismatched query domain). +--! @param a eql_v3.query_date_ord_ope left operand +--! @param b public.eql_v3_date_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_date_ord_ope, b public.eql_v3_date_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_date_ord_ope and public.eql_v3_date_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord_ope: public.eql_v3_date_ord_ore and eql_v3.query_date_ord_ope (mismatched query domain). +--! @param a public.eql_v3_date_ord_ore left operand +--! @param b eql_v3.query_date_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_date_ord_ore, b eql_v3.query_date_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_date_ord_ore and eql_v3.query_date_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord_ope: eql_v3.query_date_ord_ope and public.eql_v3_date_ord_ore (mismatched query domain). +--! @param a eql_v3.query_date_ord_ope left operand +--! @param b public.eql_v3_date_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_date_ord_ope, b public.eql_v3_date_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_date_ord_ope and public.eql_v3_date_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord_ope: public.eql_v3_date_ord_ore and eql_v3.query_date_ord_ope (mismatched query domain). +--! @param a public.eql_v3_date_ord_ore left operand +--! @param b eql_v3.query_date_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_date_ord_ore, b eql_v3.query_date_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_date_ord_ore and eql_v3.query_date_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord_ope: eql_v3.query_date_ord_ope and public.eql_v3_date_ord_ore (mismatched query domain). +--! @param a eql_v3.query_date_ord_ope left operand +--! @param b public.eql_v3_date_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_date_ord_ope, b public.eql_v3_date_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_date_ord_ope and public.eql_v3_date_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord_ope: public.eql_v3_date_ord_ore and eql_v3.query_date_ord_ope (mismatched query domain). +--! @param a public.eql_v3_date_ord_ore left operand +--! @param b eql_v3.query_date_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_date_ord_ore, b eql_v3.query_date_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_date_ord_ore and eql_v3.query_date_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord_ope: eql_v3.query_date_ord_ope and public.eql_v3_date_ord_ore (mismatched query domain). +--! @param a eql_v3.query_date_ord_ope left operand +--! @param b public.eql_v3_date_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_date_ord_ope, b public.eql_v3_date_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_date_ord_ope and public.eql_v3_date_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord_ope: public.eql_v3_date_ord_ore and eql_v3.query_date_ord_ope (mismatched query domain). +--! @param a public.eql_v3_date_ord_ore left operand +--! @param b eql_v3.query_date_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_date_ord_ore, b eql_v3.query_date_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_date_ord_ore and eql_v3.query_date_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord_ope: eql_v3.query_date_ord_ope and public.eql_v3_date_ord_ore (mismatched query domain). +--! @param a eql_v3.query_date_ord_ope left operand +--! @param b public.eql_v3_date_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_date_ord_ope, b public.eql_v3_date_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_date_ord_ope and public.eql_v3_date_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord_ope: public.eql_v3_date_ord_ore and eql_v3.query_date_ord_ope (mismatched query domain). +--! @param a public.eql_v3_date_ord_ore left operand +--! @param b eql_v3.query_date_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_date_ord_ore, b eql_v3.query_date_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_date_ord_ore and eql_v3.query_date_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord_ope: eql_v3.query_date_ord_ope and public.eql_v3_date_ord_ore (mismatched query domain). +--! @param a eql_v3.query_date_ord_ope left operand +--! @param b public.eql_v3_date_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_date_ord_ope, b public.eql_v3_date_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_date_ord_ope and public.eql_v3_date_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord_ope: public.eql_v3_date_ord and eql_v3.query_date_ord_ope (mismatched query domain). +--! @param a public.eql_v3_date_ord left operand +--! @param b eql_v3.query_date_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_date_ord, b eql_v3.query_date_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_date_ord and eql_v3.query_date_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord_ope: eql_v3.query_date_ord_ope and public.eql_v3_date_ord (mismatched query domain). +--! @param a eql_v3.query_date_ord_ope left operand +--! @param b public.eql_v3_date_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_date_ord_ope, b public.eql_v3_date_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_date_ord_ope and public.eql_v3_date_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord_ope: public.eql_v3_date_ord and eql_v3.query_date_ord_ope (mismatched query domain). +--! @param a public.eql_v3_date_ord left operand +--! @param b eql_v3.query_date_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_date_ord, b eql_v3.query_date_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_date_ord and eql_v3.query_date_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord_ope: eql_v3.query_date_ord_ope and public.eql_v3_date_ord (mismatched query domain). +--! @param a eql_v3.query_date_ord_ope left operand +--! @param b public.eql_v3_date_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_date_ord_ope, b public.eql_v3_date_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_date_ord_ope and public.eql_v3_date_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord_ope: public.eql_v3_date_ord and eql_v3.query_date_ord_ope (mismatched query domain). +--! @param a public.eql_v3_date_ord left operand +--! @param b eql_v3.query_date_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_date_ord, b eql_v3.query_date_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_date_ord and eql_v3.query_date_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord_ope: eql_v3.query_date_ord_ope and public.eql_v3_date_ord (mismatched query domain). +--! @param a eql_v3.query_date_ord_ope left operand +--! @param b public.eql_v3_date_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_date_ord_ope, b public.eql_v3_date_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_date_ord_ope and public.eql_v3_date_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord_ope: public.eql_v3_date_ord and eql_v3.query_date_ord_ope (mismatched query domain). +--! @param a public.eql_v3_date_ord left operand +--! @param b eql_v3.query_date_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_date_ord, b eql_v3.query_date_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_date_ord and eql_v3.query_date_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord_ope: eql_v3.query_date_ord_ope and public.eql_v3_date_ord (mismatched query domain). +--! @param a eql_v3.query_date_ord_ope left operand +--! @param b public.eql_v3_date_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_date_ord_ope, b public.eql_v3_date_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_date_ord_ope and public.eql_v3_date_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord_ope: public.eql_v3_date_ord and eql_v3.query_date_ord_ope (mismatched query domain). +--! @param a public.eql_v3_date_ord left operand +--! @param b eql_v3.query_date_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_date_ord, b eql_v3.query_date_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_date_ord and eql_v3.query_date_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord_ope: eql_v3.query_date_ord_ope and public.eql_v3_date_ord (mismatched query domain). +--! @param a eql_v3.query_date_ord_ope left operand +--! @param b public.eql_v3_date_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_date_ord_ope, b public.eql_v3_date_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_date_ord_ope and public.eql_v3_date_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord_ope: public.eql_v3_date_ord and eql_v3.query_date_ord_ope (mismatched query domain). +--! @param a public.eql_v3_date_ord left operand +--! @param b eql_v3.query_date_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_date_ord, b eql_v3.query_date_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_date_ord and eql_v3.query_date_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord_ope: eql_v3.query_date_ord_ope and public.eql_v3_date_ord (mismatched query domain). +--! @param a eql_v3.query_date_ord_ope left operand +--! @param b public.eql_v3_date_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_date_ord_ope, b public.eql_v3_date_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_date_ord_ope and public.eql_v3_date_ord'; END; $$ +LANGUAGE plpgsql; diff --git a/packages/eql/src/v3/scalars/date/query_date_ord_ope_operators.sql b/packages/eql/src/v3/scalars/date/query_date_ord_ope_operators.sql index 02b85da2bb..cc4e7cce65 100644 --- a/packages/eql/src/v3/scalars/date/query_date_ord_ope_operators.sql +++ b/packages/eql/src/v3/scalars/date/query_date_ord_ope_operators.sql @@ -77,3 +77,143 @@ CREATE OPERATOR >= ( LEFTARG = eql_v3.query_date_ord_ope, RIGHTARG = public.eql_v3_date_ord_ope, COMMUTATOR = <=, NEGATOR = <, RESTRICT = scalargesel, JOIN = scalargejoinsel ); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_date_eq, RIGHTARG = eql_v3.query_date_ord_ope +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_date_ord_ope, RIGHTARG = public.eql_v3_date_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_date_eq, RIGHTARG = eql_v3.query_date_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_date_ord_ope, RIGHTARG = public.eql_v3_date_eq +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_date_ord_ore, RIGHTARG = eql_v3.query_date_ord_ope +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_date_ord_ope, RIGHTARG = public.eql_v3_date_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_date_ord_ore, RIGHTARG = eql_v3.query_date_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_date_ord_ope, RIGHTARG = public.eql_v3_date_ord_ore +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_date_ord_ore, RIGHTARG = eql_v3.query_date_ord_ope +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_date_ord_ope, RIGHTARG = public.eql_v3_date_ord_ore +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_date_ord_ore, RIGHTARG = eql_v3.query_date_ord_ope +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_date_ord_ope, RIGHTARG = public.eql_v3_date_ord_ore +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_date_ord_ore, RIGHTARG = eql_v3.query_date_ord_ope +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_date_ord_ope, RIGHTARG = public.eql_v3_date_ord_ore +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_date_ord_ore, RIGHTARG = eql_v3.query_date_ord_ope +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_date_ord_ope, RIGHTARG = public.eql_v3_date_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_date_ord, RIGHTARG = eql_v3.query_date_ord_ope +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_date_ord_ope, RIGHTARG = public.eql_v3_date_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_date_ord, RIGHTARG = eql_v3.query_date_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_date_ord_ope, RIGHTARG = public.eql_v3_date_ord +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_date_ord, RIGHTARG = eql_v3.query_date_ord_ope +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_date_ord_ope, RIGHTARG = public.eql_v3_date_ord +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_date_ord, RIGHTARG = eql_v3.query_date_ord_ope +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_date_ord_ope, RIGHTARG = public.eql_v3_date_ord +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_date_ord, RIGHTARG = eql_v3.query_date_ord_ope +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_date_ord_ope, RIGHTARG = public.eql_v3_date_ord +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_date_ord, RIGHTARG = eql_v3.query_date_ord_ope +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_date_ord_ope, RIGHTARG = public.eql_v3_date_ord +); diff --git a/packages/eql/src/v3/scalars/date/query_date_ord_operators.sql b/packages/eql/src/v3/scalars/date/query_date_ord_operators.sql index 94d0cdf44e..7859ff8322 100644 --- a/packages/eql/src/v3/scalars/date/query_date_ord_operators.sql +++ b/packages/eql/src/v3/scalars/date/query_date_ord_operators.sql @@ -77,3 +77,143 @@ CREATE OPERATOR >= ( LEFTARG = eql_v3.query_date_ord, RIGHTARG = public.eql_v3_date_ord, COMMUTATOR = <=, NEGATOR = <, RESTRICT = scalargesel, JOIN = scalargejoinsel ); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_date_eq, RIGHTARG = eql_v3.query_date_ord +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_date_ord, RIGHTARG = public.eql_v3_date_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_date_eq, RIGHTARG = eql_v3.query_date_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_date_ord, RIGHTARG = public.eql_v3_date_eq +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_date_ord_ore, RIGHTARG = eql_v3.query_date_ord +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_date_ord, RIGHTARG = public.eql_v3_date_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_date_ord_ore, RIGHTARG = eql_v3.query_date_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_date_ord, RIGHTARG = public.eql_v3_date_ord_ore +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_date_ord_ore, RIGHTARG = eql_v3.query_date_ord +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_date_ord, RIGHTARG = public.eql_v3_date_ord_ore +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_date_ord_ore, RIGHTARG = eql_v3.query_date_ord +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_date_ord, RIGHTARG = public.eql_v3_date_ord_ore +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_date_ord_ore, RIGHTARG = eql_v3.query_date_ord +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_date_ord, RIGHTARG = public.eql_v3_date_ord_ore +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_date_ord_ore, RIGHTARG = eql_v3.query_date_ord +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_date_ord, RIGHTARG = public.eql_v3_date_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_date_ord_ope, RIGHTARG = eql_v3.query_date_ord +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_date_ord, RIGHTARG = public.eql_v3_date_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_date_ord_ope, RIGHTARG = eql_v3.query_date_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_date_ord, RIGHTARG = public.eql_v3_date_ord_ope +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_date_ord_ope, RIGHTARG = eql_v3.query_date_ord +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_date_ord, RIGHTARG = public.eql_v3_date_ord_ope +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_date_ord_ope, RIGHTARG = eql_v3.query_date_ord +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_date_ord, RIGHTARG = public.eql_v3_date_ord_ope +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_date_ord_ope, RIGHTARG = eql_v3.query_date_ord +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_date_ord, RIGHTARG = public.eql_v3_date_ord_ope +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_date_ord_ope, RIGHTARG = eql_v3.query_date_ord +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_date_ord, RIGHTARG = public.eql_v3_date_ord_ope +); diff --git a/packages/eql/src/v3/scalars/date/query_date_ord_ore_functions.sql b/packages/eql/src/v3/scalars/date/query_date_ord_ore_functions.sql index 0d524b9acb..7f44609885 100644 --- a/packages/eql/src/v3/scalars/date/query_date_ord_ore_functions.sql +++ b/packages/eql/src/v3/scalars/date/query_date_ord_ore_functions.sql @@ -109,3 +109,255 @@ AS $$ SELECT eql_v3.ord_term_ore(a) OPERATOR(public.>=) eql_v3.ord_term_ore(b) $ CREATE FUNCTION eql_v3.gte(a eql_v3.query_date_ord_ore, b public.eql_v3_date_ord_ore) RETURNS boolean LANGUAGE sql IMMUTABLE STRICT PARALLEL SAFE AS $$ SELECT eql_v3.ord_term_ore(a) OPERATOR(public.>=) eql_v3.ord_term_ore(b) $$; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord_ore: public.eql_v3_date_eq and eql_v3.query_date_ord_ore (mismatched query domain). +--! @param a public.eql_v3_date_eq left operand +--! @param b eql_v3.query_date_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_date_eq, b eql_v3.query_date_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_date_eq and eql_v3.query_date_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord_ore: eql_v3.query_date_ord_ore and public.eql_v3_date_eq (mismatched query domain). +--! @param a eql_v3.query_date_ord_ore left operand +--! @param b public.eql_v3_date_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_date_ord_ore, b public.eql_v3_date_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_date_ord_ore and public.eql_v3_date_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord_ore: public.eql_v3_date_eq and eql_v3.query_date_ord_ore (mismatched query domain). +--! @param a public.eql_v3_date_eq left operand +--! @param b eql_v3.query_date_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_date_eq, b eql_v3.query_date_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_date_eq and eql_v3.query_date_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord_ore: eql_v3.query_date_ord_ore and public.eql_v3_date_eq (mismatched query domain). +--! @param a eql_v3.query_date_ord_ore left operand +--! @param b public.eql_v3_date_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_date_ord_ore, b public.eql_v3_date_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_date_ord_ore and public.eql_v3_date_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord_ore: public.eql_v3_date_ord and eql_v3.query_date_ord_ore (mismatched query domain). +--! @param a public.eql_v3_date_ord left operand +--! @param b eql_v3.query_date_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_date_ord, b eql_v3.query_date_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_date_ord and eql_v3.query_date_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord_ore: eql_v3.query_date_ord_ore and public.eql_v3_date_ord (mismatched query domain). +--! @param a eql_v3.query_date_ord_ore left operand +--! @param b public.eql_v3_date_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_date_ord_ore, b public.eql_v3_date_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_date_ord_ore and public.eql_v3_date_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord_ore: public.eql_v3_date_ord and eql_v3.query_date_ord_ore (mismatched query domain). +--! @param a public.eql_v3_date_ord left operand +--! @param b eql_v3.query_date_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_date_ord, b eql_v3.query_date_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_date_ord and eql_v3.query_date_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord_ore: eql_v3.query_date_ord_ore and public.eql_v3_date_ord (mismatched query domain). +--! @param a eql_v3.query_date_ord_ore left operand +--! @param b public.eql_v3_date_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_date_ord_ore, b public.eql_v3_date_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_date_ord_ore and public.eql_v3_date_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord_ore: public.eql_v3_date_ord and eql_v3.query_date_ord_ore (mismatched query domain). +--! @param a public.eql_v3_date_ord left operand +--! @param b eql_v3.query_date_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_date_ord, b eql_v3.query_date_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_date_ord and eql_v3.query_date_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord_ore: eql_v3.query_date_ord_ore and public.eql_v3_date_ord (mismatched query domain). +--! @param a eql_v3.query_date_ord_ore left operand +--! @param b public.eql_v3_date_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_date_ord_ore, b public.eql_v3_date_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_date_ord_ore and public.eql_v3_date_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord_ore: public.eql_v3_date_ord and eql_v3.query_date_ord_ore (mismatched query domain). +--! @param a public.eql_v3_date_ord left operand +--! @param b eql_v3.query_date_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_date_ord, b eql_v3.query_date_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_date_ord and eql_v3.query_date_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord_ore: eql_v3.query_date_ord_ore and public.eql_v3_date_ord (mismatched query domain). +--! @param a eql_v3.query_date_ord_ore left operand +--! @param b public.eql_v3_date_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_date_ord_ore, b public.eql_v3_date_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_date_ord_ore and public.eql_v3_date_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord_ore: public.eql_v3_date_ord and eql_v3.query_date_ord_ore (mismatched query domain). +--! @param a public.eql_v3_date_ord left operand +--! @param b eql_v3.query_date_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_date_ord, b eql_v3.query_date_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_date_ord and eql_v3.query_date_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord_ore: eql_v3.query_date_ord_ore and public.eql_v3_date_ord (mismatched query domain). +--! @param a eql_v3.query_date_ord_ore left operand +--! @param b public.eql_v3_date_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_date_ord_ore, b public.eql_v3_date_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_date_ord_ore and public.eql_v3_date_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord_ore: public.eql_v3_date_ord and eql_v3.query_date_ord_ore (mismatched query domain). +--! @param a public.eql_v3_date_ord left operand +--! @param b eql_v3.query_date_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_date_ord, b eql_v3.query_date_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_date_ord and eql_v3.query_date_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord_ore: eql_v3.query_date_ord_ore and public.eql_v3_date_ord (mismatched query domain). +--! @param a eql_v3.query_date_ord_ore left operand +--! @param b public.eql_v3_date_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_date_ord_ore, b public.eql_v3_date_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_date_ord_ore and public.eql_v3_date_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord_ore: public.eql_v3_date_ord_ope and eql_v3.query_date_ord_ore (mismatched query domain). +--! @param a public.eql_v3_date_ord_ope left operand +--! @param b eql_v3.query_date_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_date_ord_ope, b eql_v3.query_date_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_date_ord_ope and eql_v3.query_date_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord_ore: eql_v3.query_date_ord_ore and public.eql_v3_date_ord_ope (mismatched query domain). +--! @param a eql_v3.query_date_ord_ore left operand +--! @param b public.eql_v3_date_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_date_ord_ore, b public.eql_v3_date_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_date_ord_ore and public.eql_v3_date_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord_ore: public.eql_v3_date_ord_ope and eql_v3.query_date_ord_ore (mismatched query domain). +--! @param a public.eql_v3_date_ord_ope left operand +--! @param b eql_v3.query_date_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_date_ord_ope, b eql_v3.query_date_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_date_ord_ope and eql_v3.query_date_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord_ore: eql_v3.query_date_ord_ore and public.eql_v3_date_ord_ope (mismatched query domain). +--! @param a eql_v3.query_date_ord_ore left operand +--! @param b public.eql_v3_date_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_date_ord_ore, b public.eql_v3_date_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_date_ord_ore and public.eql_v3_date_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord_ore: public.eql_v3_date_ord_ope and eql_v3.query_date_ord_ore (mismatched query domain). +--! @param a public.eql_v3_date_ord_ope left operand +--! @param b eql_v3.query_date_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_date_ord_ope, b eql_v3.query_date_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_date_ord_ope and eql_v3.query_date_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord_ore: eql_v3.query_date_ord_ore and public.eql_v3_date_ord_ope (mismatched query domain). +--! @param a eql_v3.query_date_ord_ore left operand +--! @param b public.eql_v3_date_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_date_ord_ore, b public.eql_v3_date_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_date_ord_ore and public.eql_v3_date_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord_ore: public.eql_v3_date_ord_ope and eql_v3.query_date_ord_ore (mismatched query domain). +--! @param a public.eql_v3_date_ord_ope left operand +--! @param b eql_v3.query_date_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_date_ord_ope, b eql_v3.query_date_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_date_ord_ope and eql_v3.query_date_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord_ore: eql_v3.query_date_ord_ore and public.eql_v3_date_ord_ope (mismatched query domain). +--! @param a eql_v3.query_date_ord_ore left operand +--! @param b public.eql_v3_date_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_date_ord_ore, b public.eql_v3_date_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_date_ord_ore and public.eql_v3_date_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord_ore: public.eql_v3_date_ord_ope and eql_v3.query_date_ord_ore (mismatched query domain). +--! @param a public.eql_v3_date_ord_ope left operand +--! @param b eql_v3.query_date_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_date_ord_ope, b eql_v3.query_date_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_date_ord_ope and eql_v3.query_date_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord_ore: eql_v3.query_date_ord_ore and public.eql_v3_date_ord_ope (mismatched query domain). +--! @param a eql_v3.query_date_ord_ore left operand +--! @param b public.eql_v3_date_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_date_ord_ore, b public.eql_v3_date_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_date_ord_ore and public.eql_v3_date_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord_ore: public.eql_v3_date_ord_ope and eql_v3.query_date_ord_ore (mismatched query domain). +--! @param a public.eql_v3_date_ord_ope left operand +--! @param b eql_v3.query_date_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_date_ord_ope, b eql_v3.query_date_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_date_ord_ope and eql_v3.query_date_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_date_ord_ore: eql_v3.query_date_ord_ore and public.eql_v3_date_ord_ope (mismatched query domain). +--! @param a eql_v3.query_date_ord_ore left operand +--! @param b public.eql_v3_date_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_date_ord_ore, b public.eql_v3_date_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_date_ord_ore and public.eql_v3_date_ord_ope'; END; $$ +LANGUAGE plpgsql; diff --git a/packages/eql/src/v3/scalars/date/query_date_ord_ore_operators.sql b/packages/eql/src/v3/scalars/date/query_date_ord_ore_operators.sql index 06b0658450..78658f29d7 100644 --- a/packages/eql/src/v3/scalars/date/query_date_ord_ore_operators.sql +++ b/packages/eql/src/v3/scalars/date/query_date_ord_ore_operators.sql @@ -77,3 +77,143 @@ CREATE OPERATOR >= ( LEFTARG = eql_v3.query_date_ord_ore, RIGHTARG = public.eql_v3_date_ord_ore, COMMUTATOR = <=, NEGATOR = <, RESTRICT = scalargesel, JOIN = scalargejoinsel ); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_date_eq, RIGHTARG = eql_v3.query_date_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_date_ord_ore, RIGHTARG = public.eql_v3_date_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_date_eq, RIGHTARG = eql_v3.query_date_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_date_ord_ore, RIGHTARG = public.eql_v3_date_eq +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_date_ord, RIGHTARG = eql_v3.query_date_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_date_ord_ore, RIGHTARG = public.eql_v3_date_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_date_ord, RIGHTARG = eql_v3.query_date_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_date_ord_ore, RIGHTARG = public.eql_v3_date_ord +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_date_ord, RIGHTARG = eql_v3.query_date_ord_ore +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_date_ord_ore, RIGHTARG = public.eql_v3_date_ord +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_date_ord, RIGHTARG = eql_v3.query_date_ord_ore +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_date_ord_ore, RIGHTARG = public.eql_v3_date_ord +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_date_ord, RIGHTARG = eql_v3.query_date_ord_ore +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_date_ord_ore, RIGHTARG = public.eql_v3_date_ord +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_date_ord, RIGHTARG = eql_v3.query_date_ord_ore +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_date_ord_ore, RIGHTARG = public.eql_v3_date_ord +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_date_ord_ope, RIGHTARG = eql_v3.query_date_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_date_ord_ore, RIGHTARG = public.eql_v3_date_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_date_ord_ope, RIGHTARG = eql_v3.query_date_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_date_ord_ore, RIGHTARG = public.eql_v3_date_ord_ope +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_date_ord_ope, RIGHTARG = eql_v3.query_date_ord_ore +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_date_ord_ore, RIGHTARG = public.eql_v3_date_ord_ope +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_date_ord_ope, RIGHTARG = eql_v3.query_date_ord_ore +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_date_ord_ore, RIGHTARG = public.eql_v3_date_ord_ope +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_date_ord_ope, RIGHTARG = eql_v3.query_date_ord_ore +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_date_ord_ore, RIGHTARG = public.eql_v3_date_ord_ope +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_date_ord_ope, RIGHTARG = eql_v3.query_date_ord_ore +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_date_ord_ore, RIGHTARG = public.eql_v3_date_ord_ope +); diff --git a/packages/eql/src/v3/scalars/double/query_double_eq_functions.sql b/packages/eql/src/v3/scalars/double/query_double_eq_functions.sql index 44bf439f07..67a4656718 100644 --- a/packages/eql/src/v3/scalars/double/query_double_eq_functions.sql +++ b/packages/eql/src/v3/scalars/double/query_double_eq_functions.sql @@ -45,3 +45,111 @@ AS $$ SELECT eql_v3.eq_term(a) OPERATOR(pg_catalog.<>) eql_v3.eq_term(b) $$; CREATE FUNCTION eql_v3.neq(a eql_v3.query_double_eq, b public.eql_v3_double_eq) RETURNS boolean LANGUAGE sql IMMUTABLE STRICT PARALLEL SAFE AS $$ SELECT eql_v3.eq_term(a) OPERATOR(pg_catalog.<>) eql_v3.eq_term(b) $$; + +--! @brief Unsupported operator blocker for eql_v3.query_double_eq: public.eql_v3_double_ord_ore and eql_v3.query_double_eq (mismatched query domain). +--! @param a public.eql_v3_double_ord_ore left operand +--! @param b eql_v3.query_double_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_double_ord_ore, b eql_v3.query_double_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_double_ord_ore and eql_v3.query_double_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_eq: eql_v3.query_double_eq and public.eql_v3_double_ord_ore (mismatched query domain). +--! @param a eql_v3.query_double_eq left operand +--! @param b public.eql_v3_double_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_double_eq, b public.eql_v3_double_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_double_eq and public.eql_v3_double_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_eq: public.eql_v3_double_ord_ore and eql_v3.query_double_eq (mismatched query domain). +--! @param a public.eql_v3_double_ord_ore left operand +--! @param b eql_v3.query_double_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_double_ord_ore, b eql_v3.query_double_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_double_ord_ore and eql_v3.query_double_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_eq: eql_v3.query_double_eq and public.eql_v3_double_ord_ore (mismatched query domain). +--! @param a eql_v3.query_double_eq left operand +--! @param b public.eql_v3_double_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_double_eq, b public.eql_v3_double_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_double_eq and public.eql_v3_double_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_eq: public.eql_v3_double_ord and eql_v3.query_double_eq (mismatched query domain). +--! @param a public.eql_v3_double_ord left operand +--! @param b eql_v3.query_double_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_double_ord, b eql_v3.query_double_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_double_ord and eql_v3.query_double_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_eq: eql_v3.query_double_eq and public.eql_v3_double_ord (mismatched query domain). +--! @param a eql_v3.query_double_eq left operand +--! @param b public.eql_v3_double_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_double_eq, b public.eql_v3_double_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_double_eq and public.eql_v3_double_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_eq: public.eql_v3_double_ord and eql_v3.query_double_eq (mismatched query domain). +--! @param a public.eql_v3_double_ord left operand +--! @param b eql_v3.query_double_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_double_ord, b eql_v3.query_double_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_double_ord and eql_v3.query_double_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_eq: eql_v3.query_double_eq and public.eql_v3_double_ord (mismatched query domain). +--! @param a eql_v3.query_double_eq left operand +--! @param b public.eql_v3_double_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_double_eq, b public.eql_v3_double_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_double_eq and public.eql_v3_double_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_eq: public.eql_v3_double_ord_ope and eql_v3.query_double_eq (mismatched query domain). +--! @param a public.eql_v3_double_ord_ope left operand +--! @param b eql_v3.query_double_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_double_ord_ope, b eql_v3.query_double_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_double_ord_ope and eql_v3.query_double_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_eq: eql_v3.query_double_eq and public.eql_v3_double_ord_ope (mismatched query domain). +--! @param a eql_v3.query_double_eq left operand +--! @param b public.eql_v3_double_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_double_eq, b public.eql_v3_double_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_double_eq and public.eql_v3_double_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_eq: public.eql_v3_double_ord_ope and eql_v3.query_double_eq (mismatched query domain). +--! @param a public.eql_v3_double_ord_ope left operand +--! @param b eql_v3.query_double_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_double_ord_ope, b eql_v3.query_double_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_double_ord_ope and eql_v3.query_double_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_eq: eql_v3.query_double_eq and public.eql_v3_double_ord_ope (mismatched query domain). +--! @param a eql_v3.query_double_eq left operand +--! @param b public.eql_v3_double_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_double_eq, b public.eql_v3_double_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_double_eq and public.eql_v3_double_ord_ope'; END; $$ +LANGUAGE plpgsql; diff --git a/packages/eql/src/v3/scalars/double/query_double_eq_operators.sql b/packages/eql/src/v3/scalars/double/query_double_eq_operators.sql index d7649b1033..6b12324885 100644 --- a/packages/eql/src/v3/scalars/double/query_double_eq_operators.sql +++ b/packages/eql/src/v3/scalars/double/query_double_eq_operators.sql @@ -29,3 +29,63 @@ CREATE OPERATOR <> ( LEFTARG = eql_v3.query_double_eq, RIGHTARG = public.eql_v3_double_eq, COMMUTATOR = <>, NEGATOR = =, RESTRICT = neqsel, JOIN = neqjoinsel ); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_double_ord_ore, RIGHTARG = eql_v3.query_double_eq +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_double_eq, RIGHTARG = public.eql_v3_double_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_double_ord_ore, RIGHTARG = eql_v3.query_double_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_double_eq, RIGHTARG = public.eql_v3_double_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_double_ord, RIGHTARG = eql_v3.query_double_eq +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_double_eq, RIGHTARG = public.eql_v3_double_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_double_ord, RIGHTARG = eql_v3.query_double_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_double_eq, RIGHTARG = public.eql_v3_double_ord +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_double_ord_ope, RIGHTARG = eql_v3.query_double_eq +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_double_eq, RIGHTARG = public.eql_v3_double_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_double_ord_ope, RIGHTARG = eql_v3.query_double_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_double_eq, RIGHTARG = public.eql_v3_double_ord_ope +); diff --git a/packages/eql/src/v3/scalars/double/query_double_ord_functions.sql b/packages/eql/src/v3/scalars/double/query_double_ord_functions.sql index 8d82d2496c..27773b8166 100644 --- a/packages/eql/src/v3/scalars/double/query_double_ord_functions.sql +++ b/packages/eql/src/v3/scalars/double/query_double_ord_functions.sql @@ -109,3 +109,255 @@ AS $$ SELECT eql_v3.ord_term(a) OPERATOR(pg_catalog.>=) eql_v3.ord_term(b) $$; CREATE FUNCTION eql_v3.gte(a eql_v3.query_double_ord, b public.eql_v3_double_ord) RETURNS boolean LANGUAGE sql IMMUTABLE STRICT PARALLEL SAFE AS $$ SELECT eql_v3.ord_term(a) OPERATOR(pg_catalog.>=) eql_v3.ord_term(b) $$; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord: public.eql_v3_double_eq and eql_v3.query_double_ord (mismatched query domain). +--! @param a public.eql_v3_double_eq left operand +--! @param b eql_v3.query_double_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_double_eq, b eql_v3.query_double_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_double_eq and eql_v3.query_double_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord: eql_v3.query_double_ord and public.eql_v3_double_eq (mismatched query domain). +--! @param a eql_v3.query_double_ord left operand +--! @param b public.eql_v3_double_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_double_ord, b public.eql_v3_double_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_double_ord and public.eql_v3_double_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord: public.eql_v3_double_eq and eql_v3.query_double_ord (mismatched query domain). +--! @param a public.eql_v3_double_eq left operand +--! @param b eql_v3.query_double_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_double_eq, b eql_v3.query_double_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_double_eq and eql_v3.query_double_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord: eql_v3.query_double_ord and public.eql_v3_double_eq (mismatched query domain). +--! @param a eql_v3.query_double_ord left operand +--! @param b public.eql_v3_double_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_double_ord, b public.eql_v3_double_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_double_ord and public.eql_v3_double_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord: public.eql_v3_double_ord_ore and eql_v3.query_double_ord (mismatched query domain). +--! @param a public.eql_v3_double_ord_ore left operand +--! @param b eql_v3.query_double_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_double_ord_ore, b eql_v3.query_double_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_double_ord_ore and eql_v3.query_double_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord: eql_v3.query_double_ord and public.eql_v3_double_ord_ore (mismatched query domain). +--! @param a eql_v3.query_double_ord left operand +--! @param b public.eql_v3_double_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_double_ord, b public.eql_v3_double_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_double_ord and public.eql_v3_double_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord: public.eql_v3_double_ord_ore and eql_v3.query_double_ord (mismatched query domain). +--! @param a public.eql_v3_double_ord_ore left operand +--! @param b eql_v3.query_double_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_double_ord_ore, b eql_v3.query_double_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_double_ord_ore and eql_v3.query_double_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord: eql_v3.query_double_ord and public.eql_v3_double_ord_ore (mismatched query domain). +--! @param a eql_v3.query_double_ord left operand +--! @param b public.eql_v3_double_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_double_ord, b public.eql_v3_double_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_double_ord and public.eql_v3_double_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord: public.eql_v3_double_ord_ore and eql_v3.query_double_ord (mismatched query domain). +--! @param a public.eql_v3_double_ord_ore left operand +--! @param b eql_v3.query_double_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_double_ord_ore, b eql_v3.query_double_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_double_ord_ore and eql_v3.query_double_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord: eql_v3.query_double_ord and public.eql_v3_double_ord_ore (mismatched query domain). +--! @param a eql_v3.query_double_ord left operand +--! @param b public.eql_v3_double_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_double_ord, b public.eql_v3_double_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_double_ord and public.eql_v3_double_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord: public.eql_v3_double_ord_ore and eql_v3.query_double_ord (mismatched query domain). +--! @param a public.eql_v3_double_ord_ore left operand +--! @param b eql_v3.query_double_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_double_ord_ore, b eql_v3.query_double_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_double_ord_ore and eql_v3.query_double_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord: eql_v3.query_double_ord and public.eql_v3_double_ord_ore (mismatched query domain). +--! @param a eql_v3.query_double_ord left operand +--! @param b public.eql_v3_double_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_double_ord, b public.eql_v3_double_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_double_ord and public.eql_v3_double_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord: public.eql_v3_double_ord_ore and eql_v3.query_double_ord (mismatched query domain). +--! @param a public.eql_v3_double_ord_ore left operand +--! @param b eql_v3.query_double_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_double_ord_ore, b eql_v3.query_double_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_double_ord_ore and eql_v3.query_double_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord: eql_v3.query_double_ord and public.eql_v3_double_ord_ore (mismatched query domain). +--! @param a eql_v3.query_double_ord left operand +--! @param b public.eql_v3_double_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_double_ord, b public.eql_v3_double_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_double_ord and public.eql_v3_double_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord: public.eql_v3_double_ord_ore and eql_v3.query_double_ord (mismatched query domain). +--! @param a public.eql_v3_double_ord_ore left operand +--! @param b eql_v3.query_double_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_double_ord_ore, b eql_v3.query_double_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_double_ord_ore and eql_v3.query_double_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord: eql_v3.query_double_ord and public.eql_v3_double_ord_ore (mismatched query domain). +--! @param a eql_v3.query_double_ord left operand +--! @param b public.eql_v3_double_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_double_ord, b public.eql_v3_double_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_double_ord and public.eql_v3_double_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord: public.eql_v3_double_ord_ope and eql_v3.query_double_ord (mismatched query domain). +--! @param a public.eql_v3_double_ord_ope left operand +--! @param b eql_v3.query_double_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_double_ord_ope, b eql_v3.query_double_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_double_ord_ope and eql_v3.query_double_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord: eql_v3.query_double_ord and public.eql_v3_double_ord_ope (mismatched query domain). +--! @param a eql_v3.query_double_ord left operand +--! @param b public.eql_v3_double_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_double_ord, b public.eql_v3_double_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_double_ord and public.eql_v3_double_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord: public.eql_v3_double_ord_ope and eql_v3.query_double_ord (mismatched query domain). +--! @param a public.eql_v3_double_ord_ope left operand +--! @param b eql_v3.query_double_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_double_ord_ope, b eql_v3.query_double_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_double_ord_ope and eql_v3.query_double_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord: eql_v3.query_double_ord and public.eql_v3_double_ord_ope (mismatched query domain). +--! @param a eql_v3.query_double_ord left operand +--! @param b public.eql_v3_double_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_double_ord, b public.eql_v3_double_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_double_ord and public.eql_v3_double_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord: public.eql_v3_double_ord_ope and eql_v3.query_double_ord (mismatched query domain). +--! @param a public.eql_v3_double_ord_ope left operand +--! @param b eql_v3.query_double_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_double_ord_ope, b eql_v3.query_double_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_double_ord_ope and eql_v3.query_double_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord: eql_v3.query_double_ord and public.eql_v3_double_ord_ope (mismatched query domain). +--! @param a eql_v3.query_double_ord left operand +--! @param b public.eql_v3_double_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_double_ord, b public.eql_v3_double_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_double_ord and public.eql_v3_double_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord: public.eql_v3_double_ord_ope and eql_v3.query_double_ord (mismatched query domain). +--! @param a public.eql_v3_double_ord_ope left operand +--! @param b eql_v3.query_double_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_double_ord_ope, b eql_v3.query_double_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_double_ord_ope and eql_v3.query_double_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord: eql_v3.query_double_ord and public.eql_v3_double_ord_ope (mismatched query domain). +--! @param a eql_v3.query_double_ord left operand +--! @param b public.eql_v3_double_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_double_ord, b public.eql_v3_double_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_double_ord and public.eql_v3_double_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord: public.eql_v3_double_ord_ope and eql_v3.query_double_ord (mismatched query domain). +--! @param a public.eql_v3_double_ord_ope left operand +--! @param b eql_v3.query_double_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_double_ord_ope, b eql_v3.query_double_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_double_ord_ope and eql_v3.query_double_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord: eql_v3.query_double_ord and public.eql_v3_double_ord_ope (mismatched query domain). +--! @param a eql_v3.query_double_ord left operand +--! @param b public.eql_v3_double_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_double_ord, b public.eql_v3_double_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_double_ord and public.eql_v3_double_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord: public.eql_v3_double_ord_ope and eql_v3.query_double_ord (mismatched query domain). +--! @param a public.eql_v3_double_ord_ope left operand +--! @param b eql_v3.query_double_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_double_ord_ope, b eql_v3.query_double_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_double_ord_ope and eql_v3.query_double_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord: eql_v3.query_double_ord and public.eql_v3_double_ord_ope (mismatched query domain). +--! @param a eql_v3.query_double_ord left operand +--! @param b public.eql_v3_double_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_double_ord, b public.eql_v3_double_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_double_ord and public.eql_v3_double_ord_ope'; END; $$ +LANGUAGE plpgsql; diff --git a/packages/eql/src/v3/scalars/double/query_double_ord_ope_functions.sql b/packages/eql/src/v3/scalars/double/query_double_ord_ope_functions.sql index dfa67fc7fe..42119b4c2d 100644 --- a/packages/eql/src/v3/scalars/double/query_double_ord_ope_functions.sql +++ b/packages/eql/src/v3/scalars/double/query_double_ord_ope_functions.sql @@ -109,3 +109,255 @@ AS $$ SELECT eql_v3.ord_term(a) OPERATOR(pg_catalog.>=) eql_v3.ord_term(b) $$; CREATE FUNCTION eql_v3.gte(a eql_v3.query_double_ord_ope, b public.eql_v3_double_ord_ope) RETURNS boolean LANGUAGE sql IMMUTABLE STRICT PARALLEL SAFE AS $$ SELECT eql_v3.ord_term(a) OPERATOR(pg_catalog.>=) eql_v3.ord_term(b) $$; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord_ope: public.eql_v3_double_eq and eql_v3.query_double_ord_ope (mismatched query domain). +--! @param a public.eql_v3_double_eq left operand +--! @param b eql_v3.query_double_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_double_eq, b eql_v3.query_double_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_double_eq and eql_v3.query_double_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord_ope: eql_v3.query_double_ord_ope and public.eql_v3_double_eq (mismatched query domain). +--! @param a eql_v3.query_double_ord_ope left operand +--! @param b public.eql_v3_double_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_double_ord_ope, b public.eql_v3_double_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_double_ord_ope and public.eql_v3_double_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord_ope: public.eql_v3_double_eq and eql_v3.query_double_ord_ope (mismatched query domain). +--! @param a public.eql_v3_double_eq left operand +--! @param b eql_v3.query_double_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_double_eq, b eql_v3.query_double_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_double_eq and eql_v3.query_double_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord_ope: eql_v3.query_double_ord_ope and public.eql_v3_double_eq (mismatched query domain). +--! @param a eql_v3.query_double_ord_ope left operand +--! @param b public.eql_v3_double_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_double_ord_ope, b public.eql_v3_double_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_double_ord_ope and public.eql_v3_double_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord_ope: public.eql_v3_double_ord_ore and eql_v3.query_double_ord_ope (mismatched query domain). +--! @param a public.eql_v3_double_ord_ore left operand +--! @param b eql_v3.query_double_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_double_ord_ore, b eql_v3.query_double_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_double_ord_ore and eql_v3.query_double_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord_ope: eql_v3.query_double_ord_ope and public.eql_v3_double_ord_ore (mismatched query domain). +--! @param a eql_v3.query_double_ord_ope left operand +--! @param b public.eql_v3_double_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_double_ord_ope, b public.eql_v3_double_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_double_ord_ope and public.eql_v3_double_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord_ope: public.eql_v3_double_ord_ore and eql_v3.query_double_ord_ope (mismatched query domain). +--! @param a public.eql_v3_double_ord_ore left operand +--! @param b eql_v3.query_double_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_double_ord_ore, b eql_v3.query_double_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_double_ord_ore and eql_v3.query_double_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord_ope: eql_v3.query_double_ord_ope and public.eql_v3_double_ord_ore (mismatched query domain). +--! @param a eql_v3.query_double_ord_ope left operand +--! @param b public.eql_v3_double_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_double_ord_ope, b public.eql_v3_double_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_double_ord_ope and public.eql_v3_double_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord_ope: public.eql_v3_double_ord_ore and eql_v3.query_double_ord_ope (mismatched query domain). +--! @param a public.eql_v3_double_ord_ore left operand +--! @param b eql_v3.query_double_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_double_ord_ore, b eql_v3.query_double_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_double_ord_ore and eql_v3.query_double_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord_ope: eql_v3.query_double_ord_ope and public.eql_v3_double_ord_ore (mismatched query domain). +--! @param a eql_v3.query_double_ord_ope left operand +--! @param b public.eql_v3_double_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_double_ord_ope, b public.eql_v3_double_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_double_ord_ope and public.eql_v3_double_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord_ope: public.eql_v3_double_ord_ore and eql_v3.query_double_ord_ope (mismatched query domain). +--! @param a public.eql_v3_double_ord_ore left operand +--! @param b eql_v3.query_double_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_double_ord_ore, b eql_v3.query_double_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_double_ord_ore and eql_v3.query_double_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord_ope: eql_v3.query_double_ord_ope and public.eql_v3_double_ord_ore (mismatched query domain). +--! @param a eql_v3.query_double_ord_ope left operand +--! @param b public.eql_v3_double_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_double_ord_ope, b public.eql_v3_double_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_double_ord_ope and public.eql_v3_double_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord_ope: public.eql_v3_double_ord_ore and eql_v3.query_double_ord_ope (mismatched query domain). +--! @param a public.eql_v3_double_ord_ore left operand +--! @param b eql_v3.query_double_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_double_ord_ore, b eql_v3.query_double_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_double_ord_ore and eql_v3.query_double_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord_ope: eql_v3.query_double_ord_ope and public.eql_v3_double_ord_ore (mismatched query domain). +--! @param a eql_v3.query_double_ord_ope left operand +--! @param b public.eql_v3_double_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_double_ord_ope, b public.eql_v3_double_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_double_ord_ope and public.eql_v3_double_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord_ope: public.eql_v3_double_ord_ore and eql_v3.query_double_ord_ope (mismatched query domain). +--! @param a public.eql_v3_double_ord_ore left operand +--! @param b eql_v3.query_double_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_double_ord_ore, b eql_v3.query_double_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_double_ord_ore and eql_v3.query_double_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord_ope: eql_v3.query_double_ord_ope and public.eql_v3_double_ord_ore (mismatched query domain). +--! @param a eql_v3.query_double_ord_ope left operand +--! @param b public.eql_v3_double_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_double_ord_ope, b public.eql_v3_double_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_double_ord_ope and public.eql_v3_double_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord_ope: public.eql_v3_double_ord and eql_v3.query_double_ord_ope (mismatched query domain). +--! @param a public.eql_v3_double_ord left operand +--! @param b eql_v3.query_double_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_double_ord, b eql_v3.query_double_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_double_ord and eql_v3.query_double_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord_ope: eql_v3.query_double_ord_ope and public.eql_v3_double_ord (mismatched query domain). +--! @param a eql_v3.query_double_ord_ope left operand +--! @param b public.eql_v3_double_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_double_ord_ope, b public.eql_v3_double_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_double_ord_ope and public.eql_v3_double_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord_ope: public.eql_v3_double_ord and eql_v3.query_double_ord_ope (mismatched query domain). +--! @param a public.eql_v3_double_ord left operand +--! @param b eql_v3.query_double_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_double_ord, b eql_v3.query_double_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_double_ord and eql_v3.query_double_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord_ope: eql_v3.query_double_ord_ope and public.eql_v3_double_ord (mismatched query domain). +--! @param a eql_v3.query_double_ord_ope left operand +--! @param b public.eql_v3_double_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_double_ord_ope, b public.eql_v3_double_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_double_ord_ope and public.eql_v3_double_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord_ope: public.eql_v3_double_ord and eql_v3.query_double_ord_ope (mismatched query domain). +--! @param a public.eql_v3_double_ord left operand +--! @param b eql_v3.query_double_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_double_ord, b eql_v3.query_double_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_double_ord and eql_v3.query_double_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord_ope: eql_v3.query_double_ord_ope and public.eql_v3_double_ord (mismatched query domain). +--! @param a eql_v3.query_double_ord_ope left operand +--! @param b public.eql_v3_double_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_double_ord_ope, b public.eql_v3_double_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_double_ord_ope and public.eql_v3_double_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord_ope: public.eql_v3_double_ord and eql_v3.query_double_ord_ope (mismatched query domain). +--! @param a public.eql_v3_double_ord left operand +--! @param b eql_v3.query_double_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_double_ord, b eql_v3.query_double_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_double_ord and eql_v3.query_double_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord_ope: eql_v3.query_double_ord_ope and public.eql_v3_double_ord (mismatched query domain). +--! @param a eql_v3.query_double_ord_ope left operand +--! @param b public.eql_v3_double_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_double_ord_ope, b public.eql_v3_double_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_double_ord_ope and public.eql_v3_double_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord_ope: public.eql_v3_double_ord and eql_v3.query_double_ord_ope (mismatched query domain). +--! @param a public.eql_v3_double_ord left operand +--! @param b eql_v3.query_double_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_double_ord, b eql_v3.query_double_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_double_ord and eql_v3.query_double_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord_ope: eql_v3.query_double_ord_ope and public.eql_v3_double_ord (mismatched query domain). +--! @param a eql_v3.query_double_ord_ope left operand +--! @param b public.eql_v3_double_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_double_ord_ope, b public.eql_v3_double_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_double_ord_ope and public.eql_v3_double_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord_ope: public.eql_v3_double_ord and eql_v3.query_double_ord_ope (mismatched query domain). +--! @param a public.eql_v3_double_ord left operand +--! @param b eql_v3.query_double_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_double_ord, b eql_v3.query_double_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_double_ord and eql_v3.query_double_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord_ope: eql_v3.query_double_ord_ope and public.eql_v3_double_ord (mismatched query domain). +--! @param a eql_v3.query_double_ord_ope left operand +--! @param b public.eql_v3_double_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_double_ord_ope, b public.eql_v3_double_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_double_ord_ope and public.eql_v3_double_ord'; END; $$ +LANGUAGE plpgsql; diff --git a/packages/eql/src/v3/scalars/double/query_double_ord_ope_operators.sql b/packages/eql/src/v3/scalars/double/query_double_ord_ope_operators.sql index 6976b9e3ba..711f72fe4c 100644 --- a/packages/eql/src/v3/scalars/double/query_double_ord_ope_operators.sql +++ b/packages/eql/src/v3/scalars/double/query_double_ord_ope_operators.sql @@ -77,3 +77,143 @@ CREATE OPERATOR >= ( LEFTARG = eql_v3.query_double_ord_ope, RIGHTARG = public.eql_v3_double_ord_ope, COMMUTATOR = <=, NEGATOR = <, RESTRICT = scalargesel, JOIN = scalargejoinsel ); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_double_eq, RIGHTARG = eql_v3.query_double_ord_ope +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_double_ord_ope, RIGHTARG = public.eql_v3_double_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_double_eq, RIGHTARG = eql_v3.query_double_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_double_ord_ope, RIGHTARG = public.eql_v3_double_eq +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_double_ord_ore, RIGHTARG = eql_v3.query_double_ord_ope +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_double_ord_ope, RIGHTARG = public.eql_v3_double_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_double_ord_ore, RIGHTARG = eql_v3.query_double_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_double_ord_ope, RIGHTARG = public.eql_v3_double_ord_ore +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_double_ord_ore, RIGHTARG = eql_v3.query_double_ord_ope +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_double_ord_ope, RIGHTARG = public.eql_v3_double_ord_ore +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_double_ord_ore, RIGHTARG = eql_v3.query_double_ord_ope +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_double_ord_ope, RIGHTARG = public.eql_v3_double_ord_ore +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_double_ord_ore, RIGHTARG = eql_v3.query_double_ord_ope +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_double_ord_ope, RIGHTARG = public.eql_v3_double_ord_ore +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_double_ord_ore, RIGHTARG = eql_v3.query_double_ord_ope +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_double_ord_ope, RIGHTARG = public.eql_v3_double_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_double_ord, RIGHTARG = eql_v3.query_double_ord_ope +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_double_ord_ope, RIGHTARG = public.eql_v3_double_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_double_ord, RIGHTARG = eql_v3.query_double_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_double_ord_ope, RIGHTARG = public.eql_v3_double_ord +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_double_ord, RIGHTARG = eql_v3.query_double_ord_ope +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_double_ord_ope, RIGHTARG = public.eql_v3_double_ord +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_double_ord, RIGHTARG = eql_v3.query_double_ord_ope +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_double_ord_ope, RIGHTARG = public.eql_v3_double_ord +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_double_ord, RIGHTARG = eql_v3.query_double_ord_ope +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_double_ord_ope, RIGHTARG = public.eql_v3_double_ord +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_double_ord, RIGHTARG = eql_v3.query_double_ord_ope +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_double_ord_ope, RIGHTARG = public.eql_v3_double_ord +); diff --git a/packages/eql/src/v3/scalars/double/query_double_ord_operators.sql b/packages/eql/src/v3/scalars/double/query_double_ord_operators.sql index 4f7571aa38..74552002d8 100644 --- a/packages/eql/src/v3/scalars/double/query_double_ord_operators.sql +++ b/packages/eql/src/v3/scalars/double/query_double_ord_operators.sql @@ -77,3 +77,143 @@ CREATE OPERATOR >= ( LEFTARG = eql_v3.query_double_ord, RIGHTARG = public.eql_v3_double_ord, COMMUTATOR = <=, NEGATOR = <, RESTRICT = scalargesel, JOIN = scalargejoinsel ); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_double_eq, RIGHTARG = eql_v3.query_double_ord +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_double_ord, RIGHTARG = public.eql_v3_double_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_double_eq, RIGHTARG = eql_v3.query_double_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_double_ord, RIGHTARG = public.eql_v3_double_eq +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_double_ord_ore, RIGHTARG = eql_v3.query_double_ord +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_double_ord, RIGHTARG = public.eql_v3_double_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_double_ord_ore, RIGHTARG = eql_v3.query_double_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_double_ord, RIGHTARG = public.eql_v3_double_ord_ore +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_double_ord_ore, RIGHTARG = eql_v3.query_double_ord +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_double_ord, RIGHTARG = public.eql_v3_double_ord_ore +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_double_ord_ore, RIGHTARG = eql_v3.query_double_ord +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_double_ord, RIGHTARG = public.eql_v3_double_ord_ore +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_double_ord_ore, RIGHTARG = eql_v3.query_double_ord +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_double_ord, RIGHTARG = public.eql_v3_double_ord_ore +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_double_ord_ore, RIGHTARG = eql_v3.query_double_ord +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_double_ord, RIGHTARG = public.eql_v3_double_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_double_ord_ope, RIGHTARG = eql_v3.query_double_ord +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_double_ord, RIGHTARG = public.eql_v3_double_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_double_ord_ope, RIGHTARG = eql_v3.query_double_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_double_ord, RIGHTARG = public.eql_v3_double_ord_ope +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_double_ord_ope, RIGHTARG = eql_v3.query_double_ord +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_double_ord, RIGHTARG = public.eql_v3_double_ord_ope +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_double_ord_ope, RIGHTARG = eql_v3.query_double_ord +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_double_ord, RIGHTARG = public.eql_v3_double_ord_ope +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_double_ord_ope, RIGHTARG = eql_v3.query_double_ord +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_double_ord, RIGHTARG = public.eql_v3_double_ord_ope +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_double_ord_ope, RIGHTARG = eql_v3.query_double_ord +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_double_ord, RIGHTARG = public.eql_v3_double_ord_ope +); diff --git a/packages/eql/src/v3/scalars/double/query_double_ord_ore_functions.sql b/packages/eql/src/v3/scalars/double/query_double_ord_ore_functions.sql index 71c15bd096..bfb752d0a6 100644 --- a/packages/eql/src/v3/scalars/double/query_double_ord_ore_functions.sql +++ b/packages/eql/src/v3/scalars/double/query_double_ord_ore_functions.sql @@ -109,3 +109,255 @@ AS $$ SELECT eql_v3.ord_term_ore(a) OPERATOR(public.>=) eql_v3.ord_term_ore(b) $ CREATE FUNCTION eql_v3.gte(a eql_v3.query_double_ord_ore, b public.eql_v3_double_ord_ore) RETURNS boolean LANGUAGE sql IMMUTABLE STRICT PARALLEL SAFE AS $$ SELECT eql_v3.ord_term_ore(a) OPERATOR(public.>=) eql_v3.ord_term_ore(b) $$; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord_ore: public.eql_v3_double_eq and eql_v3.query_double_ord_ore (mismatched query domain). +--! @param a public.eql_v3_double_eq left operand +--! @param b eql_v3.query_double_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_double_eq, b eql_v3.query_double_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_double_eq and eql_v3.query_double_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord_ore: eql_v3.query_double_ord_ore and public.eql_v3_double_eq (mismatched query domain). +--! @param a eql_v3.query_double_ord_ore left operand +--! @param b public.eql_v3_double_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_double_ord_ore, b public.eql_v3_double_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_double_ord_ore and public.eql_v3_double_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord_ore: public.eql_v3_double_eq and eql_v3.query_double_ord_ore (mismatched query domain). +--! @param a public.eql_v3_double_eq left operand +--! @param b eql_v3.query_double_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_double_eq, b eql_v3.query_double_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_double_eq and eql_v3.query_double_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord_ore: eql_v3.query_double_ord_ore and public.eql_v3_double_eq (mismatched query domain). +--! @param a eql_v3.query_double_ord_ore left operand +--! @param b public.eql_v3_double_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_double_ord_ore, b public.eql_v3_double_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_double_ord_ore and public.eql_v3_double_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord_ore: public.eql_v3_double_ord and eql_v3.query_double_ord_ore (mismatched query domain). +--! @param a public.eql_v3_double_ord left operand +--! @param b eql_v3.query_double_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_double_ord, b eql_v3.query_double_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_double_ord and eql_v3.query_double_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord_ore: eql_v3.query_double_ord_ore and public.eql_v3_double_ord (mismatched query domain). +--! @param a eql_v3.query_double_ord_ore left operand +--! @param b public.eql_v3_double_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_double_ord_ore, b public.eql_v3_double_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_double_ord_ore and public.eql_v3_double_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord_ore: public.eql_v3_double_ord and eql_v3.query_double_ord_ore (mismatched query domain). +--! @param a public.eql_v3_double_ord left operand +--! @param b eql_v3.query_double_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_double_ord, b eql_v3.query_double_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_double_ord and eql_v3.query_double_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord_ore: eql_v3.query_double_ord_ore and public.eql_v3_double_ord (mismatched query domain). +--! @param a eql_v3.query_double_ord_ore left operand +--! @param b public.eql_v3_double_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_double_ord_ore, b public.eql_v3_double_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_double_ord_ore and public.eql_v3_double_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord_ore: public.eql_v3_double_ord and eql_v3.query_double_ord_ore (mismatched query domain). +--! @param a public.eql_v3_double_ord left operand +--! @param b eql_v3.query_double_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_double_ord, b eql_v3.query_double_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_double_ord and eql_v3.query_double_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord_ore: eql_v3.query_double_ord_ore and public.eql_v3_double_ord (mismatched query domain). +--! @param a eql_v3.query_double_ord_ore left operand +--! @param b public.eql_v3_double_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_double_ord_ore, b public.eql_v3_double_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_double_ord_ore and public.eql_v3_double_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord_ore: public.eql_v3_double_ord and eql_v3.query_double_ord_ore (mismatched query domain). +--! @param a public.eql_v3_double_ord left operand +--! @param b eql_v3.query_double_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_double_ord, b eql_v3.query_double_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_double_ord and eql_v3.query_double_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord_ore: eql_v3.query_double_ord_ore and public.eql_v3_double_ord (mismatched query domain). +--! @param a eql_v3.query_double_ord_ore left operand +--! @param b public.eql_v3_double_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_double_ord_ore, b public.eql_v3_double_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_double_ord_ore and public.eql_v3_double_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord_ore: public.eql_v3_double_ord and eql_v3.query_double_ord_ore (mismatched query domain). +--! @param a public.eql_v3_double_ord left operand +--! @param b eql_v3.query_double_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_double_ord, b eql_v3.query_double_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_double_ord and eql_v3.query_double_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord_ore: eql_v3.query_double_ord_ore and public.eql_v3_double_ord (mismatched query domain). +--! @param a eql_v3.query_double_ord_ore left operand +--! @param b public.eql_v3_double_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_double_ord_ore, b public.eql_v3_double_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_double_ord_ore and public.eql_v3_double_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord_ore: public.eql_v3_double_ord and eql_v3.query_double_ord_ore (mismatched query domain). +--! @param a public.eql_v3_double_ord left operand +--! @param b eql_v3.query_double_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_double_ord, b eql_v3.query_double_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_double_ord and eql_v3.query_double_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord_ore: eql_v3.query_double_ord_ore and public.eql_v3_double_ord (mismatched query domain). +--! @param a eql_v3.query_double_ord_ore left operand +--! @param b public.eql_v3_double_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_double_ord_ore, b public.eql_v3_double_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_double_ord_ore and public.eql_v3_double_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord_ore: public.eql_v3_double_ord_ope and eql_v3.query_double_ord_ore (mismatched query domain). +--! @param a public.eql_v3_double_ord_ope left operand +--! @param b eql_v3.query_double_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_double_ord_ope, b eql_v3.query_double_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_double_ord_ope and eql_v3.query_double_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord_ore: eql_v3.query_double_ord_ore and public.eql_v3_double_ord_ope (mismatched query domain). +--! @param a eql_v3.query_double_ord_ore left operand +--! @param b public.eql_v3_double_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_double_ord_ore, b public.eql_v3_double_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_double_ord_ore and public.eql_v3_double_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord_ore: public.eql_v3_double_ord_ope and eql_v3.query_double_ord_ore (mismatched query domain). +--! @param a public.eql_v3_double_ord_ope left operand +--! @param b eql_v3.query_double_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_double_ord_ope, b eql_v3.query_double_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_double_ord_ope and eql_v3.query_double_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord_ore: eql_v3.query_double_ord_ore and public.eql_v3_double_ord_ope (mismatched query domain). +--! @param a eql_v3.query_double_ord_ore left operand +--! @param b public.eql_v3_double_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_double_ord_ore, b public.eql_v3_double_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_double_ord_ore and public.eql_v3_double_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord_ore: public.eql_v3_double_ord_ope and eql_v3.query_double_ord_ore (mismatched query domain). +--! @param a public.eql_v3_double_ord_ope left operand +--! @param b eql_v3.query_double_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_double_ord_ope, b eql_v3.query_double_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_double_ord_ope and eql_v3.query_double_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord_ore: eql_v3.query_double_ord_ore and public.eql_v3_double_ord_ope (mismatched query domain). +--! @param a eql_v3.query_double_ord_ore left operand +--! @param b public.eql_v3_double_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_double_ord_ore, b public.eql_v3_double_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_double_ord_ore and public.eql_v3_double_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord_ore: public.eql_v3_double_ord_ope and eql_v3.query_double_ord_ore (mismatched query domain). +--! @param a public.eql_v3_double_ord_ope left operand +--! @param b eql_v3.query_double_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_double_ord_ope, b eql_v3.query_double_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_double_ord_ope and eql_v3.query_double_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord_ore: eql_v3.query_double_ord_ore and public.eql_v3_double_ord_ope (mismatched query domain). +--! @param a eql_v3.query_double_ord_ore left operand +--! @param b public.eql_v3_double_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_double_ord_ore, b public.eql_v3_double_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_double_ord_ore and public.eql_v3_double_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord_ore: public.eql_v3_double_ord_ope and eql_v3.query_double_ord_ore (mismatched query domain). +--! @param a public.eql_v3_double_ord_ope left operand +--! @param b eql_v3.query_double_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_double_ord_ope, b eql_v3.query_double_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_double_ord_ope and eql_v3.query_double_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord_ore: eql_v3.query_double_ord_ore and public.eql_v3_double_ord_ope (mismatched query domain). +--! @param a eql_v3.query_double_ord_ore left operand +--! @param b public.eql_v3_double_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_double_ord_ore, b public.eql_v3_double_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_double_ord_ore and public.eql_v3_double_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord_ore: public.eql_v3_double_ord_ope and eql_v3.query_double_ord_ore (mismatched query domain). +--! @param a public.eql_v3_double_ord_ope left operand +--! @param b eql_v3.query_double_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_double_ord_ope, b eql_v3.query_double_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_double_ord_ope and eql_v3.query_double_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_double_ord_ore: eql_v3.query_double_ord_ore and public.eql_v3_double_ord_ope (mismatched query domain). +--! @param a eql_v3.query_double_ord_ore left operand +--! @param b public.eql_v3_double_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_double_ord_ore, b public.eql_v3_double_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_double_ord_ore and public.eql_v3_double_ord_ope'; END; $$ +LANGUAGE plpgsql; diff --git a/packages/eql/src/v3/scalars/double/query_double_ord_ore_operators.sql b/packages/eql/src/v3/scalars/double/query_double_ord_ore_operators.sql index 56ec459348..d943809d2d 100644 --- a/packages/eql/src/v3/scalars/double/query_double_ord_ore_operators.sql +++ b/packages/eql/src/v3/scalars/double/query_double_ord_ore_operators.sql @@ -77,3 +77,143 @@ CREATE OPERATOR >= ( LEFTARG = eql_v3.query_double_ord_ore, RIGHTARG = public.eql_v3_double_ord_ore, COMMUTATOR = <=, NEGATOR = <, RESTRICT = scalargesel, JOIN = scalargejoinsel ); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_double_eq, RIGHTARG = eql_v3.query_double_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_double_ord_ore, RIGHTARG = public.eql_v3_double_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_double_eq, RIGHTARG = eql_v3.query_double_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_double_ord_ore, RIGHTARG = public.eql_v3_double_eq +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_double_ord, RIGHTARG = eql_v3.query_double_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_double_ord_ore, RIGHTARG = public.eql_v3_double_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_double_ord, RIGHTARG = eql_v3.query_double_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_double_ord_ore, RIGHTARG = public.eql_v3_double_ord +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_double_ord, RIGHTARG = eql_v3.query_double_ord_ore +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_double_ord_ore, RIGHTARG = public.eql_v3_double_ord +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_double_ord, RIGHTARG = eql_v3.query_double_ord_ore +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_double_ord_ore, RIGHTARG = public.eql_v3_double_ord +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_double_ord, RIGHTARG = eql_v3.query_double_ord_ore +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_double_ord_ore, RIGHTARG = public.eql_v3_double_ord +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_double_ord, RIGHTARG = eql_v3.query_double_ord_ore +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_double_ord_ore, RIGHTARG = public.eql_v3_double_ord +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_double_ord_ope, RIGHTARG = eql_v3.query_double_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_double_ord_ore, RIGHTARG = public.eql_v3_double_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_double_ord_ope, RIGHTARG = eql_v3.query_double_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_double_ord_ore, RIGHTARG = public.eql_v3_double_ord_ope +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_double_ord_ope, RIGHTARG = eql_v3.query_double_ord_ore +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_double_ord_ore, RIGHTARG = public.eql_v3_double_ord_ope +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_double_ord_ope, RIGHTARG = eql_v3.query_double_ord_ore +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_double_ord_ore, RIGHTARG = public.eql_v3_double_ord_ope +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_double_ord_ope, RIGHTARG = eql_v3.query_double_ord_ore +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_double_ord_ore, RIGHTARG = public.eql_v3_double_ord_ope +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_double_ord_ope, RIGHTARG = eql_v3.query_double_ord_ore +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_double_ord_ore, RIGHTARG = public.eql_v3_double_ord_ope +); diff --git a/packages/eql/src/v3/scalars/integer/query_integer_eq_functions.sql b/packages/eql/src/v3/scalars/integer/query_integer_eq_functions.sql index a9f9759624..a24cc64e6f 100644 --- a/packages/eql/src/v3/scalars/integer/query_integer_eq_functions.sql +++ b/packages/eql/src/v3/scalars/integer/query_integer_eq_functions.sql @@ -45,3 +45,111 @@ AS $$ SELECT eql_v3.eq_term(a) OPERATOR(pg_catalog.<>) eql_v3.eq_term(b) $$; CREATE FUNCTION eql_v3.neq(a eql_v3.query_integer_eq, b public.eql_v3_integer_eq) RETURNS boolean LANGUAGE sql IMMUTABLE STRICT PARALLEL SAFE AS $$ SELECT eql_v3.eq_term(a) OPERATOR(pg_catalog.<>) eql_v3.eq_term(b) $$; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_eq: public.eql_v3_integer_ord_ore and eql_v3.query_integer_eq (mismatched query domain). +--! @param a public.eql_v3_integer_ord_ore left operand +--! @param b eql_v3.query_integer_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_integer_ord_ore, b eql_v3.query_integer_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_integer_ord_ore and eql_v3.query_integer_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_eq: eql_v3.query_integer_eq and public.eql_v3_integer_ord_ore (mismatched query domain). +--! @param a eql_v3.query_integer_eq left operand +--! @param b public.eql_v3_integer_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_integer_eq, b public.eql_v3_integer_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_integer_eq and public.eql_v3_integer_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_eq: public.eql_v3_integer_ord_ore and eql_v3.query_integer_eq (mismatched query domain). +--! @param a public.eql_v3_integer_ord_ore left operand +--! @param b eql_v3.query_integer_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_integer_ord_ore, b eql_v3.query_integer_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_integer_ord_ore and eql_v3.query_integer_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_eq: eql_v3.query_integer_eq and public.eql_v3_integer_ord_ore (mismatched query domain). +--! @param a eql_v3.query_integer_eq left operand +--! @param b public.eql_v3_integer_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_integer_eq, b public.eql_v3_integer_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_integer_eq and public.eql_v3_integer_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_eq: public.eql_v3_integer_ord and eql_v3.query_integer_eq (mismatched query domain). +--! @param a public.eql_v3_integer_ord left operand +--! @param b eql_v3.query_integer_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_integer_ord, b eql_v3.query_integer_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_integer_ord and eql_v3.query_integer_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_eq: eql_v3.query_integer_eq and public.eql_v3_integer_ord (mismatched query domain). +--! @param a eql_v3.query_integer_eq left operand +--! @param b public.eql_v3_integer_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_integer_eq, b public.eql_v3_integer_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_integer_eq and public.eql_v3_integer_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_eq: public.eql_v3_integer_ord and eql_v3.query_integer_eq (mismatched query domain). +--! @param a public.eql_v3_integer_ord left operand +--! @param b eql_v3.query_integer_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_integer_ord, b eql_v3.query_integer_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_integer_ord and eql_v3.query_integer_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_eq: eql_v3.query_integer_eq and public.eql_v3_integer_ord (mismatched query domain). +--! @param a eql_v3.query_integer_eq left operand +--! @param b public.eql_v3_integer_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_integer_eq, b public.eql_v3_integer_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_integer_eq and public.eql_v3_integer_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_eq: public.eql_v3_integer_ord_ope and eql_v3.query_integer_eq (mismatched query domain). +--! @param a public.eql_v3_integer_ord_ope left operand +--! @param b eql_v3.query_integer_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_integer_ord_ope, b eql_v3.query_integer_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_integer_ord_ope and eql_v3.query_integer_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_eq: eql_v3.query_integer_eq and public.eql_v3_integer_ord_ope (mismatched query domain). +--! @param a eql_v3.query_integer_eq left operand +--! @param b public.eql_v3_integer_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_integer_eq, b public.eql_v3_integer_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_integer_eq and public.eql_v3_integer_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_eq: public.eql_v3_integer_ord_ope and eql_v3.query_integer_eq (mismatched query domain). +--! @param a public.eql_v3_integer_ord_ope left operand +--! @param b eql_v3.query_integer_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_integer_ord_ope, b eql_v3.query_integer_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_integer_ord_ope and eql_v3.query_integer_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_eq: eql_v3.query_integer_eq and public.eql_v3_integer_ord_ope (mismatched query domain). +--! @param a eql_v3.query_integer_eq left operand +--! @param b public.eql_v3_integer_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_integer_eq, b public.eql_v3_integer_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_integer_eq and public.eql_v3_integer_ord_ope'; END; $$ +LANGUAGE plpgsql; diff --git a/packages/eql/src/v3/scalars/integer/query_integer_eq_operators.sql b/packages/eql/src/v3/scalars/integer/query_integer_eq_operators.sql index 527d5f7eb0..2deb1350e9 100644 --- a/packages/eql/src/v3/scalars/integer/query_integer_eq_operators.sql +++ b/packages/eql/src/v3/scalars/integer/query_integer_eq_operators.sql @@ -29,3 +29,63 @@ CREATE OPERATOR <> ( LEFTARG = eql_v3.query_integer_eq, RIGHTARG = public.eql_v3_integer_eq, COMMUTATOR = <>, NEGATOR = =, RESTRICT = neqsel, JOIN = neqjoinsel ); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_integer_ord_ore, RIGHTARG = eql_v3.query_integer_eq +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_integer_eq, RIGHTARG = public.eql_v3_integer_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_integer_ord_ore, RIGHTARG = eql_v3.query_integer_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_integer_eq, RIGHTARG = public.eql_v3_integer_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_integer_ord, RIGHTARG = eql_v3.query_integer_eq +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_integer_eq, RIGHTARG = public.eql_v3_integer_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_integer_ord, RIGHTARG = eql_v3.query_integer_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_integer_eq, RIGHTARG = public.eql_v3_integer_ord +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_integer_ord_ope, RIGHTARG = eql_v3.query_integer_eq +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_integer_eq, RIGHTARG = public.eql_v3_integer_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_integer_ord_ope, RIGHTARG = eql_v3.query_integer_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_integer_eq, RIGHTARG = public.eql_v3_integer_ord_ope +); diff --git a/packages/eql/src/v3/scalars/integer/query_integer_ord_functions.sql b/packages/eql/src/v3/scalars/integer/query_integer_ord_functions.sql index 1d16b50ed8..330f5bb3a0 100644 --- a/packages/eql/src/v3/scalars/integer/query_integer_ord_functions.sql +++ b/packages/eql/src/v3/scalars/integer/query_integer_ord_functions.sql @@ -109,3 +109,255 @@ AS $$ SELECT eql_v3.ord_term(a) OPERATOR(pg_catalog.>=) eql_v3.ord_term(b) $$; CREATE FUNCTION eql_v3.gte(a eql_v3.query_integer_ord, b public.eql_v3_integer_ord) RETURNS boolean LANGUAGE sql IMMUTABLE STRICT PARALLEL SAFE AS $$ SELECT eql_v3.ord_term(a) OPERATOR(pg_catalog.>=) eql_v3.ord_term(b) $$; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord: public.eql_v3_integer_eq and eql_v3.query_integer_ord (mismatched query domain). +--! @param a public.eql_v3_integer_eq left operand +--! @param b eql_v3.query_integer_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_integer_eq, b eql_v3.query_integer_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_integer_eq and eql_v3.query_integer_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord: eql_v3.query_integer_ord and public.eql_v3_integer_eq (mismatched query domain). +--! @param a eql_v3.query_integer_ord left operand +--! @param b public.eql_v3_integer_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_integer_ord, b public.eql_v3_integer_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_integer_ord and public.eql_v3_integer_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord: public.eql_v3_integer_eq and eql_v3.query_integer_ord (mismatched query domain). +--! @param a public.eql_v3_integer_eq left operand +--! @param b eql_v3.query_integer_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_integer_eq, b eql_v3.query_integer_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_integer_eq and eql_v3.query_integer_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord: eql_v3.query_integer_ord and public.eql_v3_integer_eq (mismatched query domain). +--! @param a eql_v3.query_integer_ord left operand +--! @param b public.eql_v3_integer_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_integer_ord, b public.eql_v3_integer_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_integer_ord and public.eql_v3_integer_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord: public.eql_v3_integer_ord_ore and eql_v3.query_integer_ord (mismatched query domain). +--! @param a public.eql_v3_integer_ord_ore left operand +--! @param b eql_v3.query_integer_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_integer_ord_ore, b eql_v3.query_integer_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_integer_ord_ore and eql_v3.query_integer_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord: eql_v3.query_integer_ord and public.eql_v3_integer_ord_ore (mismatched query domain). +--! @param a eql_v3.query_integer_ord left operand +--! @param b public.eql_v3_integer_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_integer_ord, b public.eql_v3_integer_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_integer_ord and public.eql_v3_integer_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord: public.eql_v3_integer_ord_ore and eql_v3.query_integer_ord (mismatched query domain). +--! @param a public.eql_v3_integer_ord_ore left operand +--! @param b eql_v3.query_integer_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_integer_ord_ore, b eql_v3.query_integer_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_integer_ord_ore and eql_v3.query_integer_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord: eql_v3.query_integer_ord and public.eql_v3_integer_ord_ore (mismatched query domain). +--! @param a eql_v3.query_integer_ord left operand +--! @param b public.eql_v3_integer_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_integer_ord, b public.eql_v3_integer_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_integer_ord and public.eql_v3_integer_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord: public.eql_v3_integer_ord_ore and eql_v3.query_integer_ord (mismatched query domain). +--! @param a public.eql_v3_integer_ord_ore left operand +--! @param b eql_v3.query_integer_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_integer_ord_ore, b eql_v3.query_integer_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_integer_ord_ore and eql_v3.query_integer_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord: eql_v3.query_integer_ord and public.eql_v3_integer_ord_ore (mismatched query domain). +--! @param a eql_v3.query_integer_ord left operand +--! @param b public.eql_v3_integer_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_integer_ord, b public.eql_v3_integer_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_integer_ord and public.eql_v3_integer_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord: public.eql_v3_integer_ord_ore and eql_v3.query_integer_ord (mismatched query domain). +--! @param a public.eql_v3_integer_ord_ore left operand +--! @param b eql_v3.query_integer_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_integer_ord_ore, b eql_v3.query_integer_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_integer_ord_ore and eql_v3.query_integer_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord: eql_v3.query_integer_ord and public.eql_v3_integer_ord_ore (mismatched query domain). +--! @param a eql_v3.query_integer_ord left operand +--! @param b public.eql_v3_integer_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_integer_ord, b public.eql_v3_integer_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_integer_ord and public.eql_v3_integer_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord: public.eql_v3_integer_ord_ore and eql_v3.query_integer_ord (mismatched query domain). +--! @param a public.eql_v3_integer_ord_ore left operand +--! @param b eql_v3.query_integer_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_integer_ord_ore, b eql_v3.query_integer_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_integer_ord_ore and eql_v3.query_integer_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord: eql_v3.query_integer_ord and public.eql_v3_integer_ord_ore (mismatched query domain). +--! @param a eql_v3.query_integer_ord left operand +--! @param b public.eql_v3_integer_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_integer_ord, b public.eql_v3_integer_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_integer_ord and public.eql_v3_integer_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord: public.eql_v3_integer_ord_ore and eql_v3.query_integer_ord (mismatched query domain). +--! @param a public.eql_v3_integer_ord_ore left operand +--! @param b eql_v3.query_integer_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_integer_ord_ore, b eql_v3.query_integer_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_integer_ord_ore and eql_v3.query_integer_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord: eql_v3.query_integer_ord and public.eql_v3_integer_ord_ore (mismatched query domain). +--! @param a eql_v3.query_integer_ord left operand +--! @param b public.eql_v3_integer_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_integer_ord, b public.eql_v3_integer_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_integer_ord and public.eql_v3_integer_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord: public.eql_v3_integer_ord_ope and eql_v3.query_integer_ord (mismatched query domain). +--! @param a public.eql_v3_integer_ord_ope left operand +--! @param b eql_v3.query_integer_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_integer_ord_ope, b eql_v3.query_integer_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_integer_ord_ope and eql_v3.query_integer_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord: eql_v3.query_integer_ord and public.eql_v3_integer_ord_ope (mismatched query domain). +--! @param a eql_v3.query_integer_ord left operand +--! @param b public.eql_v3_integer_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_integer_ord, b public.eql_v3_integer_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_integer_ord and public.eql_v3_integer_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord: public.eql_v3_integer_ord_ope and eql_v3.query_integer_ord (mismatched query domain). +--! @param a public.eql_v3_integer_ord_ope left operand +--! @param b eql_v3.query_integer_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_integer_ord_ope, b eql_v3.query_integer_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_integer_ord_ope and eql_v3.query_integer_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord: eql_v3.query_integer_ord and public.eql_v3_integer_ord_ope (mismatched query domain). +--! @param a eql_v3.query_integer_ord left operand +--! @param b public.eql_v3_integer_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_integer_ord, b public.eql_v3_integer_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_integer_ord and public.eql_v3_integer_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord: public.eql_v3_integer_ord_ope and eql_v3.query_integer_ord (mismatched query domain). +--! @param a public.eql_v3_integer_ord_ope left operand +--! @param b eql_v3.query_integer_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_integer_ord_ope, b eql_v3.query_integer_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_integer_ord_ope and eql_v3.query_integer_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord: eql_v3.query_integer_ord and public.eql_v3_integer_ord_ope (mismatched query domain). +--! @param a eql_v3.query_integer_ord left operand +--! @param b public.eql_v3_integer_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_integer_ord, b public.eql_v3_integer_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_integer_ord and public.eql_v3_integer_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord: public.eql_v3_integer_ord_ope and eql_v3.query_integer_ord (mismatched query domain). +--! @param a public.eql_v3_integer_ord_ope left operand +--! @param b eql_v3.query_integer_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_integer_ord_ope, b eql_v3.query_integer_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_integer_ord_ope and eql_v3.query_integer_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord: eql_v3.query_integer_ord and public.eql_v3_integer_ord_ope (mismatched query domain). +--! @param a eql_v3.query_integer_ord left operand +--! @param b public.eql_v3_integer_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_integer_ord, b public.eql_v3_integer_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_integer_ord and public.eql_v3_integer_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord: public.eql_v3_integer_ord_ope and eql_v3.query_integer_ord (mismatched query domain). +--! @param a public.eql_v3_integer_ord_ope left operand +--! @param b eql_v3.query_integer_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_integer_ord_ope, b eql_v3.query_integer_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_integer_ord_ope and eql_v3.query_integer_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord: eql_v3.query_integer_ord and public.eql_v3_integer_ord_ope (mismatched query domain). +--! @param a eql_v3.query_integer_ord left operand +--! @param b public.eql_v3_integer_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_integer_ord, b public.eql_v3_integer_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_integer_ord and public.eql_v3_integer_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord: public.eql_v3_integer_ord_ope and eql_v3.query_integer_ord (mismatched query domain). +--! @param a public.eql_v3_integer_ord_ope left operand +--! @param b eql_v3.query_integer_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_integer_ord_ope, b eql_v3.query_integer_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_integer_ord_ope and eql_v3.query_integer_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord: eql_v3.query_integer_ord and public.eql_v3_integer_ord_ope (mismatched query domain). +--! @param a eql_v3.query_integer_ord left operand +--! @param b public.eql_v3_integer_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_integer_ord, b public.eql_v3_integer_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_integer_ord and public.eql_v3_integer_ord_ope'; END; $$ +LANGUAGE plpgsql; diff --git a/packages/eql/src/v3/scalars/integer/query_integer_ord_ope_functions.sql b/packages/eql/src/v3/scalars/integer/query_integer_ord_ope_functions.sql index e1e596bc90..1093c2ebc7 100644 --- a/packages/eql/src/v3/scalars/integer/query_integer_ord_ope_functions.sql +++ b/packages/eql/src/v3/scalars/integer/query_integer_ord_ope_functions.sql @@ -109,3 +109,255 @@ AS $$ SELECT eql_v3.ord_term(a) OPERATOR(pg_catalog.>=) eql_v3.ord_term(b) $$; CREATE FUNCTION eql_v3.gte(a eql_v3.query_integer_ord_ope, b public.eql_v3_integer_ord_ope) RETURNS boolean LANGUAGE sql IMMUTABLE STRICT PARALLEL SAFE AS $$ SELECT eql_v3.ord_term(a) OPERATOR(pg_catalog.>=) eql_v3.ord_term(b) $$; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord_ope: public.eql_v3_integer_eq and eql_v3.query_integer_ord_ope (mismatched query domain). +--! @param a public.eql_v3_integer_eq left operand +--! @param b eql_v3.query_integer_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_integer_eq, b eql_v3.query_integer_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_integer_eq and eql_v3.query_integer_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord_ope: eql_v3.query_integer_ord_ope and public.eql_v3_integer_eq (mismatched query domain). +--! @param a eql_v3.query_integer_ord_ope left operand +--! @param b public.eql_v3_integer_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_integer_ord_ope, b public.eql_v3_integer_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_integer_ord_ope and public.eql_v3_integer_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord_ope: public.eql_v3_integer_eq and eql_v3.query_integer_ord_ope (mismatched query domain). +--! @param a public.eql_v3_integer_eq left operand +--! @param b eql_v3.query_integer_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_integer_eq, b eql_v3.query_integer_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_integer_eq and eql_v3.query_integer_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord_ope: eql_v3.query_integer_ord_ope and public.eql_v3_integer_eq (mismatched query domain). +--! @param a eql_v3.query_integer_ord_ope left operand +--! @param b public.eql_v3_integer_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_integer_ord_ope, b public.eql_v3_integer_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_integer_ord_ope and public.eql_v3_integer_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord_ope: public.eql_v3_integer_ord_ore and eql_v3.query_integer_ord_ope (mismatched query domain). +--! @param a public.eql_v3_integer_ord_ore left operand +--! @param b eql_v3.query_integer_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_integer_ord_ore, b eql_v3.query_integer_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_integer_ord_ore and eql_v3.query_integer_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord_ope: eql_v3.query_integer_ord_ope and public.eql_v3_integer_ord_ore (mismatched query domain). +--! @param a eql_v3.query_integer_ord_ope left operand +--! @param b public.eql_v3_integer_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_integer_ord_ope, b public.eql_v3_integer_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_integer_ord_ope and public.eql_v3_integer_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord_ope: public.eql_v3_integer_ord_ore and eql_v3.query_integer_ord_ope (mismatched query domain). +--! @param a public.eql_v3_integer_ord_ore left operand +--! @param b eql_v3.query_integer_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_integer_ord_ore, b eql_v3.query_integer_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_integer_ord_ore and eql_v3.query_integer_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord_ope: eql_v3.query_integer_ord_ope and public.eql_v3_integer_ord_ore (mismatched query domain). +--! @param a eql_v3.query_integer_ord_ope left operand +--! @param b public.eql_v3_integer_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_integer_ord_ope, b public.eql_v3_integer_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_integer_ord_ope and public.eql_v3_integer_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord_ope: public.eql_v3_integer_ord_ore and eql_v3.query_integer_ord_ope (mismatched query domain). +--! @param a public.eql_v3_integer_ord_ore left operand +--! @param b eql_v3.query_integer_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_integer_ord_ore, b eql_v3.query_integer_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_integer_ord_ore and eql_v3.query_integer_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord_ope: eql_v3.query_integer_ord_ope and public.eql_v3_integer_ord_ore (mismatched query domain). +--! @param a eql_v3.query_integer_ord_ope left operand +--! @param b public.eql_v3_integer_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_integer_ord_ope, b public.eql_v3_integer_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_integer_ord_ope and public.eql_v3_integer_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord_ope: public.eql_v3_integer_ord_ore and eql_v3.query_integer_ord_ope (mismatched query domain). +--! @param a public.eql_v3_integer_ord_ore left operand +--! @param b eql_v3.query_integer_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_integer_ord_ore, b eql_v3.query_integer_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_integer_ord_ore and eql_v3.query_integer_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord_ope: eql_v3.query_integer_ord_ope and public.eql_v3_integer_ord_ore (mismatched query domain). +--! @param a eql_v3.query_integer_ord_ope left operand +--! @param b public.eql_v3_integer_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_integer_ord_ope, b public.eql_v3_integer_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_integer_ord_ope and public.eql_v3_integer_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord_ope: public.eql_v3_integer_ord_ore and eql_v3.query_integer_ord_ope (mismatched query domain). +--! @param a public.eql_v3_integer_ord_ore left operand +--! @param b eql_v3.query_integer_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_integer_ord_ore, b eql_v3.query_integer_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_integer_ord_ore and eql_v3.query_integer_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord_ope: eql_v3.query_integer_ord_ope and public.eql_v3_integer_ord_ore (mismatched query domain). +--! @param a eql_v3.query_integer_ord_ope left operand +--! @param b public.eql_v3_integer_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_integer_ord_ope, b public.eql_v3_integer_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_integer_ord_ope and public.eql_v3_integer_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord_ope: public.eql_v3_integer_ord_ore and eql_v3.query_integer_ord_ope (mismatched query domain). +--! @param a public.eql_v3_integer_ord_ore left operand +--! @param b eql_v3.query_integer_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_integer_ord_ore, b eql_v3.query_integer_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_integer_ord_ore and eql_v3.query_integer_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord_ope: eql_v3.query_integer_ord_ope and public.eql_v3_integer_ord_ore (mismatched query domain). +--! @param a eql_v3.query_integer_ord_ope left operand +--! @param b public.eql_v3_integer_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_integer_ord_ope, b public.eql_v3_integer_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_integer_ord_ope and public.eql_v3_integer_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord_ope: public.eql_v3_integer_ord and eql_v3.query_integer_ord_ope (mismatched query domain). +--! @param a public.eql_v3_integer_ord left operand +--! @param b eql_v3.query_integer_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_integer_ord, b eql_v3.query_integer_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_integer_ord and eql_v3.query_integer_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord_ope: eql_v3.query_integer_ord_ope and public.eql_v3_integer_ord (mismatched query domain). +--! @param a eql_v3.query_integer_ord_ope left operand +--! @param b public.eql_v3_integer_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_integer_ord_ope, b public.eql_v3_integer_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_integer_ord_ope and public.eql_v3_integer_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord_ope: public.eql_v3_integer_ord and eql_v3.query_integer_ord_ope (mismatched query domain). +--! @param a public.eql_v3_integer_ord left operand +--! @param b eql_v3.query_integer_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_integer_ord, b eql_v3.query_integer_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_integer_ord and eql_v3.query_integer_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord_ope: eql_v3.query_integer_ord_ope and public.eql_v3_integer_ord (mismatched query domain). +--! @param a eql_v3.query_integer_ord_ope left operand +--! @param b public.eql_v3_integer_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_integer_ord_ope, b public.eql_v3_integer_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_integer_ord_ope and public.eql_v3_integer_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord_ope: public.eql_v3_integer_ord and eql_v3.query_integer_ord_ope (mismatched query domain). +--! @param a public.eql_v3_integer_ord left operand +--! @param b eql_v3.query_integer_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_integer_ord, b eql_v3.query_integer_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_integer_ord and eql_v3.query_integer_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord_ope: eql_v3.query_integer_ord_ope and public.eql_v3_integer_ord (mismatched query domain). +--! @param a eql_v3.query_integer_ord_ope left operand +--! @param b public.eql_v3_integer_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_integer_ord_ope, b public.eql_v3_integer_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_integer_ord_ope and public.eql_v3_integer_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord_ope: public.eql_v3_integer_ord and eql_v3.query_integer_ord_ope (mismatched query domain). +--! @param a public.eql_v3_integer_ord left operand +--! @param b eql_v3.query_integer_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_integer_ord, b eql_v3.query_integer_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_integer_ord and eql_v3.query_integer_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord_ope: eql_v3.query_integer_ord_ope and public.eql_v3_integer_ord (mismatched query domain). +--! @param a eql_v3.query_integer_ord_ope left operand +--! @param b public.eql_v3_integer_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_integer_ord_ope, b public.eql_v3_integer_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_integer_ord_ope and public.eql_v3_integer_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord_ope: public.eql_v3_integer_ord and eql_v3.query_integer_ord_ope (mismatched query domain). +--! @param a public.eql_v3_integer_ord left operand +--! @param b eql_v3.query_integer_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_integer_ord, b eql_v3.query_integer_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_integer_ord and eql_v3.query_integer_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord_ope: eql_v3.query_integer_ord_ope and public.eql_v3_integer_ord (mismatched query domain). +--! @param a eql_v3.query_integer_ord_ope left operand +--! @param b public.eql_v3_integer_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_integer_ord_ope, b public.eql_v3_integer_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_integer_ord_ope and public.eql_v3_integer_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord_ope: public.eql_v3_integer_ord and eql_v3.query_integer_ord_ope (mismatched query domain). +--! @param a public.eql_v3_integer_ord left operand +--! @param b eql_v3.query_integer_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_integer_ord, b eql_v3.query_integer_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_integer_ord and eql_v3.query_integer_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord_ope: eql_v3.query_integer_ord_ope and public.eql_v3_integer_ord (mismatched query domain). +--! @param a eql_v3.query_integer_ord_ope left operand +--! @param b public.eql_v3_integer_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_integer_ord_ope, b public.eql_v3_integer_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_integer_ord_ope and public.eql_v3_integer_ord'; END; $$ +LANGUAGE plpgsql; diff --git a/packages/eql/src/v3/scalars/integer/query_integer_ord_ope_operators.sql b/packages/eql/src/v3/scalars/integer/query_integer_ord_ope_operators.sql index 7936100c49..1078198e57 100644 --- a/packages/eql/src/v3/scalars/integer/query_integer_ord_ope_operators.sql +++ b/packages/eql/src/v3/scalars/integer/query_integer_ord_ope_operators.sql @@ -77,3 +77,143 @@ CREATE OPERATOR >= ( LEFTARG = eql_v3.query_integer_ord_ope, RIGHTARG = public.eql_v3_integer_ord_ope, COMMUTATOR = <=, NEGATOR = <, RESTRICT = scalargesel, JOIN = scalargejoinsel ); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_integer_eq, RIGHTARG = eql_v3.query_integer_ord_ope +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_integer_ord_ope, RIGHTARG = public.eql_v3_integer_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_integer_eq, RIGHTARG = eql_v3.query_integer_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_integer_ord_ope, RIGHTARG = public.eql_v3_integer_eq +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_integer_ord_ore, RIGHTARG = eql_v3.query_integer_ord_ope +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_integer_ord_ope, RIGHTARG = public.eql_v3_integer_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_integer_ord_ore, RIGHTARG = eql_v3.query_integer_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_integer_ord_ope, RIGHTARG = public.eql_v3_integer_ord_ore +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_integer_ord_ore, RIGHTARG = eql_v3.query_integer_ord_ope +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_integer_ord_ope, RIGHTARG = public.eql_v3_integer_ord_ore +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_integer_ord_ore, RIGHTARG = eql_v3.query_integer_ord_ope +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_integer_ord_ope, RIGHTARG = public.eql_v3_integer_ord_ore +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_integer_ord_ore, RIGHTARG = eql_v3.query_integer_ord_ope +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_integer_ord_ope, RIGHTARG = public.eql_v3_integer_ord_ore +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_integer_ord_ore, RIGHTARG = eql_v3.query_integer_ord_ope +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_integer_ord_ope, RIGHTARG = public.eql_v3_integer_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_integer_ord, RIGHTARG = eql_v3.query_integer_ord_ope +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_integer_ord_ope, RIGHTARG = public.eql_v3_integer_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_integer_ord, RIGHTARG = eql_v3.query_integer_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_integer_ord_ope, RIGHTARG = public.eql_v3_integer_ord +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_integer_ord, RIGHTARG = eql_v3.query_integer_ord_ope +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_integer_ord_ope, RIGHTARG = public.eql_v3_integer_ord +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_integer_ord, RIGHTARG = eql_v3.query_integer_ord_ope +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_integer_ord_ope, RIGHTARG = public.eql_v3_integer_ord +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_integer_ord, RIGHTARG = eql_v3.query_integer_ord_ope +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_integer_ord_ope, RIGHTARG = public.eql_v3_integer_ord +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_integer_ord, RIGHTARG = eql_v3.query_integer_ord_ope +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_integer_ord_ope, RIGHTARG = public.eql_v3_integer_ord +); diff --git a/packages/eql/src/v3/scalars/integer/query_integer_ord_operators.sql b/packages/eql/src/v3/scalars/integer/query_integer_ord_operators.sql index df7da7cb56..0148b0a2ff 100644 --- a/packages/eql/src/v3/scalars/integer/query_integer_ord_operators.sql +++ b/packages/eql/src/v3/scalars/integer/query_integer_ord_operators.sql @@ -77,3 +77,143 @@ CREATE OPERATOR >= ( LEFTARG = eql_v3.query_integer_ord, RIGHTARG = public.eql_v3_integer_ord, COMMUTATOR = <=, NEGATOR = <, RESTRICT = scalargesel, JOIN = scalargejoinsel ); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_integer_eq, RIGHTARG = eql_v3.query_integer_ord +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_integer_ord, RIGHTARG = public.eql_v3_integer_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_integer_eq, RIGHTARG = eql_v3.query_integer_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_integer_ord, RIGHTARG = public.eql_v3_integer_eq +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_integer_ord_ore, RIGHTARG = eql_v3.query_integer_ord +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_integer_ord, RIGHTARG = public.eql_v3_integer_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_integer_ord_ore, RIGHTARG = eql_v3.query_integer_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_integer_ord, RIGHTARG = public.eql_v3_integer_ord_ore +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_integer_ord_ore, RIGHTARG = eql_v3.query_integer_ord +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_integer_ord, RIGHTARG = public.eql_v3_integer_ord_ore +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_integer_ord_ore, RIGHTARG = eql_v3.query_integer_ord +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_integer_ord, RIGHTARG = public.eql_v3_integer_ord_ore +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_integer_ord_ore, RIGHTARG = eql_v3.query_integer_ord +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_integer_ord, RIGHTARG = public.eql_v3_integer_ord_ore +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_integer_ord_ore, RIGHTARG = eql_v3.query_integer_ord +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_integer_ord, RIGHTARG = public.eql_v3_integer_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_integer_ord_ope, RIGHTARG = eql_v3.query_integer_ord +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_integer_ord, RIGHTARG = public.eql_v3_integer_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_integer_ord_ope, RIGHTARG = eql_v3.query_integer_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_integer_ord, RIGHTARG = public.eql_v3_integer_ord_ope +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_integer_ord_ope, RIGHTARG = eql_v3.query_integer_ord +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_integer_ord, RIGHTARG = public.eql_v3_integer_ord_ope +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_integer_ord_ope, RIGHTARG = eql_v3.query_integer_ord +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_integer_ord, RIGHTARG = public.eql_v3_integer_ord_ope +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_integer_ord_ope, RIGHTARG = eql_v3.query_integer_ord +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_integer_ord, RIGHTARG = public.eql_v3_integer_ord_ope +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_integer_ord_ope, RIGHTARG = eql_v3.query_integer_ord +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_integer_ord, RIGHTARG = public.eql_v3_integer_ord_ope +); diff --git a/packages/eql/src/v3/scalars/integer/query_integer_ord_ore_functions.sql b/packages/eql/src/v3/scalars/integer/query_integer_ord_ore_functions.sql index 2caaf3322c..5b381aa60a 100644 --- a/packages/eql/src/v3/scalars/integer/query_integer_ord_ore_functions.sql +++ b/packages/eql/src/v3/scalars/integer/query_integer_ord_ore_functions.sql @@ -109,3 +109,255 @@ AS $$ SELECT eql_v3.ord_term_ore(a) OPERATOR(public.>=) eql_v3.ord_term_ore(b) $ CREATE FUNCTION eql_v3.gte(a eql_v3.query_integer_ord_ore, b public.eql_v3_integer_ord_ore) RETURNS boolean LANGUAGE sql IMMUTABLE STRICT PARALLEL SAFE AS $$ SELECT eql_v3.ord_term_ore(a) OPERATOR(public.>=) eql_v3.ord_term_ore(b) $$; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord_ore: public.eql_v3_integer_eq and eql_v3.query_integer_ord_ore (mismatched query domain). +--! @param a public.eql_v3_integer_eq left operand +--! @param b eql_v3.query_integer_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_integer_eq, b eql_v3.query_integer_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_integer_eq and eql_v3.query_integer_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord_ore: eql_v3.query_integer_ord_ore and public.eql_v3_integer_eq (mismatched query domain). +--! @param a eql_v3.query_integer_ord_ore left operand +--! @param b public.eql_v3_integer_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_integer_ord_ore, b public.eql_v3_integer_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_integer_ord_ore and public.eql_v3_integer_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord_ore: public.eql_v3_integer_eq and eql_v3.query_integer_ord_ore (mismatched query domain). +--! @param a public.eql_v3_integer_eq left operand +--! @param b eql_v3.query_integer_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_integer_eq, b eql_v3.query_integer_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_integer_eq and eql_v3.query_integer_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord_ore: eql_v3.query_integer_ord_ore and public.eql_v3_integer_eq (mismatched query domain). +--! @param a eql_v3.query_integer_ord_ore left operand +--! @param b public.eql_v3_integer_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_integer_ord_ore, b public.eql_v3_integer_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_integer_ord_ore and public.eql_v3_integer_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord_ore: public.eql_v3_integer_ord and eql_v3.query_integer_ord_ore (mismatched query domain). +--! @param a public.eql_v3_integer_ord left operand +--! @param b eql_v3.query_integer_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_integer_ord, b eql_v3.query_integer_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_integer_ord and eql_v3.query_integer_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord_ore: eql_v3.query_integer_ord_ore and public.eql_v3_integer_ord (mismatched query domain). +--! @param a eql_v3.query_integer_ord_ore left operand +--! @param b public.eql_v3_integer_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_integer_ord_ore, b public.eql_v3_integer_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_integer_ord_ore and public.eql_v3_integer_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord_ore: public.eql_v3_integer_ord and eql_v3.query_integer_ord_ore (mismatched query domain). +--! @param a public.eql_v3_integer_ord left operand +--! @param b eql_v3.query_integer_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_integer_ord, b eql_v3.query_integer_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_integer_ord and eql_v3.query_integer_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord_ore: eql_v3.query_integer_ord_ore and public.eql_v3_integer_ord (mismatched query domain). +--! @param a eql_v3.query_integer_ord_ore left operand +--! @param b public.eql_v3_integer_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_integer_ord_ore, b public.eql_v3_integer_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_integer_ord_ore and public.eql_v3_integer_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord_ore: public.eql_v3_integer_ord and eql_v3.query_integer_ord_ore (mismatched query domain). +--! @param a public.eql_v3_integer_ord left operand +--! @param b eql_v3.query_integer_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_integer_ord, b eql_v3.query_integer_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_integer_ord and eql_v3.query_integer_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord_ore: eql_v3.query_integer_ord_ore and public.eql_v3_integer_ord (mismatched query domain). +--! @param a eql_v3.query_integer_ord_ore left operand +--! @param b public.eql_v3_integer_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_integer_ord_ore, b public.eql_v3_integer_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_integer_ord_ore and public.eql_v3_integer_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord_ore: public.eql_v3_integer_ord and eql_v3.query_integer_ord_ore (mismatched query domain). +--! @param a public.eql_v3_integer_ord left operand +--! @param b eql_v3.query_integer_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_integer_ord, b eql_v3.query_integer_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_integer_ord and eql_v3.query_integer_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord_ore: eql_v3.query_integer_ord_ore and public.eql_v3_integer_ord (mismatched query domain). +--! @param a eql_v3.query_integer_ord_ore left operand +--! @param b public.eql_v3_integer_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_integer_ord_ore, b public.eql_v3_integer_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_integer_ord_ore and public.eql_v3_integer_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord_ore: public.eql_v3_integer_ord and eql_v3.query_integer_ord_ore (mismatched query domain). +--! @param a public.eql_v3_integer_ord left operand +--! @param b eql_v3.query_integer_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_integer_ord, b eql_v3.query_integer_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_integer_ord and eql_v3.query_integer_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord_ore: eql_v3.query_integer_ord_ore and public.eql_v3_integer_ord (mismatched query domain). +--! @param a eql_v3.query_integer_ord_ore left operand +--! @param b public.eql_v3_integer_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_integer_ord_ore, b public.eql_v3_integer_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_integer_ord_ore and public.eql_v3_integer_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord_ore: public.eql_v3_integer_ord and eql_v3.query_integer_ord_ore (mismatched query domain). +--! @param a public.eql_v3_integer_ord left operand +--! @param b eql_v3.query_integer_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_integer_ord, b eql_v3.query_integer_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_integer_ord and eql_v3.query_integer_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord_ore: eql_v3.query_integer_ord_ore and public.eql_v3_integer_ord (mismatched query domain). +--! @param a eql_v3.query_integer_ord_ore left operand +--! @param b public.eql_v3_integer_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_integer_ord_ore, b public.eql_v3_integer_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_integer_ord_ore and public.eql_v3_integer_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord_ore: public.eql_v3_integer_ord_ope and eql_v3.query_integer_ord_ore (mismatched query domain). +--! @param a public.eql_v3_integer_ord_ope left operand +--! @param b eql_v3.query_integer_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_integer_ord_ope, b eql_v3.query_integer_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_integer_ord_ope and eql_v3.query_integer_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord_ore: eql_v3.query_integer_ord_ore and public.eql_v3_integer_ord_ope (mismatched query domain). +--! @param a eql_v3.query_integer_ord_ore left operand +--! @param b public.eql_v3_integer_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_integer_ord_ore, b public.eql_v3_integer_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_integer_ord_ore and public.eql_v3_integer_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord_ore: public.eql_v3_integer_ord_ope and eql_v3.query_integer_ord_ore (mismatched query domain). +--! @param a public.eql_v3_integer_ord_ope left operand +--! @param b eql_v3.query_integer_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_integer_ord_ope, b eql_v3.query_integer_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_integer_ord_ope and eql_v3.query_integer_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord_ore: eql_v3.query_integer_ord_ore and public.eql_v3_integer_ord_ope (mismatched query domain). +--! @param a eql_v3.query_integer_ord_ore left operand +--! @param b public.eql_v3_integer_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_integer_ord_ore, b public.eql_v3_integer_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_integer_ord_ore and public.eql_v3_integer_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord_ore: public.eql_v3_integer_ord_ope and eql_v3.query_integer_ord_ore (mismatched query domain). +--! @param a public.eql_v3_integer_ord_ope left operand +--! @param b eql_v3.query_integer_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_integer_ord_ope, b eql_v3.query_integer_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_integer_ord_ope and eql_v3.query_integer_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord_ore: eql_v3.query_integer_ord_ore and public.eql_v3_integer_ord_ope (mismatched query domain). +--! @param a eql_v3.query_integer_ord_ore left operand +--! @param b public.eql_v3_integer_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_integer_ord_ore, b public.eql_v3_integer_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_integer_ord_ore and public.eql_v3_integer_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord_ore: public.eql_v3_integer_ord_ope and eql_v3.query_integer_ord_ore (mismatched query domain). +--! @param a public.eql_v3_integer_ord_ope left operand +--! @param b eql_v3.query_integer_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_integer_ord_ope, b eql_v3.query_integer_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_integer_ord_ope and eql_v3.query_integer_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord_ore: eql_v3.query_integer_ord_ore and public.eql_v3_integer_ord_ope (mismatched query domain). +--! @param a eql_v3.query_integer_ord_ore left operand +--! @param b public.eql_v3_integer_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_integer_ord_ore, b public.eql_v3_integer_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_integer_ord_ore and public.eql_v3_integer_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord_ore: public.eql_v3_integer_ord_ope and eql_v3.query_integer_ord_ore (mismatched query domain). +--! @param a public.eql_v3_integer_ord_ope left operand +--! @param b eql_v3.query_integer_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_integer_ord_ope, b eql_v3.query_integer_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_integer_ord_ope and eql_v3.query_integer_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord_ore: eql_v3.query_integer_ord_ore and public.eql_v3_integer_ord_ope (mismatched query domain). +--! @param a eql_v3.query_integer_ord_ore left operand +--! @param b public.eql_v3_integer_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_integer_ord_ore, b public.eql_v3_integer_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_integer_ord_ore and public.eql_v3_integer_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord_ore: public.eql_v3_integer_ord_ope and eql_v3.query_integer_ord_ore (mismatched query domain). +--! @param a public.eql_v3_integer_ord_ope left operand +--! @param b eql_v3.query_integer_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_integer_ord_ope, b eql_v3.query_integer_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_integer_ord_ope and eql_v3.query_integer_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_integer_ord_ore: eql_v3.query_integer_ord_ore and public.eql_v3_integer_ord_ope (mismatched query domain). +--! @param a eql_v3.query_integer_ord_ore left operand +--! @param b public.eql_v3_integer_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_integer_ord_ore, b public.eql_v3_integer_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_integer_ord_ore and public.eql_v3_integer_ord_ope'; END; $$ +LANGUAGE plpgsql; diff --git a/packages/eql/src/v3/scalars/integer/query_integer_ord_ore_operators.sql b/packages/eql/src/v3/scalars/integer/query_integer_ord_ore_operators.sql index c1a6b60255..52e040bd0a 100644 --- a/packages/eql/src/v3/scalars/integer/query_integer_ord_ore_operators.sql +++ b/packages/eql/src/v3/scalars/integer/query_integer_ord_ore_operators.sql @@ -77,3 +77,143 @@ CREATE OPERATOR >= ( LEFTARG = eql_v3.query_integer_ord_ore, RIGHTARG = public.eql_v3_integer_ord_ore, COMMUTATOR = <=, NEGATOR = <, RESTRICT = scalargesel, JOIN = scalargejoinsel ); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_integer_eq, RIGHTARG = eql_v3.query_integer_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_integer_ord_ore, RIGHTARG = public.eql_v3_integer_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_integer_eq, RIGHTARG = eql_v3.query_integer_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_integer_ord_ore, RIGHTARG = public.eql_v3_integer_eq +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_integer_ord, RIGHTARG = eql_v3.query_integer_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_integer_ord_ore, RIGHTARG = public.eql_v3_integer_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_integer_ord, RIGHTARG = eql_v3.query_integer_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_integer_ord_ore, RIGHTARG = public.eql_v3_integer_ord +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_integer_ord, RIGHTARG = eql_v3.query_integer_ord_ore +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_integer_ord_ore, RIGHTARG = public.eql_v3_integer_ord +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_integer_ord, RIGHTARG = eql_v3.query_integer_ord_ore +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_integer_ord_ore, RIGHTARG = public.eql_v3_integer_ord +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_integer_ord, RIGHTARG = eql_v3.query_integer_ord_ore +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_integer_ord_ore, RIGHTARG = public.eql_v3_integer_ord +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_integer_ord, RIGHTARG = eql_v3.query_integer_ord_ore +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_integer_ord_ore, RIGHTARG = public.eql_v3_integer_ord +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_integer_ord_ope, RIGHTARG = eql_v3.query_integer_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_integer_ord_ore, RIGHTARG = public.eql_v3_integer_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_integer_ord_ope, RIGHTARG = eql_v3.query_integer_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_integer_ord_ore, RIGHTARG = public.eql_v3_integer_ord_ope +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_integer_ord_ope, RIGHTARG = eql_v3.query_integer_ord_ore +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_integer_ord_ore, RIGHTARG = public.eql_v3_integer_ord_ope +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_integer_ord_ope, RIGHTARG = eql_v3.query_integer_ord_ore +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_integer_ord_ore, RIGHTARG = public.eql_v3_integer_ord_ope +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_integer_ord_ope, RIGHTARG = eql_v3.query_integer_ord_ore +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_integer_ord_ore, RIGHTARG = public.eql_v3_integer_ord_ope +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_integer_ord_ope, RIGHTARG = eql_v3.query_integer_ord_ore +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_integer_ord_ore, RIGHTARG = public.eql_v3_integer_ord_ope +); diff --git a/packages/eql/src/v3/scalars/numeric/query_numeric_eq_functions.sql b/packages/eql/src/v3/scalars/numeric/query_numeric_eq_functions.sql index 90b3c8c0d1..570b5bf1ef 100644 --- a/packages/eql/src/v3/scalars/numeric/query_numeric_eq_functions.sql +++ b/packages/eql/src/v3/scalars/numeric/query_numeric_eq_functions.sql @@ -45,3 +45,111 @@ AS $$ SELECT eql_v3.eq_term(a) OPERATOR(pg_catalog.<>) eql_v3.eq_term(b) $$; CREATE FUNCTION eql_v3.neq(a eql_v3.query_numeric_eq, b public.eql_v3_numeric_eq) RETURNS boolean LANGUAGE sql IMMUTABLE STRICT PARALLEL SAFE AS $$ SELECT eql_v3.eq_term(a) OPERATOR(pg_catalog.<>) eql_v3.eq_term(b) $$; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_eq: public.eql_v3_numeric_ord_ore and eql_v3.query_numeric_eq (mismatched query domain). +--! @param a public.eql_v3_numeric_ord_ore left operand +--! @param b eql_v3.query_numeric_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_numeric_ord_ore, b eql_v3.query_numeric_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_numeric_ord_ore and eql_v3.query_numeric_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_eq: eql_v3.query_numeric_eq and public.eql_v3_numeric_ord_ore (mismatched query domain). +--! @param a eql_v3.query_numeric_eq left operand +--! @param b public.eql_v3_numeric_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_numeric_eq, b public.eql_v3_numeric_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_numeric_eq and public.eql_v3_numeric_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_eq: public.eql_v3_numeric_ord_ore and eql_v3.query_numeric_eq (mismatched query domain). +--! @param a public.eql_v3_numeric_ord_ore left operand +--! @param b eql_v3.query_numeric_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_numeric_ord_ore, b eql_v3.query_numeric_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_numeric_ord_ore and eql_v3.query_numeric_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_eq: eql_v3.query_numeric_eq and public.eql_v3_numeric_ord_ore (mismatched query domain). +--! @param a eql_v3.query_numeric_eq left operand +--! @param b public.eql_v3_numeric_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_numeric_eq, b public.eql_v3_numeric_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_numeric_eq and public.eql_v3_numeric_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_eq: public.eql_v3_numeric_ord and eql_v3.query_numeric_eq (mismatched query domain). +--! @param a public.eql_v3_numeric_ord left operand +--! @param b eql_v3.query_numeric_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_numeric_ord, b eql_v3.query_numeric_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_numeric_ord and eql_v3.query_numeric_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_eq: eql_v3.query_numeric_eq and public.eql_v3_numeric_ord (mismatched query domain). +--! @param a eql_v3.query_numeric_eq left operand +--! @param b public.eql_v3_numeric_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_numeric_eq, b public.eql_v3_numeric_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_numeric_eq and public.eql_v3_numeric_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_eq: public.eql_v3_numeric_ord and eql_v3.query_numeric_eq (mismatched query domain). +--! @param a public.eql_v3_numeric_ord left operand +--! @param b eql_v3.query_numeric_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_numeric_ord, b eql_v3.query_numeric_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_numeric_ord and eql_v3.query_numeric_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_eq: eql_v3.query_numeric_eq and public.eql_v3_numeric_ord (mismatched query domain). +--! @param a eql_v3.query_numeric_eq left operand +--! @param b public.eql_v3_numeric_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_numeric_eq, b public.eql_v3_numeric_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_numeric_eq and public.eql_v3_numeric_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_eq: public.eql_v3_numeric_ord_ope and eql_v3.query_numeric_eq (mismatched query domain). +--! @param a public.eql_v3_numeric_ord_ope left operand +--! @param b eql_v3.query_numeric_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_numeric_ord_ope, b eql_v3.query_numeric_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_numeric_ord_ope and eql_v3.query_numeric_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_eq: eql_v3.query_numeric_eq and public.eql_v3_numeric_ord_ope (mismatched query domain). +--! @param a eql_v3.query_numeric_eq left operand +--! @param b public.eql_v3_numeric_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_numeric_eq, b public.eql_v3_numeric_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_numeric_eq and public.eql_v3_numeric_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_eq: public.eql_v3_numeric_ord_ope and eql_v3.query_numeric_eq (mismatched query domain). +--! @param a public.eql_v3_numeric_ord_ope left operand +--! @param b eql_v3.query_numeric_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_numeric_ord_ope, b eql_v3.query_numeric_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_numeric_ord_ope and eql_v3.query_numeric_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_eq: eql_v3.query_numeric_eq and public.eql_v3_numeric_ord_ope (mismatched query domain). +--! @param a eql_v3.query_numeric_eq left operand +--! @param b public.eql_v3_numeric_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_numeric_eq, b public.eql_v3_numeric_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_numeric_eq and public.eql_v3_numeric_ord_ope'; END; $$ +LANGUAGE plpgsql; diff --git a/packages/eql/src/v3/scalars/numeric/query_numeric_eq_operators.sql b/packages/eql/src/v3/scalars/numeric/query_numeric_eq_operators.sql index 046b26a635..5187485386 100644 --- a/packages/eql/src/v3/scalars/numeric/query_numeric_eq_operators.sql +++ b/packages/eql/src/v3/scalars/numeric/query_numeric_eq_operators.sql @@ -29,3 +29,63 @@ CREATE OPERATOR <> ( LEFTARG = eql_v3.query_numeric_eq, RIGHTARG = public.eql_v3_numeric_eq, COMMUTATOR = <>, NEGATOR = =, RESTRICT = neqsel, JOIN = neqjoinsel ); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_numeric_ord_ore, RIGHTARG = eql_v3.query_numeric_eq +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_numeric_eq, RIGHTARG = public.eql_v3_numeric_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_numeric_ord_ore, RIGHTARG = eql_v3.query_numeric_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_numeric_eq, RIGHTARG = public.eql_v3_numeric_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_numeric_ord, RIGHTARG = eql_v3.query_numeric_eq +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_numeric_eq, RIGHTARG = public.eql_v3_numeric_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_numeric_ord, RIGHTARG = eql_v3.query_numeric_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_numeric_eq, RIGHTARG = public.eql_v3_numeric_ord +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_numeric_ord_ope, RIGHTARG = eql_v3.query_numeric_eq +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_numeric_eq, RIGHTARG = public.eql_v3_numeric_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_numeric_ord_ope, RIGHTARG = eql_v3.query_numeric_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_numeric_eq, RIGHTARG = public.eql_v3_numeric_ord_ope +); diff --git a/packages/eql/src/v3/scalars/numeric/query_numeric_ord_functions.sql b/packages/eql/src/v3/scalars/numeric/query_numeric_ord_functions.sql index f81eb9c16e..9d68a2c73d 100644 --- a/packages/eql/src/v3/scalars/numeric/query_numeric_ord_functions.sql +++ b/packages/eql/src/v3/scalars/numeric/query_numeric_ord_functions.sql @@ -109,3 +109,255 @@ AS $$ SELECT eql_v3.ord_term(a) OPERATOR(pg_catalog.>=) eql_v3.ord_term(b) $$; CREATE FUNCTION eql_v3.gte(a eql_v3.query_numeric_ord, b public.eql_v3_numeric_ord) RETURNS boolean LANGUAGE sql IMMUTABLE STRICT PARALLEL SAFE AS $$ SELECT eql_v3.ord_term(a) OPERATOR(pg_catalog.>=) eql_v3.ord_term(b) $$; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord: public.eql_v3_numeric_eq and eql_v3.query_numeric_ord (mismatched query domain). +--! @param a public.eql_v3_numeric_eq left operand +--! @param b eql_v3.query_numeric_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_numeric_eq, b eql_v3.query_numeric_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_numeric_eq and eql_v3.query_numeric_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord: eql_v3.query_numeric_ord and public.eql_v3_numeric_eq (mismatched query domain). +--! @param a eql_v3.query_numeric_ord left operand +--! @param b public.eql_v3_numeric_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_numeric_ord, b public.eql_v3_numeric_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_numeric_ord and public.eql_v3_numeric_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord: public.eql_v3_numeric_eq and eql_v3.query_numeric_ord (mismatched query domain). +--! @param a public.eql_v3_numeric_eq left operand +--! @param b eql_v3.query_numeric_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_numeric_eq, b eql_v3.query_numeric_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_numeric_eq and eql_v3.query_numeric_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord: eql_v3.query_numeric_ord and public.eql_v3_numeric_eq (mismatched query domain). +--! @param a eql_v3.query_numeric_ord left operand +--! @param b public.eql_v3_numeric_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_numeric_ord, b public.eql_v3_numeric_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_numeric_ord and public.eql_v3_numeric_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord: public.eql_v3_numeric_ord_ore and eql_v3.query_numeric_ord (mismatched query domain). +--! @param a public.eql_v3_numeric_ord_ore left operand +--! @param b eql_v3.query_numeric_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_numeric_ord_ore, b eql_v3.query_numeric_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_numeric_ord_ore and eql_v3.query_numeric_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord: eql_v3.query_numeric_ord and public.eql_v3_numeric_ord_ore (mismatched query domain). +--! @param a eql_v3.query_numeric_ord left operand +--! @param b public.eql_v3_numeric_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_numeric_ord, b public.eql_v3_numeric_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_numeric_ord and public.eql_v3_numeric_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord: public.eql_v3_numeric_ord_ore and eql_v3.query_numeric_ord (mismatched query domain). +--! @param a public.eql_v3_numeric_ord_ore left operand +--! @param b eql_v3.query_numeric_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_numeric_ord_ore, b eql_v3.query_numeric_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_numeric_ord_ore and eql_v3.query_numeric_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord: eql_v3.query_numeric_ord and public.eql_v3_numeric_ord_ore (mismatched query domain). +--! @param a eql_v3.query_numeric_ord left operand +--! @param b public.eql_v3_numeric_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_numeric_ord, b public.eql_v3_numeric_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_numeric_ord and public.eql_v3_numeric_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord: public.eql_v3_numeric_ord_ore and eql_v3.query_numeric_ord (mismatched query domain). +--! @param a public.eql_v3_numeric_ord_ore left operand +--! @param b eql_v3.query_numeric_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_numeric_ord_ore, b eql_v3.query_numeric_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_numeric_ord_ore and eql_v3.query_numeric_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord: eql_v3.query_numeric_ord and public.eql_v3_numeric_ord_ore (mismatched query domain). +--! @param a eql_v3.query_numeric_ord left operand +--! @param b public.eql_v3_numeric_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_numeric_ord, b public.eql_v3_numeric_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_numeric_ord and public.eql_v3_numeric_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord: public.eql_v3_numeric_ord_ore and eql_v3.query_numeric_ord (mismatched query domain). +--! @param a public.eql_v3_numeric_ord_ore left operand +--! @param b eql_v3.query_numeric_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_numeric_ord_ore, b eql_v3.query_numeric_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_numeric_ord_ore and eql_v3.query_numeric_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord: eql_v3.query_numeric_ord and public.eql_v3_numeric_ord_ore (mismatched query domain). +--! @param a eql_v3.query_numeric_ord left operand +--! @param b public.eql_v3_numeric_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_numeric_ord, b public.eql_v3_numeric_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_numeric_ord and public.eql_v3_numeric_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord: public.eql_v3_numeric_ord_ore and eql_v3.query_numeric_ord (mismatched query domain). +--! @param a public.eql_v3_numeric_ord_ore left operand +--! @param b eql_v3.query_numeric_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_numeric_ord_ore, b eql_v3.query_numeric_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_numeric_ord_ore and eql_v3.query_numeric_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord: eql_v3.query_numeric_ord and public.eql_v3_numeric_ord_ore (mismatched query domain). +--! @param a eql_v3.query_numeric_ord left operand +--! @param b public.eql_v3_numeric_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_numeric_ord, b public.eql_v3_numeric_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_numeric_ord and public.eql_v3_numeric_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord: public.eql_v3_numeric_ord_ore and eql_v3.query_numeric_ord (mismatched query domain). +--! @param a public.eql_v3_numeric_ord_ore left operand +--! @param b eql_v3.query_numeric_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_numeric_ord_ore, b eql_v3.query_numeric_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_numeric_ord_ore and eql_v3.query_numeric_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord: eql_v3.query_numeric_ord and public.eql_v3_numeric_ord_ore (mismatched query domain). +--! @param a eql_v3.query_numeric_ord left operand +--! @param b public.eql_v3_numeric_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_numeric_ord, b public.eql_v3_numeric_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_numeric_ord and public.eql_v3_numeric_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord: public.eql_v3_numeric_ord_ope and eql_v3.query_numeric_ord (mismatched query domain). +--! @param a public.eql_v3_numeric_ord_ope left operand +--! @param b eql_v3.query_numeric_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_numeric_ord_ope, b eql_v3.query_numeric_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_numeric_ord_ope and eql_v3.query_numeric_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord: eql_v3.query_numeric_ord and public.eql_v3_numeric_ord_ope (mismatched query domain). +--! @param a eql_v3.query_numeric_ord left operand +--! @param b public.eql_v3_numeric_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_numeric_ord, b public.eql_v3_numeric_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_numeric_ord and public.eql_v3_numeric_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord: public.eql_v3_numeric_ord_ope and eql_v3.query_numeric_ord (mismatched query domain). +--! @param a public.eql_v3_numeric_ord_ope left operand +--! @param b eql_v3.query_numeric_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_numeric_ord_ope, b eql_v3.query_numeric_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_numeric_ord_ope and eql_v3.query_numeric_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord: eql_v3.query_numeric_ord and public.eql_v3_numeric_ord_ope (mismatched query domain). +--! @param a eql_v3.query_numeric_ord left operand +--! @param b public.eql_v3_numeric_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_numeric_ord, b public.eql_v3_numeric_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_numeric_ord and public.eql_v3_numeric_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord: public.eql_v3_numeric_ord_ope and eql_v3.query_numeric_ord (mismatched query domain). +--! @param a public.eql_v3_numeric_ord_ope left operand +--! @param b eql_v3.query_numeric_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_numeric_ord_ope, b eql_v3.query_numeric_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_numeric_ord_ope and eql_v3.query_numeric_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord: eql_v3.query_numeric_ord and public.eql_v3_numeric_ord_ope (mismatched query domain). +--! @param a eql_v3.query_numeric_ord left operand +--! @param b public.eql_v3_numeric_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_numeric_ord, b public.eql_v3_numeric_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_numeric_ord and public.eql_v3_numeric_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord: public.eql_v3_numeric_ord_ope and eql_v3.query_numeric_ord (mismatched query domain). +--! @param a public.eql_v3_numeric_ord_ope left operand +--! @param b eql_v3.query_numeric_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_numeric_ord_ope, b eql_v3.query_numeric_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_numeric_ord_ope and eql_v3.query_numeric_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord: eql_v3.query_numeric_ord and public.eql_v3_numeric_ord_ope (mismatched query domain). +--! @param a eql_v3.query_numeric_ord left operand +--! @param b public.eql_v3_numeric_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_numeric_ord, b public.eql_v3_numeric_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_numeric_ord and public.eql_v3_numeric_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord: public.eql_v3_numeric_ord_ope and eql_v3.query_numeric_ord (mismatched query domain). +--! @param a public.eql_v3_numeric_ord_ope left operand +--! @param b eql_v3.query_numeric_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_numeric_ord_ope, b eql_v3.query_numeric_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_numeric_ord_ope and eql_v3.query_numeric_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord: eql_v3.query_numeric_ord and public.eql_v3_numeric_ord_ope (mismatched query domain). +--! @param a eql_v3.query_numeric_ord left operand +--! @param b public.eql_v3_numeric_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_numeric_ord, b public.eql_v3_numeric_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_numeric_ord and public.eql_v3_numeric_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord: public.eql_v3_numeric_ord_ope and eql_v3.query_numeric_ord (mismatched query domain). +--! @param a public.eql_v3_numeric_ord_ope left operand +--! @param b eql_v3.query_numeric_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_numeric_ord_ope, b eql_v3.query_numeric_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_numeric_ord_ope and eql_v3.query_numeric_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord: eql_v3.query_numeric_ord and public.eql_v3_numeric_ord_ope (mismatched query domain). +--! @param a eql_v3.query_numeric_ord left operand +--! @param b public.eql_v3_numeric_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_numeric_ord, b public.eql_v3_numeric_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_numeric_ord and public.eql_v3_numeric_ord_ope'; END; $$ +LANGUAGE plpgsql; diff --git a/packages/eql/src/v3/scalars/numeric/query_numeric_ord_ope_functions.sql b/packages/eql/src/v3/scalars/numeric/query_numeric_ord_ope_functions.sql index 04beaa6067..0db788c688 100644 --- a/packages/eql/src/v3/scalars/numeric/query_numeric_ord_ope_functions.sql +++ b/packages/eql/src/v3/scalars/numeric/query_numeric_ord_ope_functions.sql @@ -109,3 +109,255 @@ AS $$ SELECT eql_v3.ord_term(a) OPERATOR(pg_catalog.>=) eql_v3.ord_term(b) $$; CREATE FUNCTION eql_v3.gte(a eql_v3.query_numeric_ord_ope, b public.eql_v3_numeric_ord_ope) RETURNS boolean LANGUAGE sql IMMUTABLE STRICT PARALLEL SAFE AS $$ SELECT eql_v3.ord_term(a) OPERATOR(pg_catalog.>=) eql_v3.ord_term(b) $$; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord_ope: public.eql_v3_numeric_eq and eql_v3.query_numeric_ord_ope (mismatched query domain). +--! @param a public.eql_v3_numeric_eq left operand +--! @param b eql_v3.query_numeric_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_numeric_eq, b eql_v3.query_numeric_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_numeric_eq and eql_v3.query_numeric_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord_ope: eql_v3.query_numeric_ord_ope and public.eql_v3_numeric_eq (mismatched query domain). +--! @param a eql_v3.query_numeric_ord_ope left operand +--! @param b public.eql_v3_numeric_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_numeric_ord_ope, b public.eql_v3_numeric_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_numeric_ord_ope and public.eql_v3_numeric_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord_ope: public.eql_v3_numeric_eq and eql_v3.query_numeric_ord_ope (mismatched query domain). +--! @param a public.eql_v3_numeric_eq left operand +--! @param b eql_v3.query_numeric_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_numeric_eq, b eql_v3.query_numeric_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_numeric_eq and eql_v3.query_numeric_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord_ope: eql_v3.query_numeric_ord_ope and public.eql_v3_numeric_eq (mismatched query domain). +--! @param a eql_v3.query_numeric_ord_ope left operand +--! @param b public.eql_v3_numeric_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_numeric_ord_ope, b public.eql_v3_numeric_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_numeric_ord_ope and public.eql_v3_numeric_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord_ope: public.eql_v3_numeric_ord_ore and eql_v3.query_numeric_ord_ope (mismatched query domain). +--! @param a public.eql_v3_numeric_ord_ore left operand +--! @param b eql_v3.query_numeric_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_numeric_ord_ore, b eql_v3.query_numeric_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_numeric_ord_ore and eql_v3.query_numeric_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord_ope: eql_v3.query_numeric_ord_ope and public.eql_v3_numeric_ord_ore (mismatched query domain). +--! @param a eql_v3.query_numeric_ord_ope left operand +--! @param b public.eql_v3_numeric_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_numeric_ord_ope, b public.eql_v3_numeric_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_numeric_ord_ope and public.eql_v3_numeric_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord_ope: public.eql_v3_numeric_ord_ore and eql_v3.query_numeric_ord_ope (mismatched query domain). +--! @param a public.eql_v3_numeric_ord_ore left operand +--! @param b eql_v3.query_numeric_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_numeric_ord_ore, b eql_v3.query_numeric_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_numeric_ord_ore and eql_v3.query_numeric_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord_ope: eql_v3.query_numeric_ord_ope and public.eql_v3_numeric_ord_ore (mismatched query domain). +--! @param a eql_v3.query_numeric_ord_ope left operand +--! @param b public.eql_v3_numeric_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_numeric_ord_ope, b public.eql_v3_numeric_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_numeric_ord_ope and public.eql_v3_numeric_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord_ope: public.eql_v3_numeric_ord_ore and eql_v3.query_numeric_ord_ope (mismatched query domain). +--! @param a public.eql_v3_numeric_ord_ore left operand +--! @param b eql_v3.query_numeric_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_numeric_ord_ore, b eql_v3.query_numeric_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_numeric_ord_ore and eql_v3.query_numeric_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord_ope: eql_v3.query_numeric_ord_ope and public.eql_v3_numeric_ord_ore (mismatched query domain). +--! @param a eql_v3.query_numeric_ord_ope left operand +--! @param b public.eql_v3_numeric_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_numeric_ord_ope, b public.eql_v3_numeric_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_numeric_ord_ope and public.eql_v3_numeric_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord_ope: public.eql_v3_numeric_ord_ore and eql_v3.query_numeric_ord_ope (mismatched query domain). +--! @param a public.eql_v3_numeric_ord_ore left operand +--! @param b eql_v3.query_numeric_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_numeric_ord_ore, b eql_v3.query_numeric_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_numeric_ord_ore and eql_v3.query_numeric_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord_ope: eql_v3.query_numeric_ord_ope and public.eql_v3_numeric_ord_ore (mismatched query domain). +--! @param a eql_v3.query_numeric_ord_ope left operand +--! @param b public.eql_v3_numeric_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_numeric_ord_ope, b public.eql_v3_numeric_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_numeric_ord_ope and public.eql_v3_numeric_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord_ope: public.eql_v3_numeric_ord_ore and eql_v3.query_numeric_ord_ope (mismatched query domain). +--! @param a public.eql_v3_numeric_ord_ore left operand +--! @param b eql_v3.query_numeric_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_numeric_ord_ore, b eql_v3.query_numeric_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_numeric_ord_ore and eql_v3.query_numeric_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord_ope: eql_v3.query_numeric_ord_ope and public.eql_v3_numeric_ord_ore (mismatched query domain). +--! @param a eql_v3.query_numeric_ord_ope left operand +--! @param b public.eql_v3_numeric_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_numeric_ord_ope, b public.eql_v3_numeric_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_numeric_ord_ope and public.eql_v3_numeric_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord_ope: public.eql_v3_numeric_ord_ore and eql_v3.query_numeric_ord_ope (mismatched query domain). +--! @param a public.eql_v3_numeric_ord_ore left operand +--! @param b eql_v3.query_numeric_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_numeric_ord_ore, b eql_v3.query_numeric_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_numeric_ord_ore and eql_v3.query_numeric_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord_ope: eql_v3.query_numeric_ord_ope and public.eql_v3_numeric_ord_ore (mismatched query domain). +--! @param a eql_v3.query_numeric_ord_ope left operand +--! @param b public.eql_v3_numeric_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_numeric_ord_ope, b public.eql_v3_numeric_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_numeric_ord_ope and public.eql_v3_numeric_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord_ope: public.eql_v3_numeric_ord and eql_v3.query_numeric_ord_ope (mismatched query domain). +--! @param a public.eql_v3_numeric_ord left operand +--! @param b eql_v3.query_numeric_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_numeric_ord, b eql_v3.query_numeric_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_numeric_ord and eql_v3.query_numeric_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord_ope: eql_v3.query_numeric_ord_ope and public.eql_v3_numeric_ord (mismatched query domain). +--! @param a eql_v3.query_numeric_ord_ope left operand +--! @param b public.eql_v3_numeric_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_numeric_ord_ope, b public.eql_v3_numeric_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_numeric_ord_ope and public.eql_v3_numeric_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord_ope: public.eql_v3_numeric_ord and eql_v3.query_numeric_ord_ope (mismatched query domain). +--! @param a public.eql_v3_numeric_ord left operand +--! @param b eql_v3.query_numeric_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_numeric_ord, b eql_v3.query_numeric_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_numeric_ord and eql_v3.query_numeric_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord_ope: eql_v3.query_numeric_ord_ope and public.eql_v3_numeric_ord (mismatched query domain). +--! @param a eql_v3.query_numeric_ord_ope left operand +--! @param b public.eql_v3_numeric_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_numeric_ord_ope, b public.eql_v3_numeric_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_numeric_ord_ope and public.eql_v3_numeric_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord_ope: public.eql_v3_numeric_ord and eql_v3.query_numeric_ord_ope (mismatched query domain). +--! @param a public.eql_v3_numeric_ord left operand +--! @param b eql_v3.query_numeric_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_numeric_ord, b eql_v3.query_numeric_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_numeric_ord and eql_v3.query_numeric_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord_ope: eql_v3.query_numeric_ord_ope and public.eql_v3_numeric_ord (mismatched query domain). +--! @param a eql_v3.query_numeric_ord_ope left operand +--! @param b public.eql_v3_numeric_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_numeric_ord_ope, b public.eql_v3_numeric_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_numeric_ord_ope and public.eql_v3_numeric_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord_ope: public.eql_v3_numeric_ord and eql_v3.query_numeric_ord_ope (mismatched query domain). +--! @param a public.eql_v3_numeric_ord left operand +--! @param b eql_v3.query_numeric_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_numeric_ord, b eql_v3.query_numeric_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_numeric_ord and eql_v3.query_numeric_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord_ope: eql_v3.query_numeric_ord_ope and public.eql_v3_numeric_ord (mismatched query domain). +--! @param a eql_v3.query_numeric_ord_ope left operand +--! @param b public.eql_v3_numeric_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_numeric_ord_ope, b public.eql_v3_numeric_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_numeric_ord_ope and public.eql_v3_numeric_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord_ope: public.eql_v3_numeric_ord and eql_v3.query_numeric_ord_ope (mismatched query domain). +--! @param a public.eql_v3_numeric_ord left operand +--! @param b eql_v3.query_numeric_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_numeric_ord, b eql_v3.query_numeric_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_numeric_ord and eql_v3.query_numeric_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord_ope: eql_v3.query_numeric_ord_ope and public.eql_v3_numeric_ord (mismatched query domain). +--! @param a eql_v3.query_numeric_ord_ope left operand +--! @param b public.eql_v3_numeric_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_numeric_ord_ope, b public.eql_v3_numeric_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_numeric_ord_ope and public.eql_v3_numeric_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord_ope: public.eql_v3_numeric_ord and eql_v3.query_numeric_ord_ope (mismatched query domain). +--! @param a public.eql_v3_numeric_ord left operand +--! @param b eql_v3.query_numeric_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_numeric_ord, b eql_v3.query_numeric_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_numeric_ord and eql_v3.query_numeric_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord_ope: eql_v3.query_numeric_ord_ope and public.eql_v3_numeric_ord (mismatched query domain). +--! @param a eql_v3.query_numeric_ord_ope left operand +--! @param b public.eql_v3_numeric_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_numeric_ord_ope, b public.eql_v3_numeric_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_numeric_ord_ope and public.eql_v3_numeric_ord'; END; $$ +LANGUAGE plpgsql; diff --git a/packages/eql/src/v3/scalars/numeric/query_numeric_ord_ope_operators.sql b/packages/eql/src/v3/scalars/numeric/query_numeric_ord_ope_operators.sql index fa3d91bd1e..0f97749812 100644 --- a/packages/eql/src/v3/scalars/numeric/query_numeric_ord_ope_operators.sql +++ b/packages/eql/src/v3/scalars/numeric/query_numeric_ord_ope_operators.sql @@ -77,3 +77,143 @@ CREATE OPERATOR >= ( LEFTARG = eql_v3.query_numeric_ord_ope, RIGHTARG = public.eql_v3_numeric_ord_ope, COMMUTATOR = <=, NEGATOR = <, RESTRICT = scalargesel, JOIN = scalargejoinsel ); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_numeric_eq, RIGHTARG = eql_v3.query_numeric_ord_ope +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_numeric_ord_ope, RIGHTARG = public.eql_v3_numeric_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_numeric_eq, RIGHTARG = eql_v3.query_numeric_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_numeric_ord_ope, RIGHTARG = public.eql_v3_numeric_eq +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_numeric_ord_ore, RIGHTARG = eql_v3.query_numeric_ord_ope +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_numeric_ord_ope, RIGHTARG = public.eql_v3_numeric_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_numeric_ord_ore, RIGHTARG = eql_v3.query_numeric_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_numeric_ord_ope, RIGHTARG = public.eql_v3_numeric_ord_ore +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_numeric_ord_ore, RIGHTARG = eql_v3.query_numeric_ord_ope +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_numeric_ord_ope, RIGHTARG = public.eql_v3_numeric_ord_ore +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_numeric_ord_ore, RIGHTARG = eql_v3.query_numeric_ord_ope +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_numeric_ord_ope, RIGHTARG = public.eql_v3_numeric_ord_ore +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_numeric_ord_ore, RIGHTARG = eql_v3.query_numeric_ord_ope +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_numeric_ord_ope, RIGHTARG = public.eql_v3_numeric_ord_ore +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_numeric_ord_ore, RIGHTARG = eql_v3.query_numeric_ord_ope +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_numeric_ord_ope, RIGHTARG = public.eql_v3_numeric_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_numeric_ord, RIGHTARG = eql_v3.query_numeric_ord_ope +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_numeric_ord_ope, RIGHTARG = public.eql_v3_numeric_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_numeric_ord, RIGHTARG = eql_v3.query_numeric_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_numeric_ord_ope, RIGHTARG = public.eql_v3_numeric_ord +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_numeric_ord, RIGHTARG = eql_v3.query_numeric_ord_ope +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_numeric_ord_ope, RIGHTARG = public.eql_v3_numeric_ord +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_numeric_ord, RIGHTARG = eql_v3.query_numeric_ord_ope +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_numeric_ord_ope, RIGHTARG = public.eql_v3_numeric_ord +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_numeric_ord, RIGHTARG = eql_v3.query_numeric_ord_ope +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_numeric_ord_ope, RIGHTARG = public.eql_v3_numeric_ord +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_numeric_ord, RIGHTARG = eql_v3.query_numeric_ord_ope +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_numeric_ord_ope, RIGHTARG = public.eql_v3_numeric_ord +); diff --git a/packages/eql/src/v3/scalars/numeric/query_numeric_ord_operators.sql b/packages/eql/src/v3/scalars/numeric/query_numeric_ord_operators.sql index e88a4aa28d..3af4cfb781 100644 --- a/packages/eql/src/v3/scalars/numeric/query_numeric_ord_operators.sql +++ b/packages/eql/src/v3/scalars/numeric/query_numeric_ord_operators.sql @@ -77,3 +77,143 @@ CREATE OPERATOR >= ( LEFTARG = eql_v3.query_numeric_ord, RIGHTARG = public.eql_v3_numeric_ord, COMMUTATOR = <=, NEGATOR = <, RESTRICT = scalargesel, JOIN = scalargejoinsel ); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_numeric_eq, RIGHTARG = eql_v3.query_numeric_ord +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_numeric_ord, RIGHTARG = public.eql_v3_numeric_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_numeric_eq, RIGHTARG = eql_v3.query_numeric_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_numeric_ord, RIGHTARG = public.eql_v3_numeric_eq +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_numeric_ord_ore, RIGHTARG = eql_v3.query_numeric_ord +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_numeric_ord, RIGHTARG = public.eql_v3_numeric_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_numeric_ord_ore, RIGHTARG = eql_v3.query_numeric_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_numeric_ord, RIGHTARG = public.eql_v3_numeric_ord_ore +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_numeric_ord_ore, RIGHTARG = eql_v3.query_numeric_ord +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_numeric_ord, RIGHTARG = public.eql_v3_numeric_ord_ore +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_numeric_ord_ore, RIGHTARG = eql_v3.query_numeric_ord +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_numeric_ord, RIGHTARG = public.eql_v3_numeric_ord_ore +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_numeric_ord_ore, RIGHTARG = eql_v3.query_numeric_ord +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_numeric_ord, RIGHTARG = public.eql_v3_numeric_ord_ore +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_numeric_ord_ore, RIGHTARG = eql_v3.query_numeric_ord +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_numeric_ord, RIGHTARG = public.eql_v3_numeric_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_numeric_ord_ope, RIGHTARG = eql_v3.query_numeric_ord +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_numeric_ord, RIGHTARG = public.eql_v3_numeric_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_numeric_ord_ope, RIGHTARG = eql_v3.query_numeric_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_numeric_ord, RIGHTARG = public.eql_v3_numeric_ord_ope +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_numeric_ord_ope, RIGHTARG = eql_v3.query_numeric_ord +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_numeric_ord, RIGHTARG = public.eql_v3_numeric_ord_ope +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_numeric_ord_ope, RIGHTARG = eql_v3.query_numeric_ord +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_numeric_ord, RIGHTARG = public.eql_v3_numeric_ord_ope +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_numeric_ord_ope, RIGHTARG = eql_v3.query_numeric_ord +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_numeric_ord, RIGHTARG = public.eql_v3_numeric_ord_ope +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_numeric_ord_ope, RIGHTARG = eql_v3.query_numeric_ord +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_numeric_ord, RIGHTARG = public.eql_v3_numeric_ord_ope +); diff --git a/packages/eql/src/v3/scalars/numeric/query_numeric_ord_ore_functions.sql b/packages/eql/src/v3/scalars/numeric/query_numeric_ord_ore_functions.sql index a959744461..275cf50707 100644 --- a/packages/eql/src/v3/scalars/numeric/query_numeric_ord_ore_functions.sql +++ b/packages/eql/src/v3/scalars/numeric/query_numeric_ord_ore_functions.sql @@ -109,3 +109,255 @@ AS $$ SELECT eql_v3.ord_term_ore(a) OPERATOR(public.>=) eql_v3.ord_term_ore(b) $ CREATE FUNCTION eql_v3.gte(a eql_v3.query_numeric_ord_ore, b public.eql_v3_numeric_ord_ore) RETURNS boolean LANGUAGE sql IMMUTABLE STRICT PARALLEL SAFE AS $$ SELECT eql_v3.ord_term_ore(a) OPERATOR(public.>=) eql_v3.ord_term_ore(b) $$; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord_ore: public.eql_v3_numeric_eq and eql_v3.query_numeric_ord_ore (mismatched query domain). +--! @param a public.eql_v3_numeric_eq left operand +--! @param b eql_v3.query_numeric_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_numeric_eq, b eql_v3.query_numeric_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_numeric_eq and eql_v3.query_numeric_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord_ore: eql_v3.query_numeric_ord_ore and public.eql_v3_numeric_eq (mismatched query domain). +--! @param a eql_v3.query_numeric_ord_ore left operand +--! @param b public.eql_v3_numeric_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_numeric_ord_ore, b public.eql_v3_numeric_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_numeric_ord_ore and public.eql_v3_numeric_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord_ore: public.eql_v3_numeric_eq and eql_v3.query_numeric_ord_ore (mismatched query domain). +--! @param a public.eql_v3_numeric_eq left operand +--! @param b eql_v3.query_numeric_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_numeric_eq, b eql_v3.query_numeric_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_numeric_eq and eql_v3.query_numeric_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord_ore: eql_v3.query_numeric_ord_ore and public.eql_v3_numeric_eq (mismatched query domain). +--! @param a eql_v3.query_numeric_ord_ore left operand +--! @param b public.eql_v3_numeric_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_numeric_ord_ore, b public.eql_v3_numeric_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_numeric_ord_ore and public.eql_v3_numeric_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord_ore: public.eql_v3_numeric_ord and eql_v3.query_numeric_ord_ore (mismatched query domain). +--! @param a public.eql_v3_numeric_ord left operand +--! @param b eql_v3.query_numeric_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_numeric_ord, b eql_v3.query_numeric_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_numeric_ord and eql_v3.query_numeric_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord_ore: eql_v3.query_numeric_ord_ore and public.eql_v3_numeric_ord (mismatched query domain). +--! @param a eql_v3.query_numeric_ord_ore left operand +--! @param b public.eql_v3_numeric_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_numeric_ord_ore, b public.eql_v3_numeric_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_numeric_ord_ore and public.eql_v3_numeric_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord_ore: public.eql_v3_numeric_ord and eql_v3.query_numeric_ord_ore (mismatched query domain). +--! @param a public.eql_v3_numeric_ord left operand +--! @param b eql_v3.query_numeric_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_numeric_ord, b eql_v3.query_numeric_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_numeric_ord and eql_v3.query_numeric_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord_ore: eql_v3.query_numeric_ord_ore and public.eql_v3_numeric_ord (mismatched query domain). +--! @param a eql_v3.query_numeric_ord_ore left operand +--! @param b public.eql_v3_numeric_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_numeric_ord_ore, b public.eql_v3_numeric_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_numeric_ord_ore and public.eql_v3_numeric_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord_ore: public.eql_v3_numeric_ord and eql_v3.query_numeric_ord_ore (mismatched query domain). +--! @param a public.eql_v3_numeric_ord left operand +--! @param b eql_v3.query_numeric_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_numeric_ord, b eql_v3.query_numeric_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_numeric_ord and eql_v3.query_numeric_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord_ore: eql_v3.query_numeric_ord_ore and public.eql_v3_numeric_ord (mismatched query domain). +--! @param a eql_v3.query_numeric_ord_ore left operand +--! @param b public.eql_v3_numeric_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_numeric_ord_ore, b public.eql_v3_numeric_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_numeric_ord_ore and public.eql_v3_numeric_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord_ore: public.eql_v3_numeric_ord and eql_v3.query_numeric_ord_ore (mismatched query domain). +--! @param a public.eql_v3_numeric_ord left operand +--! @param b eql_v3.query_numeric_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_numeric_ord, b eql_v3.query_numeric_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_numeric_ord and eql_v3.query_numeric_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord_ore: eql_v3.query_numeric_ord_ore and public.eql_v3_numeric_ord (mismatched query domain). +--! @param a eql_v3.query_numeric_ord_ore left operand +--! @param b public.eql_v3_numeric_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_numeric_ord_ore, b public.eql_v3_numeric_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_numeric_ord_ore and public.eql_v3_numeric_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord_ore: public.eql_v3_numeric_ord and eql_v3.query_numeric_ord_ore (mismatched query domain). +--! @param a public.eql_v3_numeric_ord left operand +--! @param b eql_v3.query_numeric_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_numeric_ord, b eql_v3.query_numeric_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_numeric_ord and eql_v3.query_numeric_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord_ore: eql_v3.query_numeric_ord_ore and public.eql_v3_numeric_ord (mismatched query domain). +--! @param a eql_v3.query_numeric_ord_ore left operand +--! @param b public.eql_v3_numeric_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_numeric_ord_ore, b public.eql_v3_numeric_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_numeric_ord_ore and public.eql_v3_numeric_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord_ore: public.eql_v3_numeric_ord and eql_v3.query_numeric_ord_ore (mismatched query domain). +--! @param a public.eql_v3_numeric_ord left operand +--! @param b eql_v3.query_numeric_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_numeric_ord, b eql_v3.query_numeric_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_numeric_ord and eql_v3.query_numeric_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord_ore: eql_v3.query_numeric_ord_ore and public.eql_v3_numeric_ord (mismatched query domain). +--! @param a eql_v3.query_numeric_ord_ore left operand +--! @param b public.eql_v3_numeric_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_numeric_ord_ore, b public.eql_v3_numeric_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_numeric_ord_ore and public.eql_v3_numeric_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord_ore: public.eql_v3_numeric_ord_ope and eql_v3.query_numeric_ord_ore (mismatched query domain). +--! @param a public.eql_v3_numeric_ord_ope left operand +--! @param b eql_v3.query_numeric_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_numeric_ord_ope, b eql_v3.query_numeric_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_numeric_ord_ope and eql_v3.query_numeric_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord_ore: eql_v3.query_numeric_ord_ore and public.eql_v3_numeric_ord_ope (mismatched query domain). +--! @param a eql_v3.query_numeric_ord_ore left operand +--! @param b public.eql_v3_numeric_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_numeric_ord_ore, b public.eql_v3_numeric_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_numeric_ord_ore and public.eql_v3_numeric_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord_ore: public.eql_v3_numeric_ord_ope and eql_v3.query_numeric_ord_ore (mismatched query domain). +--! @param a public.eql_v3_numeric_ord_ope left operand +--! @param b eql_v3.query_numeric_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_numeric_ord_ope, b eql_v3.query_numeric_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_numeric_ord_ope and eql_v3.query_numeric_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord_ore: eql_v3.query_numeric_ord_ore and public.eql_v3_numeric_ord_ope (mismatched query domain). +--! @param a eql_v3.query_numeric_ord_ore left operand +--! @param b public.eql_v3_numeric_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_numeric_ord_ore, b public.eql_v3_numeric_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_numeric_ord_ore and public.eql_v3_numeric_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord_ore: public.eql_v3_numeric_ord_ope and eql_v3.query_numeric_ord_ore (mismatched query domain). +--! @param a public.eql_v3_numeric_ord_ope left operand +--! @param b eql_v3.query_numeric_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_numeric_ord_ope, b eql_v3.query_numeric_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_numeric_ord_ope and eql_v3.query_numeric_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord_ore: eql_v3.query_numeric_ord_ore and public.eql_v3_numeric_ord_ope (mismatched query domain). +--! @param a eql_v3.query_numeric_ord_ore left operand +--! @param b public.eql_v3_numeric_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_numeric_ord_ore, b public.eql_v3_numeric_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_numeric_ord_ore and public.eql_v3_numeric_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord_ore: public.eql_v3_numeric_ord_ope and eql_v3.query_numeric_ord_ore (mismatched query domain). +--! @param a public.eql_v3_numeric_ord_ope left operand +--! @param b eql_v3.query_numeric_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_numeric_ord_ope, b eql_v3.query_numeric_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_numeric_ord_ope and eql_v3.query_numeric_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord_ore: eql_v3.query_numeric_ord_ore and public.eql_v3_numeric_ord_ope (mismatched query domain). +--! @param a eql_v3.query_numeric_ord_ore left operand +--! @param b public.eql_v3_numeric_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_numeric_ord_ore, b public.eql_v3_numeric_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_numeric_ord_ore and public.eql_v3_numeric_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord_ore: public.eql_v3_numeric_ord_ope and eql_v3.query_numeric_ord_ore (mismatched query domain). +--! @param a public.eql_v3_numeric_ord_ope left operand +--! @param b eql_v3.query_numeric_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_numeric_ord_ope, b eql_v3.query_numeric_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_numeric_ord_ope and eql_v3.query_numeric_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord_ore: eql_v3.query_numeric_ord_ore and public.eql_v3_numeric_ord_ope (mismatched query domain). +--! @param a eql_v3.query_numeric_ord_ore left operand +--! @param b public.eql_v3_numeric_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_numeric_ord_ore, b public.eql_v3_numeric_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_numeric_ord_ore and public.eql_v3_numeric_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord_ore: public.eql_v3_numeric_ord_ope and eql_v3.query_numeric_ord_ore (mismatched query domain). +--! @param a public.eql_v3_numeric_ord_ope left operand +--! @param b eql_v3.query_numeric_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_numeric_ord_ope, b eql_v3.query_numeric_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_numeric_ord_ope and eql_v3.query_numeric_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_numeric_ord_ore: eql_v3.query_numeric_ord_ore and public.eql_v3_numeric_ord_ope (mismatched query domain). +--! @param a eql_v3.query_numeric_ord_ore left operand +--! @param b public.eql_v3_numeric_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_numeric_ord_ore, b public.eql_v3_numeric_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_numeric_ord_ore and public.eql_v3_numeric_ord_ope'; END; $$ +LANGUAGE plpgsql; diff --git a/packages/eql/src/v3/scalars/numeric/query_numeric_ord_ore_operators.sql b/packages/eql/src/v3/scalars/numeric/query_numeric_ord_ore_operators.sql index 0147b73511..fb2f03a1e1 100644 --- a/packages/eql/src/v3/scalars/numeric/query_numeric_ord_ore_operators.sql +++ b/packages/eql/src/v3/scalars/numeric/query_numeric_ord_ore_operators.sql @@ -77,3 +77,143 @@ CREATE OPERATOR >= ( LEFTARG = eql_v3.query_numeric_ord_ore, RIGHTARG = public.eql_v3_numeric_ord_ore, COMMUTATOR = <=, NEGATOR = <, RESTRICT = scalargesel, JOIN = scalargejoinsel ); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_numeric_eq, RIGHTARG = eql_v3.query_numeric_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_numeric_ord_ore, RIGHTARG = public.eql_v3_numeric_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_numeric_eq, RIGHTARG = eql_v3.query_numeric_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_numeric_ord_ore, RIGHTARG = public.eql_v3_numeric_eq +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_numeric_ord, RIGHTARG = eql_v3.query_numeric_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_numeric_ord_ore, RIGHTARG = public.eql_v3_numeric_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_numeric_ord, RIGHTARG = eql_v3.query_numeric_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_numeric_ord_ore, RIGHTARG = public.eql_v3_numeric_ord +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_numeric_ord, RIGHTARG = eql_v3.query_numeric_ord_ore +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_numeric_ord_ore, RIGHTARG = public.eql_v3_numeric_ord +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_numeric_ord, RIGHTARG = eql_v3.query_numeric_ord_ore +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_numeric_ord_ore, RIGHTARG = public.eql_v3_numeric_ord +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_numeric_ord, RIGHTARG = eql_v3.query_numeric_ord_ore +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_numeric_ord_ore, RIGHTARG = public.eql_v3_numeric_ord +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_numeric_ord, RIGHTARG = eql_v3.query_numeric_ord_ore +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_numeric_ord_ore, RIGHTARG = public.eql_v3_numeric_ord +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_numeric_ord_ope, RIGHTARG = eql_v3.query_numeric_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_numeric_ord_ore, RIGHTARG = public.eql_v3_numeric_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_numeric_ord_ope, RIGHTARG = eql_v3.query_numeric_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_numeric_ord_ore, RIGHTARG = public.eql_v3_numeric_ord_ope +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_numeric_ord_ope, RIGHTARG = eql_v3.query_numeric_ord_ore +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_numeric_ord_ore, RIGHTARG = public.eql_v3_numeric_ord_ope +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_numeric_ord_ope, RIGHTARG = eql_v3.query_numeric_ord_ore +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_numeric_ord_ore, RIGHTARG = public.eql_v3_numeric_ord_ope +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_numeric_ord_ope, RIGHTARG = eql_v3.query_numeric_ord_ore +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_numeric_ord_ore, RIGHTARG = public.eql_v3_numeric_ord_ope +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_numeric_ord_ope, RIGHTARG = eql_v3.query_numeric_ord_ore +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_numeric_ord_ore, RIGHTARG = public.eql_v3_numeric_ord_ope +); diff --git a/packages/eql/src/v3/scalars/real/query_real_eq_functions.sql b/packages/eql/src/v3/scalars/real/query_real_eq_functions.sql index c407a7c224..1258fee4e6 100644 --- a/packages/eql/src/v3/scalars/real/query_real_eq_functions.sql +++ b/packages/eql/src/v3/scalars/real/query_real_eq_functions.sql @@ -45,3 +45,111 @@ AS $$ SELECT eql_v3.eq_term(a) OPERATOR(pg_catalog.<>) eql_v3.eq_term(b) $$; CREATE FUNCTION eql_v3.neq(a eql_v3.query_real_eq, b public.eql_v3_real_eq) RETURNS boolean LANGUAGE sql IMMUTABLE STRICT PARALLEL SAFE AS $$ SELECT eql_v3.eq_term(a) OPERATOR(pg_catalog.<>) eql_v3.eq_term(b) $$; + +--! @brief Unsupported operator blocker for eql_v3.query_real_eq: public.eql_v3_real_ord_ore and eql_v3.query_real_eq (mismatched query domain). +--! @param a public.eql_v3_real_ord_ore left operand +--! @param b eql_v3.query_real_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_real_ord_ore, b eql_v3.query_real_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_real_ord_ore and eql_v3.query_real_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_eq: eql_v3.query_real_eq and public.eql_v3_real_ord_ore (mismatched query domain). +--! @param a eql_v3.query_real_eq left operand +--! @param b public.eql_v3_real_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_real_eq, b public.eql_v3_real_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_real_eq and public.eql_v3_real_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_eq: public.eql_v3_real_ord_ore and eql_v3.query_real_eq (mismatched query domain). +--! @param a public.eql_v3_real_ord_ore left operand +--! @param b eql_v3.query_real_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_real_ord_ore, b eql_v3.query_real_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_real_ord_ore and eql_v3.query_real_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_eq: eql_v3.query_real_eq and public.eql_v3_real_ord_ore (mismatched query domain). +--! @param a eql_v3.query_real_eq left operand +--! @param b public.eql_v3_real_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_real_eq, b public.eql_v3_real_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_real_eq and public.eql_v3_real_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_eq: public.eql_v3_real_ord and eql_v3.query_real_eq (mismatched query domain). +--! @param a public.eql_v3_real_ord left operand +--! @param b eql_v3.query_real_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_real_ord, b eql_v3.query_real_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_real_ord and eql_v3.query_real_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_eq: eql_v3.query_real_eq and public.eql_v3_real_ord (mismatched query domain). +--! @param a eql_v3.query_real_eq left operand +--! @param b public.eql_v3_real_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_real_eq, b public.eql_v3_real_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_real_eq and public.eql_v3_real_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_eq: public.eql_v3_real_ord and eql_v3.query_real_eq (mismatched query domain). +--! @param a public.eql_v3_real_ord left operand +--! @param b eql_v3.query_real_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_real_ord, b eql_v3.query_real_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_real_ord and eql_v3.query_real_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_eq: eql_v3.query_real_eq and public.eql_v3_real_ord (mismatched query domain). +--! @param a eql_v3.query_real_eq left operand +--! @param b public.eql_v3_real_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_real_eq, b public.eql_v3_real_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_real_eq and public.eql_v3_real_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_eq: public.eql_v3_real_ord_ope and eql_v3.query_real_eq (mismatched query domain). +--! @param a public.eql_v3_real_ord_ope left operand +--! @param b eql_v3.query_real_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_real_ord_ope, b eql_v3.query_real_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_real_ord_ope and eql_v3.query_real_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_eq: eql_v3.query_real_eq and public.eql_v3_real_ord_ope (mismatched query domain). +--! @param a eql_v3.query_real_eq left operand +--! @param b public.eql_v3_real_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_real_eq, b public.eql_v3_real_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_real_eq and public.eql_v3_real_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_eq: public.eql_v3_real_ord_ope and eql_v3.query_real_eq (mismatched query domain). +--! @param a public.eql_v3_real_ord_ope left operand +--! @param b eql_v3.query_real_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_real_ord_ope, b eql_v3.query_real_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_real_ord_ope and eql_v3.query_real_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_eq: eql_v3.query_real_eq and public.eql_v3_real_ord_ope (mismatched query domain). +--! @param a eql_v3.query_real_eq left operand +--! @param b public.eql_v3_real_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_real_eq, b public.eql_v3_real_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_real_eq and public.eql_v3_real_ord_ope'; END; $$ +LANGUAGE plpgsql; diff --git a/packages/eql/src/v3/scalars/real/query_real_eq_operators.sql b/packages/eql/src/v3/scalars/real/query_real_eq_operators.sql index 00ba0dfe6d..a64d377f7f 100644 --- a/packages/eql/src/v3/scalars/real/query_real_eq_operators.sql +++ b/packages/eql/src/v3/scalars/real/query_real_eq_operators.sql @@ -29,3 +29,63 @@ CREATE OPERATOR <> ( LEFTARG = eql_v3.query_real_eq, RIGHTARG = public.eql_v3_real_eq, COMMUTATOR = <>, NEGATOR = =, RESTRICT = neqsel, JOIN = neqjoinsel ); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_real_ord_ore, RIGHTARG = eql_v3.query_real_eq +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_real_eq, RIGHTARG = public.eql_v3_real_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_real_ord_ore, RIGHTARG = eql_v3.query_real_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_real_eq, RIGHTARG = public.eql_v3_real_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_real_ord, RIGHTARG = eql_v3.query_real_eq +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_real_eq, RIGHTARG = public.eql_v3_real_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_real_ord, RIGHTARG = eql_v3.query_real_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_real_eq, RIGHTARG = public.eql_v3_real_ord +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_real_ord_ope, RIGHTARG = eql_v3.query_real_eq +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_real_eq, RIGHTARG = public.eql_v3_real_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_real_ord_ope, RIGHTARG = eql_v3.query_real_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_real_eq, RIGHTARG = public.eql_v3_real_ord_ope +); diff --git a/packages/eql/src/v3/scalars/real/query_real_ord_functions.sql b/packages/eql/src/v3/scalars/real/query_real_ord_functions.sql index 4964012d36..a40e24c0ae 100644 --- a/packages/eql/src/v3/scalars/real/query_real_ord_functions.sql +++ b/packages/eql/src/v3/scalars/real/query_real_ord_functions.sql @@ -109,3 +109,255 @@ AS $$ SELECT eql_v3.ord_term(a) OPERATOR(pg_catalog.>=) eql_v3.ord_term(b) $$; CREATE FUNCTION eql_v3.gte(a eql_v3.query_real_ord, b public.eql_v3_real_ord) RETURNS boolean LANGUAGE sql IMMUTABLE STRICT PARALLEL SAFE AS $$ SELECT eql_v3.ord_term(a) OPERATOR(pg_catalog.>=) eql_v3.ord_term(b) $$; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord: public.eql_v3_real_eq and eql_v3.query_real_ord (mismatched query domain). +--! @param a public.eql_v3_real_eq left operand +--! @param b eql_v3.query_real_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_real_eq, b eql_v3.query_real_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_real_eq and eql_v3.query_real_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord: eql_v3.query_real_ord and public.eql_v3_real_eq (mismatched query domain). +--! @param a eql_v3.query_real_ord left operand +--! @param b public.eql_v3_real_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_real_ord, b public.eql_v3_real_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_real_ord and public.eql_v3_real_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord: public.eql_v3_real_eq and eql_v3.query_real_ord (mismatched query domain). +--! @param a public.eql_v3_real_eq left operand +--! @param b eql_v3.query_real_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_real_eq, b eql_v3.query_real_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_real_eq and eql_v3.query_real_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord: eql_v3.query_real_ord and public.eql_v3_real_eq (mismatched query domain). +--! @param a eql_v3.query_real_ord left operand +--! @param b public.eql_v3_real_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_real_ord, b public.eql_v3_real_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_real_ord and public.eql_v3_real_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord: public.eql_v3_real_ord_ore and eql_v3.query_real_ord (mismatched query domain). +--! @param a public.eql_v3_real_ord_ore left operand +--! @param b eql_v3.query_real_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_real_ord_ore, b eql_v3.query_real_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_real_ord_ore and eql_v3.query_real_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord: eql_v3.query_real_ord and public.eql_v3_real_ord_ore (mismatched query domain). +--! @param a eql_v3.query_real_ord left operand +--! @param b public.eql_v3_real_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_real_ord, b public.eql_v3_real_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_real_ord and public.eql_v3_real_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord: public.eql_v3_real_ord_ore and eql_v3.query_real_ord (mismatched query domain). +--! @param a public.eql_v3_real_ord_ore left operand +--! @param b eql_v3.query_real_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_real_ord_ore, b eql_v3.query_real_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_real_ord_ore and eql_v3.query_real_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord: eql_v3.query_real_ord and public.eql_v3_real_ord_ore (mismatched query domain). +--! @param a eql_v3.query_real_ord left operand +--! @param b public.eql_v3_real_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_real_ord, b public.eql_v3_real_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_real_ord and public.eql_v3_real_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord: public.eql_v3_real_ord_ore and eql_v3.query_real_ord (mismatched query domain). +--! @param a public.eql_v3_real_ord_ore left operand +--! @param b eql_v3.query_real_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_real_ord_ore, b eql_v3.query_real_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_real_ord_ore and eql_v3.query_real_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord: eql_v3.query_real_ord and public.eql_v3_real_ord_ore (mismatched query domain). +--! @param a eql_v3.query_real_ord left operand +--! @param b public.eql_v3_real_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_real_ord, b public.eql_v3_real_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_real_ord and public.eql_v3_real_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord: public.eql_v3_real_ord_ore and eql_v3.query_real_ord (mismatched query domain). +--! @param a public.eql_v3_real_ord_ore left operand +--! @param b eql_v3.query_real_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_real_ord_ore, b eql_v3.query_real_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_real_ord_ore and eql_v3.query_real_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord: eql_v3.query_real_ord and public.eql_v3_real_ord_ore (mismatched query domain). +--! @param a eql_v3.query_real_ord left operand +--! @param b public.eql_v3_real_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_real_ord, b public.eql_v3_real_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_real_ord and public.eql_v3_real_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord: public.eql_v3_real_ord_ore and eql_v3.query_real_ord (mismatched query domain). +--! @param a public.eql_v3_real_ord_ore left operand +--! @param b eql_v3.query_real_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_real_ord_ore, b eql_v3.query_real_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_real_ord_ore and eql_v3.query_real_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord: eql_v3.query_real_ord and public.eql_v3_real_ord_ore (mismatched query domain). +--! @param a eql_v3.query_real_ord left operand +--! @param b public.eql_v3_real_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_real_ord, b public.eql_v3_real_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_real_ord and public.eql_v3_real_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord: public.eql_v3_real_ord_ore and eql_v3.query_real_ord (mismatched query domain). +--! @param a public.eql_v3_real_ord_ore left operand +--! @param b eql_v3.query_real_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_real_ord_ore, b eql_v3.query_real_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_real_ord_ore and eql_v3.query_real_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord: eql_v3.query_real_ord and public.eql_v3_real_ord_ore (mismatched query domain). +--! @param a eql_v3.query_real_ord left operand +--! @param b public.eql_v3_real_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_real_ord, b public.eql_v3_real_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_real_ord and public.eql_v3_real_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord: public.eql_v3_real_ord_ope and eql_v3.query_real_ord (mismatched query domain). +--! @param a public.eql_v3_real_ord_ope left operand +--! @param b eql_v3.query_real_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_real_ord_ope, b eql_v3.query_real_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_real_ord_ope and eql_v3.query_real_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord: eql_v3.query_real_ord and public.eql_v3_real_ord_ope (mismatched query domain). +--! @param a eql_v3.query_real_ord left operand +--! @param b public.eql_v3_real_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_real_ord, b public.eql_v3_real_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_real_ord and public.eql_v3_real_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord: public.eql_v3_real_ord_ope and eql_v3.query_real_ord (mismatched query domain). +--! @param a public.eql_v3_real_ord_ope left operand +--! @param b eql_v3.query_real_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_real_ord_ope, b eql_v3.query_real_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_real_ord_ope and eql_v3.query_real_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord: eql_v3.query_real_ord and public.eql_v3_real_ord_ope (mismatched query domain). +--! @param a eql_v3.query_real_ord left operand +--! @param b public.eql_v3_real_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_real_ord, b public.eql_v3_real_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_real_ord and public.eql_v3_real_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord: public.eql_v3_real_ord_ope and eql_v3.query_real_ord (mismatched query domain). +--! @param a public.eql_v3_real_ord_ope left operand +--! @param b eql_v3.query_real_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_real_ord_ope, b eql_v3.query_real_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_real_ord_ope and eql_v3.query_real_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord: eql_v3.query_real_ord and public.eql_v3_real_ord_ope (mismatched query domain). +--! @param a eql_v3.query_real_ord left operand +--! @param b public.eql_v3_real_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_real_ord, b public.eql_v3_real_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_real_ord and public.eql_v3_real_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord: public.eql_v3_real_ord_ope and eql_v3.query_real_ord (mismatched query domain). +--! @param a public.eql_v3_real_ord_ope left operand +--! @param b eql_v3.query_real_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_real_ord_ope, b eql_v3.query_real_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_real_ord_ope and eql_v3.query_real_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord: eql_v3.query_real_ord and public.eql_v3_real_ord_ope (mismatched query domain). +--! @param a eql_v3.query_real_ord left operand +--! @param b public.eql_v3_real_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_real_ord, b public.eql_v3_real_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_real_ord and public.eql_v3_real_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord: public.eql_v3_real_ord_ope and eql_v3.query_real_ord (mismatched query domain). +--! @param a public.eql_v3_real_ord_ope left operand +--! @param b eql_v3.query_real_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_real_ord_ope, b eql_v3.query_real_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_real_ord_ope and eql_v3.query_real_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord: eql_v3.query_real_ord and public.eql_v3_real_ord_ope (mismatched query domain). +--! @param a eql_v3.query_real_ord left operand +--! @param b public.eql_v3_real_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_real_ord, b public.eql_v3_real_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_real_ord and public.eql_v3_real_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord: public.eql_v3_real_ord_ope and eql_v3.query_real_ord (mismatched query domain). +--! @param a public.eql_v3_real_ord_ope left operand +--! @param b eql_v3.query_real_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_real_ord_ope, b eql_v3.query_real_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_real_ord_ope and eql_v3.query_real_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord: eql_v3.query_real_ord and public.eql_v3_real_ord_ope (mismatched query domain). +--! @param a eql_v3.query_real_ord left operand +--! @param b public.eql_v3_real_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_real_ord, b public.eql_v3_real_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_real_ord and public.eql_v3_real_ord_ope'; END; $$ +LANGUAGE plpgsql; diff --git a/packages/eql/src/v3/scalars/real/query_real_ord_ope_functions.sql b/packages/eql/src/v3/scalars/real/query_real_ord_ope_functions.sql index 1d021b6135..76c5aae541 100644 --- a/packages/eql/src/v3/scalars/real/query_real_ord_ope_functions.sql +++ b/packages/eql/src/v3/scalars/real/query_real_ord_ope_functions.sql @@ -109,3 +109,255 @@ AS $$ SELECT eql_v3.ord_term(a) OPERATOR(pg_catalog.>=) eql_v3.ord_term(b) $$; CREATE FUNCTION eql_v3.gte(a eql_v3.query_real_ord_ope, b public.eql_v3_real_ord_ope) RETURNS boolean LANGUAGE sql IMMUTABLE STRICT PARALLEL SAFE AS $$ SELECT eql_v3.ord_term(a) OPERATOR(pg_catalog.>=) eql_v3.ord_term(b) $$; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord_ope: public.eql_v3_real_eq and eql_v3.query_real_ord_ope (mismatched query domain). +--! @param a public.eql_v3_real_eq left operand +--! @param b eql_v3.query_real_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_real_eq, b eql_v3.query_real_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_real_eq and eql_v3.query_real_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord_ope: eql_v3.query_real_ord_ope and public.eql_v3_real_eq (mismatched query domain). +--! @param a eql_v3.query_real_ord_ope left operand +--! @param b public.eql_v3_real_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_real_ord_ope, b public.eql_v3_real_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_real_ord_ope and public.eql_v3_real_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord_ope: public.eql_v3_real_eq and eql_v3.query_real_ord_ope (mismatched query domain). +--! @param a public.eql_v3_real_eq left operand +--! @param b eql_v3.query_real_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_real_eq, b eql_v3.query_real_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_real_eq and eql_v3.query_real_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord_ope: eql_v3.query_real_ord_ope and public.eql_v3_real_eq (mismatched query domain). +--! @param a eql_v3.query_real_ord_ope left operand +--! @param b public.eql_v3_real_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_real_ord_ope, b public.eql_v3_real_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_real_ord_ope and public.eql_v3_real_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord_ope: public.eql_v3_real_ord_ore and eql_v3.query_real_ord_ope (mismatched query domain). +--! @param a public.eql_v3_real_ord_ore left operand +--! @param b eql_v3.query_real_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_real_ord_ore, b eql_v3.query_real_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_real_ord_ore and eql_v3.query_real_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord_ope: eql_v3.query_real_ord_ope and public.eql_v3_real_ord_ore (mismatched query domain). +--! @param a eql_v3.query_real_ord_ope left operand +--! @param b public.eql_v3_real_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_real_ord_ope, b public.eql_v3_real_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_real_ord_ope and public.eql_v3_real_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord_ope: public.eql_v3_real_ord_ore and eql_v3.query_real_ord_ope (mismatched query domain). +--! @param a public.eql_v3_real_ord_ore left operand +--! @param b eql_v3.query_real_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_real_ord_ore, b eql_v3.query_real_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_real_ord_ore and eql_v3.query_real_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord_ope: eql_v3.query_real_ord_ope and public.eql_v3_real_ord_ore (mismatched query domain). +--! @param a eql_v3.query_real_ord_ope left operand +--! @param b public.eql_v3_real_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_real_ord_ope, b public.eql_v3_real_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_real_ord_ope and public.eql_v3_real_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord_ope: public.eql_v3_real_ord_ore and eql_v3.query_real_ord_ope (mismatched query domain). +--! @param a public.eql_v3_real_ord_ore left operand +--! @param b eql_v3.query_real_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_real_ord_ore, b eql_v3.query_real_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_real_ord_ore and eql_v3.query_real_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord_ope: eql_v3.query_real_ord_ope and public.eql_v3_real_ord_ore (mismatched query domain). +--! @param a eql_v3.query_real_ord_ope left operand +--! @param b public.eql_v3_real_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_real_ord_ope, b public.eql_v3_real_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_real_ord_ope and public.eql_v3_real_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord_ope: public.eql_v3_real_ord_ore and eql_v3.query_real_ord_ope (mismatched query domain). +--! @param a public.eql_v3_real_ord_ore left operand +--! @param b eql_v3.query_real_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_real_ord_ore, b eql_v3.query_real_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_real_ord_ore and eql_v3.query_real_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord_ope: eql_v3.query_real_ord_ope and public.eql_v3_real_ord_ore (mismatched query domain). +--! @param a eql_v3.query_real_ord_ope left operand +--! @param b public.eql_v3_real_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_real_ord_ope, b public.eql_v3_real_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_real_ord_ope and public.eql_v3_real_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord_ope: public.eql_v3_real_ord_ore and eql_v3.query_real_ord_ope (mismatched query domain). +--! @param a public.eql_v3_real_ord_ore left operand +--! @param b eql_v3.query_real_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_real_ord_ore, b eql_v3.query_real_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_real_ord_ore and eql_v3.query_real_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord_ope: eql_v3.query_real_ord_ope and public.eql_v3_real_ord_ore (mismatched query domain). +--! @param a eql_v3.query_real_ord_ope left operand +--! @param b public.eql_v3_real_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_real_ord_ope, b public.eql_v3_real_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_real_ord_ope and public.eql_v3_real_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord_ope: public.eql_v3_real_ord_ore and eql_v3.query_real_ord_ope (mismatched query domain). +--! @param a public.eql_v3_real_ord_ore left operand +--! @param b eql_v3.query_real_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_real_ord_ore, b eql_v3.query_real_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_real_ord_ore and eql_v3.query_real_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord_ope: eql_v3.query_real_ord_ope and public.eql_v3_real_ord_ore (mismatched query domain). +--! @param a eql_v3.query_real_ord_ope left operand +--! @param b public.eql_v3_real_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_real_ord_ope, b public.eql_v3_real_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_real_ord_ope and public.eql_v3_real_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord_ope: public.eql_v3_real_ord and eql_v3.query_real_ord_ope (mismatched query domain). +--! @param a public.eql_v3_real_ord left operand +--! @param b eql_v3.query_real_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_real_ord, b eql_v3.query_real_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_real_ord and eql_v3.query_real_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord_ope: eql_v3.query_real_ord_ope and public.eql_v3_real_ord (mismatched query domain). +--! @param a eql_v3.query_real_ord_ope left operand +--! @param b public.eql_v3_real_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_real_ord_ope, b public.eql_v3_real_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_real_ord_ope and public.eql_v3_real_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord_ope: public.eql_v3_real_ord and eql_v3.query_real_ord_ope (mismatched query domain). +--! @param a public.eql_v3_real_ord left operand +--! @param b eql_v3.query_real_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_real_ord, b eql_v3.query_real_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_real_ord and eql_v3.query_real_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord_ope: eql_v3.query_real_ord_ope and public.eql_v3_real_ord (mismatched query domain). +--! @param a eql_v3.query_real_ord_ope left operand +--! @param b public.eql_v3_real_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_real_ord_ope, b public.eql_v3_real_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_real_ord_ope and public.eql_v3_real_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord_ope: public.eql_v3_real_ord and eql_v3.query_real_ord_ope (mismatched query domain). +--! @param a public.eql_v3_real_ord left operand +--! @param b eql_v3.query_real_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_real_ord, b eql_v3.query_real_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_real_ord and eql_v3.query_real_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord_ope: eql_v3.query_real_ord_ope and public.eql_v3_real_ord (mismatched query domain). +--! @param a eql_v3.query_real_ord_ope left operand +--! @param b public.eql_v3_real_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_real_ord_ope, b public.eql_v3_real_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_real_ord_ope and public.eql_v3_real_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord_ope: public.eql_v3_real_ord and eql_v3.query_real_ord_ope (mismatched query domain). +--! @param a public.eql_v3_real_ord left operand +--! @param b eql_v3.query_real_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_real_ord, b eql_v3.query_real_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_real_ord and eql_v3.query_real_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord_ope: eql_v3.query_real_ord_ope and public.eql_v3_real_ord (mismatched query domain). +--! @param a eql_v3.query_real_ord_ope left operand +--! @param b public.eql_v3_real_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_real_ord_ope, b public.eql_v3_real_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_real_ord_ope and public.eql_v3_real_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord_ope: public.eql_v3_real_ord and eql_v3.query_real_ord_ope (mismatched query domain). +--! @param a public.eql_v3_real_ord left operand +--! @param b eql_v3.query_real_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_real_ord, b eql_v3.query_real_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_real_ord and eql_v3.query_real_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord_ope: eql_v3.query_real_ord_ope and public.eql_v3_real_ord (mismatched query domain). +--! @param a eql_v3.query_real_ord_ope left operand +--! @param b public.eql_v3_real_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_real_ord_ope, b public.eql_v3_real_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_real_ord_ope and public.eql_v3_real_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord_ope: public.eql_v3_real_ord and eql_v3.query_real_ord_ope (mismatched query domain). +--! @param a public.eql_v3_real_ord left operand +--! @param b eql_v3.query_real_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_real_ord, b eql_v3.query_real_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_real_ord and eql_v3.query_real_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord_ope: eql_v3.query_real_ord_ope and public.eql_v3_real_ord (mismatched query domain). +--! @param a eql_v3.query_real_ord_ope left operand +--! @param b public.eql_v3_real_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_real_ord_ope, b public.eql_v3_real_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_real_ord_ope and public.eql_v3_real_ord'; END; $$ +LANGUAGE plpgsql; diff --git a/packages/eql/src/v3/scalars/real/query_real_ord_ope_operators.sql b/packages/eql/src/v3/scalars/real/query_real_ord_ope_operators.sql index de0c9606d9..4018b38478 100644 --- a/packages/eql/src/v3/scalars/real/query_real_ord_ope_operators.sql +++ b/packages/eql/src/v3/scalars/real/query_real_ord_ope_operators.sql @@ -77,3 +77,143 @@ CREATE OPERATOR >= ( LEFTARG = eql_v3.query_real_ord_ope, RIGHTARG = public.eql_v3_real_ord_ope, COMMUTATOR = <=, NEGATOR = <, RESTRICT = scalargesel, JOIN = scalargejoinsel ); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_real_eq, RIGHTARG = eql_v3.query_real_ord_ope +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_real_ord_ope, RIGHTARG = public.eql_v3_real_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_real_eq, RIGHTARG = eql_v3.query_real_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_real_ord_ope, RIGHTARG = public.eql_v3_real_eq +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_real_ord_ore, RIGHTARG = eql_v3.query_real_ord_ope +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_real_ord_ope, RIGHTARG = public.eql_v3_real_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_real_ord_ore, RIGHTARG = eql_v3.query_real_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_real_ord_ope, RIGHTARG = public.eql_v3_real_ord_ore +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_real_ord_ore, RIGHTARG = eql_v3.query_real_ord_ope +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_real_ord_ope, RIGHTARG = public.eql_v3_real_ord_ore +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_real_ord_ore, RIGHTARG = eql_v3.query_real_ord_ope +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_real_ord_ope, RIGHTARG = public.eql_v3_real_ord_ore +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_real_ord_ore, RIGHTARG = eql_v3.query_real_ord_ope +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_real_ord_ope, RIGHTARG = public.eql_v3_real_ord_ore +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_real_ord_ore, RIGHTARG = eql_v3.query_real_ord_ope +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_real_ord_ope, RIGHTARG = public.eql_v3_real_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_real_ord, RIGHTARG = eql_v3.query_real_ord_ope +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_real_ord_ope, RIGHTARG = public.eql_v3_real_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_real_ord, RIGHTARG = eql_v3.query_real_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_real_ord_ope, RIGHTARG = public.eql_v3_real_ord +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_real_ord, RIGHTARG = eql_v3.query_real_ord_ope +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_real_ord_ope, RIGHTARG = public.eql_v3_real_ord +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_real_ord, RIGHTARG = eql_v3.query_real_ord_ope +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_real_ord_ope, RIGHTARG = public.eql_v3_real_ord +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_real_ord, RIGHTARG = eql_v3.query_real_ord_ope +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_real_ord_ope, RIGHTARG = public.eql_v3_real_ord +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_real_ord, RIGHTARG = eql_v3.query_real_ord_ope +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_real_ord_ope, RIGHTARG = public.eql_v3_real_ord +); diff --git a/packages/eql/src/v3/scalars/real/query_real_ord_operators.sql b/packages/eql/src/v3/scalars/real/query_real_ord_operators.sql index 2859bc8409..a7d7f412ec 100644 --- a/packages/eql/src/v3/scalars/real/query_real_ord_operators.sql +++ b/packages/eql/src/v3/scalars/real/query_real_ord_operators.sql @@ -77,3 +77,143 @@ CREATE OPERATOR >= ( LEFTARG = eql_v3.query_real_ord, RIGHTARG = public.eql_v3_real_ord, COMMUTATOR = <=, NEGATOR = <, RESTRICT = scalargesel, JOIN = scalargejoinsel ); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_real_eq, RIGHTARG = eql_v3.query_real_ord +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_real_ord, RIGHTARG = public.eql_v3_real_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_real_eq, RIGHTARG = eql_v3.query_real_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_real_ord, RIGHTARG = public.eql_v3_real_eq +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_real_ord_ore, RIGHTARG = eql_v3.query_real_ord +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_real_ord, RIGHTARG = public.eql_v3_real_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_real_ord_ore, RIGHTARG = eql_v3.query_real_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_real_ord, RIGHTARG = public.eql_v3_real_ord_ore +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_real_ord_ore, RIGHTARG = eql_v3.query_real_ord +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_real_ord, RIGHTARG = public.eql_v3_real_ord_ore +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_real_ord_ore, RIGHTARG = eql_v3.query_real_ord +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_real_ord, RIGHTARG = public.eql_v3_real_ord_ore +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_real_ord_ore, RIGHTARG = eql_v3.query_real_ord +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_real_ord, RIGHTARG = public.eql_v3_real_ord_ore +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_real_ord_ore, RIGHTARG = eql_v3.query_real_ord +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_real_ord, RIGHTARG = public.eql_v3_real_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_real_ord_ope, RIGHTARG = eql_v3.query_real_ord +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_real_ord, RIGHTARG = public.eql_v3_real_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_real_ord_ope, RIGHTARG = eql_v3.query_real_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_real_ord, RIGHTARG = public.eql_v3_real_ord_ope +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_real_ord_ope, RIGHTARG = eql_v3.query_real_ord +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_real_ord, RIGHTARG = public.eql_v3_real_ord_ope +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_real_ord_ope, RIGHTARG = eql_v3.query_real_ord +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_real_ord, RIGHTARG = public.eql_v3_real_ord_ope +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_real_ord_ope, RIGHTARG = eql_v3.query_real_ord +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_real_ord, RIGHTARG = public.eql_v3_real_ord_ope +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_real_ord_ope, RIGHTARG = eql_v3.query_real_ord +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_real_ord, RIGHTARG = public.eql_v3_real_ord_ope +); diff --git a/packages/eql/src/v3/scalars/real/query_real_ord_ore_functions.sql b/packages/eql/src/v3/scalars/real/query_real_ord_ore_functions.sql index 333f8c1397..75bdbb4065 100644 --- a/packages/eql/src/v3/scalars/real/query_real_ord_ore_functions.sql +++ b/packages/eql/src/v3/scalars/real/query_real_ord_ore_functions.sql @@ -109,3 +109,255 @@ AS $$ SELECT eql_v3.ord_term_ore(a) OPERATOR(public.>=) eql_v3.ord_term_ore(b) $ CREATE FUNCTION eql_v3.gte(a eql_v3.query_real_ord_ore, b public.eql_v3_real_ord_ore) RETURNS boolean LANGUAGE sql IMMUTABLE STRICT PARALLEL SAFE AS $$ SELECT eql_v3.ord_term_ore(a) OPERATOR(public.>=) eql_v3.ord_term_ore(b) $$; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord_ore: public.eql_v3_real_eq and eql_v3.query_real_ord_ore (mismatched query domain). +--! @param a public.eql_v3_real_eq left operand +--! @param b eql_v3.query_real_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_real_eq, b eql_v3.query_real_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_real_eq and eql_v3.query_real_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord_ore: eql_v3.query_real_ord_ore and public.eql_v3_real_eq (mismatched query domain). +--! @param a eql_v3.query_real_ord_ore left operand +--! @param b public.eql_v3_real_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_real_ord_ore, b public.eql_v3_real_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_real_ord_ore and public.eql_v3_real_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord_ore: public.eql_v3_real_eq and eql_v3.query_real_ord_ore (mismatched query domain). +--! @param a public.eql_v3_real_eq left operand +--! @param b eql_v3.query_real_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_real_eq, b eql_v3.query_real_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_real_eq and eql_v3.query_real_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord_ore: eql_v3.query_real_ord_ore and public.eql_v3_real_eq (mismatched query domain). +--! @param a eql_v3.query_real_ord_ore left operand +--! @param b public.eql_v3_real_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_real_ord_ore, b public.eql_v3_real_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_real_ord_ore and public.eql_v3_real_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord_ore: public.eql_v3_real_ord and eql_v3.query_real_ord_ore (mismatched query domain). +--! @param a public.eql_v3_real_ord left operand +--! @param b eql_v3.query_real_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_real_ord, b eql_v3.query_real_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_real_ord and eql_v3.query_real_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord_ore: eql_v3.query_real_ord_ore and public.eql_v3_real_ord (mismatched query domain). +--! @param a eql_v3.query_real_ord_ore left operand +--! @param b public.eql_v3_real_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_real_ord_ore, b public.eql_v3_real_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_real_ord_ore and public.eql_v3_real_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord_ore: public.eql_v3_real_ord and eql_v3.query_real_ord_ore (mismatched query domain). +--! @param a public.eql_v3_real_ord left operand +--! @param b eql_v3.query_real_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_real_ord, b eql_v3.query_real_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_real_ord and eql_v3.query_real_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord_ore: eql_v3.query_real_ord_ore and public.eql_v3_real_ord (mismatched query domain). +--! @param a eql_v3.query_real_ord_ore left operand +--! @param b public.eql_v3_real_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_real_ord_ore, b public.eql_v3_real_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_real_ord_ore and public.eql_v3_real_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord_ore: public.eql_v3_real_ord and eql_v3.query_real_ord_ore (mismatched query domain). +--! @param a public.eql_v3_real_ord left operand +--! @param b eql_v3.query_real_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_real_ord, b eql_v3.query_real_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_real_ord and eql_v3.query_real_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord_ore: eql_v3.query_real_ord_ore and public.eql_v3_real_ord (mismatched query domain). +--! @param a eql_v3.query_real_ord_ore left operand +--! @param b public.eql_v3_real_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_real_ord_ore, b public.eql_v3_real_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_real_ord_ore and public.eql_v3_real_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord_ore: public.eql_v3_real_ord and eql_v3.query_real_ord_ore (mismatched query domain). +--! @param a public.eql_v3_real_ord left operand +--! @param b eql_v3.query_real_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_real_ord, b eql_v3.query_real_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_real_ord and eql_v3.query_real_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord_ore: eql_v3.query_real_ord_ore and public.eql_v3_real_ord (mismatched query domain). +--! @param a eql_v3.query_real_ord_ore left operand +--! @param b public.eql_v3_real_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_real_ord_ore, b public.eql_v3_real_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_real_ord_ore and public.eql_v3_real_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord_ore: public.eql_v3_real_ord and eql_v3.query_real_ord_ore (mismatched query domain). +--! @param a public.eql_v3_real_ord left operand +--! @param b eql_v3.query_real_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_real_ord, b eql_v3.query_real_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_real_ord and eql_v3.query_real_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord_ore: eql_v3.query_real_ord_ore and public.eql_v3_real_ord (mismatched query domain). +--! @param a eql_v3.query_real_ord_ore left operand +--! @param b public.eql_v3_real_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_real_ord_ore, b public.eql_v3_real_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_real_ord_ore and public.eql_v3_real_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord_ore: public.eql_v3_real_ord and eql_v3.query_real_ord_ore (mismatched query domain). +--! @param a public.eql_v3_real_ord left operand +--! @param b eql_v3.query_real_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_real_ord, b eql_v3.query_real_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_real_ord and eql_v3.query_real_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord_ore: eql_v3.query_real_ord_ore and public.eql_v3_real_ord (mismatched query domain). +--! @param a eql_v3.query_real_ord_ore left operand +--! @param b public.eql_v3_real_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_real_ord_ore, b public.eql_v3_real_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_real_ord_ore and public.eql_v3_real_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord_ore: public.eql_v3_real_ord_ope and eql_v3.query_real_ord_ore (mismatched query domain). +--! @param a public.eql_v3_real_ord_ope left operand +--! @param b eql_v3.query_real_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_real_ord_ope, b eql_v3.query_real_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_real_ord_ope and eql_v3.query_real_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord_ore: eql_v3.query_real_ord_ore and public.eql_v3_real_ord_ope (mismatched query domain). +--! @param a eql_v3.query_real_ord_ore left operand +--! @param b public.eql_v3_real_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_real_ord_ore, b public.eql_v3_real_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_real_ord_ore and public.eql_v3_real_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord_ore: public.eql_v3_real_ord_ope and eql_v3.query_real_ord_ore (mismatched query domain). +--! @param a public.eql_v3_real_ord_ope left operand +--! @param b eql_v3.query_real_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_real_ord_ope, b eql_v3.query_real_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_real_ord_ope and eql_v3.query_real_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord_ore: eql_v3.query_real_ord_ore and public.eql_v3_real_ord_ope (mismatched query domain). +--! @param a eql_v3.query_real_ord_ore left operand +--! @param b public.eql_v3_real_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_real_ord_ore, b public.eql_v3_real_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_real_ord_ore and public.eql_v3_real_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord_ore: public.eql_v3_real_ord_ope and eql_v3.query_real_ord_ore (mismatched query domain). +--! @param a public.eql_v3_real_ord_ope left operand +--! @param b eql_v3.query_real_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_real_ord_ope, b eql_v3.query_real_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_real_ord_ope and eql_v3.query_real_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord_ore: eql_v3.query_real_ord_ore and public.eql_v3_real_ord_ope (mismatched query domain). +--! @param a eql_v3.query_real_ord_ore left operand +--! @param b public.eql_v3_real_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_real_ord_ore, b public.eql_v3_real_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_real_ord_ore and public.eql_v3_real_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord_ore: public.eql_v3_real_ord_ope and eql_v3.query_real_ord_ore (mismatched query domain). +--! @param a public.eql_v3_real_ord_ope left operand +--! @param b eql_v3.query_real_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_real_ord_ope, b eql_v3.query_real_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_real_ord_ope and eql_v3.query_real_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord_ore: eql_v3.query_real_ord_ore and public.eql_v3_real_ord_ope (mismatched query domain). +--! @param a eql_v3.query_real_ord_ore left operand +--! @param b public.eql_v3_real_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_real_ord_ore, b public.eql_v3_real_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_real_ord_ore and public.eql_v3_real_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord_ore: public.eql_v3_real_ord_ope and eql_v3.query_real_ord_ore (mismatched query domain). +--! @param a public.eql_v3_real_ord_ope left operand +--! @param b eql_v3.query_real_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_real_ord_ope, b eql_v3.query_real_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_real_ord_ope and eql_v3.query_real_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord_ore: eql_v3.query_real_ord_ore and public.eql_v3_real_ord_ope (mismatched query domain). +--! @param a eql_v3.query_real_ord_ore left operand +--! @param b public.eql_v3_real_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_real_ord_ore, b public.eql_v3_real_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_real_ord_ore and public.eql_v3_real_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord_ore: public.eql_v3_real_ord_ope and eql_v3.query_real_ord_ore (mismatched query domain). +--! @param a public.eql_v3_real_ord_ope left operand +--! @param b eql_v3.query_real_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_real_ord_ope, b eql_v3.query_real_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_real_ord_ope and eql_v3.query_real_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_real_ord_ore: eql_v3.query_real_ord_ore and public.eql_v3_real_ord_ope (mismatched query domain). +--! @param a eql_v3.query_real_ord_ore left operand +--! @param b public.eql_v3_real_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_real_ord_ore, b public.eql_v3_real_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_real_ord_ore and public.eql_v3_real_ord_ope'; END; $$ +LANGUAGE plpgsql; diff --git a/packages/eql/src/v3/scalars/real/query_real_ord_ore_operators.sql b/packages/eql/src/v3/scalars/real/query_real_ord_ore_operators.sql index c7d56e1dc6..055831db2f 100644 --- a/packages/eql/src/v3/scalars/real/query_real_ord_ore_operators.sql +++ b/packages/eql/src/v3/scalars/real/query_real_ord_ore_operators.sql @@ -77,3 +77,143 @@ CREATE OPERATOR >= ( LEFTARG = eql_v3.query_real_ord_ore, RIGHTARG = public.eql_v3_real_ord_ore, COMMUTATOR = <=, NEGATOR = <, RESTRICT = scalargesel, JOIN = scalargejoinsel ); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_real_eq, RIGHTARG = eql_v3.query_real_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_real_ord_ore, RIGHTARG = public.eql_v3_real_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_real_eq, RIGHTARG = eql_v3.query_real_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_real_ord_ore, RIGHTARG = public.eql_v3_real_eq +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_real_ord, RIGHTARG = eql_v3.query_real_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_real_ord_ore, RIGHTARG = public.eql_v3_real_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_real_ord, RIGHTARG = eql_v3.query_real_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_real_ord_ore, RIGHTARG = public.eql_v3_real_ord +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_real_ord, RIGHTARG = eql_v3.query_real_ord_ore +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_real_ord_ore, RIGHTARG = public.eql_v3_real_ord +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_real_ord, RIGHTARG = eql_v3.query_real_ord_ore +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_real_ord_ore, RIGHTARG = public.eql_v3_real_ord +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_real_ord, RIGHTARG = eql_v3.query_real_ord_ore +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_real_ord_ore, RIGHTARG = public.eql_v3_real_ord +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_real_ord, RIGHTARG = eql_v3.query_real_ord_ore +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_real_ord_ore, RIGHTARG = public.eql_v3_real_ord +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_real_ord_ope, RIGHTARG = eql_v3.query_real_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_real_ord_ore, RIGHTARG = public.eql_v3_real_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_real_ord_ope, RIGHTARG = eql_v3.query_real_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_real_ord_ore, RIGHTARG = public.eql_v3_real_ord_ope +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_real_ord_ope, RIGHTARG = eql_v3.query_real_ord_ore +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_real_ord_ore, RIGHTARG = public.eql_v3_real_ord_ope +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_real_ord_ope, RIGHTARG = eql_v3.query_real_ord_ore +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_real_ord_ore, RIGHTARG = public.eql_v3_real_ord_ope +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_real_ord_ope, RIGHTARG = eql_v3.query_real_ord_ore +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_real_ord_ore, RIGHTARG = public.eql_v3_real_ord_ope +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_real_ord_ope, RIGHTARG = eql_v3.query_real_ord_ore +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_real_ord_ore, RIGHTARG = public.eql_v3_real_ord_ope +); diff --git a/packages/eql/src/v3/scalars/smallint/query_smallint_eq_functions.sql b/packages/eql/src/v3/scalars/smallint/query_smallint_eq_functions.sql index 48353f1584..015de5890c 100644 --- a/packages/eql/src/v3/scalars/smallint/query_smallint_eq_functions.sql +++ b/packages/eql/src/v3/scalars/smallint/query_smallint_eq_functions.sql @@ -45,3 +45,111 @@ AS $$ SELECT eql_v3.eq_term(a) OPERATOR(pg_catalog.<>) eql_v3.eq_term(b) $$; CREATE FUNCTION eql_v3.neq(a eql_v3.query_smallint_eq, b public.eql_v3_smallint_eq) RETURNS boolean LANGUAGE sql IMMUTABLE STRICT PARALLEL SAFE AS $$ SELECT eql_v3.eq_term(a) OPERATOR(pg_catalog.<>) eql_v3.eq_term(b) $$; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_eq: public.eql_v3_smallint_ord_ore and eql_v3.query_smallint_eq (mismatched query domain). +--! @param a public.eql_v3_smallint_ord_ore left operand +--! @param b eql_v3.query_smallint_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_smallint_ord_ore, b eql_v3.query_smallint_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_smallint_ord_ore and eql_v3.query_smallint_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_eq: eql_v3.query_smallint_eq and public.eql_v3_smallint_ord_ore (mismatched query domain). +--! @param a eql_v3.query_smallint_eq left operand +--! @param b public.eql_v3_smallint_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_smallint_eq, b public.eql_v3_smallint_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_smallint_eq and public.eql_v3_smallint_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_eq: public.eql_v3_smallint_ord_ore and eql_v3.query_smallint_eq (mismatched query domain). +--! @param a public.eql_v3_smallint_ord_ore left operand +--! @param b eql_v3.query_smallint_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_smallint_ord_ore, b eql_v3.query_smallint_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_smallint_ord_ore and eql_v3.query_smallint_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_eq: eql_v3.query_smallint_eq and public.eql_v3_smallint_ord_ore (mismatched query domain). +--! @param a eql_v3.query_smallint_eq left operand +--! @param b public.eql_v3_smallint_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_smallint_eq, b public.eql_v3_smallint_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_smallint_eq and public.eql_v3_smallint_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_eq: public.eql_v3_smallint_ord and eql_v3.query_smallint_eq (mismatched query domain). +--! @param a public.eql_v3_smallint_ord left operand +--! @param b eql_v3.query_smallint_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_smallint_ord, b eql_v3.query_smallint_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_smallint_ord and eql_v3.query_smallint_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_eq: eql_v3.query_smallint_eq and public.eql_v3_smallint_ord (mismatched query domain). +--! @param a eql_v3.query_smallint_eq left operand +--! @param b public.eql_v3_smallint_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_smallint_eq, b public.eql_v3_smallint_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_smallint_eq and public.eql_v3_smallint_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_eq: public.eql_v3_smallint_ord and eql_v3.query_smallint_eq (mismatched query domain). +--! @param a public.eql_v3_smallint_ord left operand +--! @param b eql_v3.query_smallint_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_smallint_ord, b eql_v3.query_smallint_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_smallint_ord and eql_v3.query_smallint_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_eq: eql_v3.query_smallint_eq and public.eql_v3_smallint_ord (mismatched query domain). +--! @param a eql_v3.query_smallint_eq left operand +--! @param b public.eql_v3_smallint_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_smallint_eq, b public.eql_v3_smallint_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_smallint_eq and public.eql_v3_smallint_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_eq: public.eql_v3_smallint_ord_ope and eql_v3.query_smallint_eq (mismatched query domain). +--! @param a public.eql_v3_smallint_ord_ope left operand +--! @param b eql_v3.query_smallint_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_smallint_ord_ope, b eql_v3.query_smallint_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_smallint_ord_ope and eql_v3.query_smallint_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_eq: eql_v3.query_smallint_eq and public.eql_v3_smallint_ord_ope (mismatched query domain). +--! @param a eql_v3.query_smallint_eq left operand +--! @param b public.eql_v3_smallint_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_smallint_eq, b public.eql_v3_smallint_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_smallint_eq and public.eql_v3_smallint_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_eq: public.eql_v3_smallint_ord_ope and eql_v3.query_smallint_eq (mismatched query domain). +--! @param a public.eql_v3_smallint_ord_ope left operand +--! @param b eql_v3.query_smallint_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_smallint_ord_ope, b eql_v3.query_smallint_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_smallint_ord_ope and eql_v3.query_smallint_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_eq: eql_v3.query_smallint_eq and public.eql_v3_smallint_ord_ope (mismatched query domain). +--! @param a eql_v3.query_smallint_eq left operand +--! @param b public.eql_v3_smallint_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_smallint_eq, b public.eql_v3_smallint_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_smallint_eq and public.eql_v3_smallint_ord_ope'; END; $$ +LANGUAGE plpgsql; diff --git a/packages/eql/src/v3/scalars/smallint/query_smallint_eq_operators.sql b/packages/eql/src/v3/scalars/smallint/query_smallint_eq_operators.sql index c85625f7b4..67a7ef1c94 100644 --- a/packages/eql/src/v3/scalars/smallint/query_smallint_eq_operators.sql +++ b/packages/eql/src/v3/scalars/smallint/query_smallint_eq_operators.sql @@ -29,3 +29,63 @@ CREATE OPERATOR <> ( LEFTARG = eql_v3.query_smallint_eq, RIGHTARG = public.eql_v3_smallint_eq, COMMUTATOR = <>, NEGATOR = =, RESTRICT = neqsel, JOIN = neqjoinsel ); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_smallint_ord_ore, RIGHTARG = eql_v3.query_smallint_eq +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_smallint_eq, RIGHTARG = public.eql_v3_smallint_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_smallint_ord_ore, RIGHTARG = eql_v3.query_smallint_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_smallint_eq, RIGHTARG = public.eql_v3_smallint_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_smallint_ord, RIGHTARG = eql_v3.query_smallint_eq +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_smallint_eq, RIGHTARG = public.eql_v3_smallint_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_smallint_ord, RIGHTARG = eql_v3.query_smallint_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_smallint_eq, RIGHTARG = public.eql_v3_smallint_ord +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_smallint_ord_ope, RIGHTARG = eql_v3.query_smallint_eq +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_smallint_eq, RIGHTARG = public.eql_v3_smallint_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_smallint_ord_ope, RIGHTARG = eql_v3.query_smallint_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_smallint_eq, RIGHTARG = public.eql_v3_smallint_ord_ope +); diff --git a/packages/eql/src/v3/scalars/smallint/query_smallint_ord_functions.sql b/packages/eql/src/v3/scalars/smallint/query_smallint_ord_functions.sql index f41b262a79..4de112a134 100644 --- a/packages/eql/src/v3/scalars/smallint/query_smallint_ord_functions.sql +++ b/packages/eql/src/v3/scalars/smallint/query_smallint_ord_functions.sql @@ -109,3 +109,255 @@ AS $$ SELECT eql_v3.ord_term(a) OPERATOR(pg_catalog.>=) eql_v3.ord_term(b) $$; CREATE FUNCTION eql_v3.gte(a eql_v3.query_smallint_ord, b public.eql_v3_smallint_ord) RETURNS boolean LANGUAGE sql IMMUTABLE STRICT PARALLEL SAFE AS $$ SELECT eql_v3.ord_term(a) OPERATOR(pg_catalog.>=) eql_v3.ord_term(b) $$; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord: public.eql_v3_smallint_eq and eql_v3.query_smallint_ord (mismatched query domain). +--! @param a public.eql_v3_smallint_eq left operand +--! @param b eql_v3.query_smallint_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_smallint_eq, b eql_v3.query_smallint_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_smallint_eq and eql_v3.query_smallint_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord: eql_v3.query_smallint_ord and public.eql_v3_smallint_eq (mismatched query domain). +--! @param a eql_v3.query_smallint_ord left operand +--! @param b public.eql_v3_smallint_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_smallint_ord, b public.eql_v3_smallint_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_smallint_ord and public.eql_v3_smallint_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord: public.eql_v3_smallint_eq and eql_v3.query_smallint_ord (mismatched query domain). +--! @param a public.eql_v3_smallint_eq left operand +--! @param b eql_v3.query_smallint_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_smallint_eq, b eql_v3.query_smallint_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_smallint_eq and eql_v3.query_smallint_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord: eql_v3.query_smallint_ord and public.eql_v3_smallint_eq (mismatched query domain). +--! @param a eql_v3.query_smallint_ord left operand +--! @param b public.eql_v3_smallint_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_smallint_ord, b public.eql_v3_smallint_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_smallint_ord and public.eql_v3_smallint_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord: public.eql_v3_smallint_ord_ore and eql_v3.query_smallint_ord (mismatched query domain). +--! @param a public.eql_v3_smallint_ord_ore left operand +--! @param b eql_v3.query_smallint_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_smallint_ord_ore, b eql_v3.query_smallint_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_smallint_ord_ore and eql_v3.query_smallint_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord: eql_v3.query_smallint_ord and public.eql_v3_smallint_ord_ore (mismatched query domain). +--! @param a eql_v3.query_smallint_ord left operand +--! @param b public.eql_v3_smallint_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_smallint_ord, b public.eql_v3_smallint_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_smallint_ord and public.eql_v3_smallint_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord: public.eql_v3_smallint_ord_ore and eql_v3.query_smallint_ord (mismatched query domain). +--! @param a public.eql_v3_smallint_ord_ore left operand +--! @param b eql_v3.query_smallint_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_smallint_ord_ore, b eql_v3.query_smallint_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_smallint_ord_ore and eql_v3.query_smallint_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord: eql_v3.query_smallint_ord and public.eql_v3_smallint_ord_ore (mismatched query domain). +--! @param a eql_v3.query_smallint_ord left operand +--! @param b public.eql_v3_smallint_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_smallint_ord, b public.eql_v3_smallint_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_smallint_ord and public.eql_v3_smallint_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord: public.eql_v3_smallint_ord_ore and eql_v3.query_smallint_ord (mismatched query domain). +--! @param a public.eql_v3_smallint_ord_ore left operand +--! @param b eql_v3.query_smallint_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_smallint_ord_ore, b eql_v3.query_smallint_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_smallint_ord_ore and eql_v3.query_smallint_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord: eql_v3.query_smallint_ord and public.eql_v3_smallint_ord_ore (mismatched query domain). +--! @param a eql_v3.query_smallint_ord left operand +--! @param b public.eql_v3_smallint_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_smallint_ord, b public.eql_v3_smallint_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_smallint_ord and public.eql_v3_smallint_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord: public.eql_v3_smallint_ord_ore and eql_v3.query_smallint_ord (mismatched query domain). +--! @param a public.eql_v3_smallint_ord_ore left operand +--! @param b eql_v3.query_smallint_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_smallint_ord_ore, b eql_v3.query_smallint_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_smallint_ord_ore and eql_v3.query_smallint_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord: eql_v3.query_smallint_ord and public.eql_v3_smallint_ord_ore (mismatched query domain). +--! @param a eql_v3.query_smallint_ord left operand +--! @param b public.eql_v3_smallint_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_smallint_ord, b public.eql_v3_smallint_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_smallint_ord and public.eql_v3_smallint_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord: public.eql_v3_smallint_ord_ore and eql_v3.query_smallint_ord (mismatched query domain). +--! @param a public.eql_v3_smallint_ord_ore left operand +--! @param b eql_v3.query_smallint_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_smallint_ord_ore, b eql_v3.query_smallint_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_smallint_ord_ore and eql_v3.query_smallint_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord: eql_v3.query_smallint_ord and public.eql_v3_smallint_ord_ore (mismatched query domain). +--! @param a eql_v3.query_smallint_ord left operand +--! @param b public.eql_v3_smallint_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_smallint_ord, b public.eql_v3_smallint_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_smallint_ord and public.eql_v3_smallint_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord: public.eql_v3_smallint_ord_ore and eql_v3.query_smallint_ord (mismatched query domain). +--! @param a public.eql_v3_smallint_ord_ore left operand +--! @param b eql_v3.query_smallint_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_smallint_ord_ore, b eql_v3.query_smallint_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_smallint_ord_ore and eql_v3.query_smallint_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord: eql_v3.query_smallint_ord and public.eql_v3_smallint_ord_ore (mismatched query domain). +--! @param a eql_v3.query_smallint_ord left operand +--! @param b public.eql_v3_smallint_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_smallint_ord, b public.eql_v3_smallint_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_smallint_ord and public.eql_v3_smallint_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord: public.eql_v3_smallint_ord_ope and eql_v3.query_smallint_ord (mismatched query domain). +--! @param a public.eql_v3_smallint_ord_ope left operand +--! @param b eql_v3.query_smallint_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_smallint_ord_ope, b eql_v3.query_smallint_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_smallint_ord_ope and eql_v3.query_smallint_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord: eql_v3.query_smallint_ord and public.eql_v3_smallint_ord_ope (mismatched query domain). +--! @param a eql_v3.query_smallint_ord left operand +--! @param b public.eql_v3_smallint_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_smallint_ord, b public.eql_v3_smallint_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_smallint_ord and public.eql_v3_smallint_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord: public.eql_v3_smallint_ord_ope and eql_v3.query_smallint_ord (mismatched query domain). +--! @param a public.eql_v3_smallint_ord_ope left operand +--! @param b eql_v3.query_smallint_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_smallint_ord_ope, b eql_v3.query_smallint_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_smallint_ord_ope and eql_v3.query_smallint_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord: eql_v3.query_smallint_ord and public.eql_v3_smallint_ord_ope (mismatched query domain). +--! @param a eql_v3.query_smallint_ord left operand +--! @param b public.eql_v3_smallint_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_smallint_ord, b public.eql_v3_smallint_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_smallint_ord and public.eql_v3_smallint_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord: public.eql_v3_smallint_ord_ope and eql_v3.query_smallint_ord (mismatched query domain). +--! @param a public.eql_v3_smallint_ord_ope left operand +--! @param b eql_v3.query_smallint_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_smallint_ord_ope, b eql_v3.query_smallint_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_smallint_ord_ope and eql_v3.query_smallint_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord: eql_v3.query_smallint_ord and public.eql_v3_smallint_ord_ope (mismatched query domain). +--! @param a eql_v3.query_smallint_ord left operand +--! @param b public.eql_v3_smallint_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_smallint_ord, b public.eql_v3_smallint_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_smallint_ord and public.eql_v3_smallint_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord: public.eql_v3_smallint_ord_ope and eql_v3.query_smallint_ord (mismatched query domain). +--! @param a public.eql_v3_smallint_ord_ope left operand +--! @param b eql_v3.query_smallint_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_smallint_ord_ope, b eql_v3.query_smallint_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_smallint_ord_ope and eql_v3.query_smallint_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord: eql_v3.query_smallint_ord and public.eql_v3_smallint_ord_ope (mismatched query domain). +--! @param a eql_v3.query_smallint_ord left operand +--! @param b public.eql_v3_smallint_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_smallint_ord, b public.eql_v3_smallint_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_smallint_ord and public.eql_v3_smallint_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord: public.eql_v3_smallint_ord_ope and eql_v3.query_smallint_ord (mismatched query domain). +--! @param a public.eql_v3_smallint_ord_ope left operand +--! @param b eql_v3.query_smallint_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_smallint_ord_ope, b eql_v3.query_smallint_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_smallint_ord_ope and eql_v3.query_smallint_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord: eql_v3.query_smallint_ord and public.eql_v3_smallint_ord_ope (mismatched query domain). +--! @param a eql_v3.query_smallint_ord left operand +--! @param b public.eql_v3_smallint_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_smallint_ord, b public.eql_v3_smallint_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_smallint_ord and public.eql_v3_smallint_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord: public.eql_v3_smallint_ord_ope and eql_v3.query_smallint_ord (mismatched query domain). +--! @param a public.eql_v3_smallint_ord_ope left operand +--! @param b eql_v3.query_smallint_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_smallint_ord_ope, b eql_v3.query_smallint_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_smallint_ord_ope and eql_v3.query_smallint_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord: eql_v3.query_smallint_ord and public.eql_v3_smallint_ord_ope (mismatched query domain). +--! @param a eql_v3.query_smallint_ord left operand +--! @param b public.eql_v3_smallint_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_smallint_ord, b public.eql_v3_smallint_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_smallint_ord and public.eql_v3_smallint_ord_ope'; END; $$ +LANGUAGE plpgsql; diff --git a/packages/eql/src/v3/scalars/smallint/query_smallint_ord_ope_functions.sql b/packages/eql/src/v3/scalars/smallint/query_smallint_ord_ope_functions.sql index 3a79184593..ff66a59bfa 100644 --- a/packages/eql/src/v3/scalars/smallint/query_smallint_ord_ope_functions.sql +++ b/packages/eql/src/v3/scalars/smallint/query_smallint_ord_ope_functions.sql @@ -109,3 +109,255 @@ AS $$ SELECT eql_v3.ord_term(a) OPERATOR(pg_catalog.>=) eql_v3.ord_term(b) $$; CREATE FUNCTION eql_v3.gte(a eql_v3.query_smallint_ord_ope, b public.eql_v3_smallint_ord_ope) RETURNS boolean LANGUAGE sql IMMUTABLE STRICT PARALLEL SAFE AS $$ SELECT eql_v3.ord_term(a) OPERATOR(pg_catalog.>=) eql_v3.ord_term(b) $$; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord_ope: public.eql_v3_smallint_eq and eql_v3.query_smallint_ord_ope (mismatched query domain). +--! @param a public.eql_v3_smallint_eq left operand +--! @param b eql_v3.query_smallint_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_smallint_eq, b eql_v3.query_smallint_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_smallint_eq and eql_v3.query_smallint_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord_ope: eql_v3.query_smallint_ord_ope and public.eql_v3_smallint_eq (mismatched query domain). +--! @param a eql_v3.query_smallint_ord_ope left operand +--! @param b public.eql_v3_smallint_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_smallint_ord_ope, b public.eql_v3_smallint_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_smallint_ord_ope and public.eql_v3_smallint_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord_ope: public.eql_v3_smallint_eq and eql_v3.query_smallint_ord_ope (mismatched query domain). +--! @param a public.eql_v3_smallint_eq left operand +--! @param b eql_v3.query_smallint_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_smallint_eq, b eql_v3.query_smallint_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_smallint_eq and eql_v3.query_smallint_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord_ope: eql_v3.query_smallint_ord_ope and public.eql_v3_smallint_eq (mismatched query domain). +--! @param a eql_v3.query_smallint_ord_ope left operand +--! @param b public.eql_v3_smallint_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_smallint_ord_ope, b public.eql_v3_smallint_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_smallint_ord_ope and public.eql_v3_smallint_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord_ope: public.eql_v3_smallint_ord_ore and eql_v3.query_smallint_ord_ope (mismatched query domain). +--! @param a public.eql_v3_smallint_ord_ore left operand +--! @param b eql_v3.query_smallint_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_smallint_ord_ore, b eql_v3.query_smallint_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_smallint_ord_ore and eql_v3.query_smallint_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord_ope: eql_v3.query_smallint_ord_ope and public.eql_v3_smallint_ord_ore (mismatched query domain). +--! @param a eql_v3.query_smallint_ord_ope left operand +--! @param b public.eql_v3_smallint_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_smallint_ord_ope, b public.eql_v3_smallint_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_smallint_ord_ope and public.eql_v3_smallint_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord_ope: public.eql_v3_smallint_ord_ore and eql_v3.query_smallint_ord_ope (mismatched query domain). +--! @param a public.eql_v3_smallint_ord_ore left operand +--! @param b eql_v3.query_smallint_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_smallint_ord_ore, b eql_v3.query_smallint_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_smallint_ord_ore and eql_v3.query_smallint_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord_ope: eql_v3.query_smallint_ord_ope and public.eql_v3_smallint_ord_ore (mismatched query domain). +--! @param a eql_v3.query_smallint_ord_ope left operand +--! @param b public.eql_v3_smallint_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_smallint_ord_ope, b public.eql_v3_smallint_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_smallint_ord_ope and public.eql_v3_smallint_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord_ope: public.eql_v3_smallint_ord_ore and eql_v3.query_smallint_ord_ope (mismatched query domain). +--! @param a public.eql_v3_smallint_ord_ore left operand +--! @param b eql_v3.query_smallint_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_smallint_ord_ore, b eql_v3.query_smallint_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_smallint_ord_ore and eql_v3.query_smallint_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord_ope: eql_v3.query_smallint_ord_ope and public.eql_v3_smallint_ord_ore (mismatched query domain). +--! @param a eql_v3.query_smallint_ord_ope left operand +--! @param b public.eql_v3_smallint_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_smallint_ord_ope, b public.eql_v3_smallint_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_smallint_ord_ope and public.eql_v3_smallint_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord_ope: public.eql_v3_smallint_ord_ore and eql_v3.query_smallint_ord_ope (mismatched query domain). +--! @param a public.eql_v3_smallint_ord_ore left operand +--! @param b eql_v3.query_smallint_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_smallint_ord_ore, b eql_v3.query_smallint_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_smallint_ord_ore and eql_v3.query_smallint_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord_ope: eql_v3.query_smallint_ord_ope and public.eql_v3_smallint_ord_ore (mismatched query domain). +--! @param a eql_v3.query_smallint_ord_ope left operand +--! @param b public.eql_v3_smallint_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_smallint_ord_ope, b public.eql_v3_smallint_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_smallint_ord_ope and public.eql_v3_smallint_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord_ope: public.eql_v3_smallint_ord_ore and eql_v3.query_smallint_ord_ope (mismatched query domain). +--! @param a public.eql_v3_smallint_ord_ore left operand +--! @param b eql_v3.query_smallint_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_smallint_ord_ore, b eql_v3.query_smallint_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_smallint_ord_ore and eql_v3.query_smallint_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord_ope: eql_v3.query_smallint_ord_ope and public.eql_v3_smallint_ord_ore (mismatched query domain). +--! @param a eql_v3.query_smallint_ord_ope left operand +--! @param b public.eql_v3_smallint_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_smallint_ord_ope, b public.eql_v3_smallint_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_smallint_ord_ope and public.eql_v3_smallint_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord_ope: public.eql_v3_smallint_ord_ore and eql_v3.query_smallint_ord_ope (mismatched query domain). +--! @param a public.eql_v3_smallint_ord_ore left operand +--! @param b eql_v3.query_smallint_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_smallint_ord_ore, b eql_v3.query_smallint_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_smallint_ord_ore and eql_v3.query_smallint_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord_ope: eql_v3.query_smallint_ord_ope and public.eql_v3_smallint_ord_ore (mismatched query domain). +--! @param a eql_v3.query_smallint_ord_ope left operand +--! @param b public.eql_v3_smallint_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_smallint_ord_ope, b public.eql_v3_smallint_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_smallint_ord_ope and public.eql_v3_smallint_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord_ope: public.eql_v3_smallint_ord and eql_v3.query_smallint_ord_ope (mismatched query domain). +--! @param a public.eql_v3_smallint_ord left operand +--! @param b eql_v3.query_smallint_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_smallint_ord, b eql_v3.query_smallint_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_smallint_ord and eql_v3.query_smallint_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord_ope: eql_v3.query_smallint_ord_ope and public.eql_v3_smallint_ord (mismatched query domain). +--! @param a eql_v3.query_smallint_ord_ope left operand +--! @param b public.eql_v3_smallint_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_smallint_ord_ope, b public.eql_v3_smallint_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_smallint_ord_ope and public.eql_v3_smallint_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord_ope: public.eql_v3_smallint_ord and eql_v3.query_smallint_ord_ope (mismatched query domain). +--! @param a public.eql_v3_smallint_ord left operand +--! @param b eql_v3.query_smallint_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_smallint_ord, b eql_v3.query_smallint_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_smallint_ord and eql_v3.query_smallint_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord_ope: eql_v3.query_smallint_ord_ope and public.eql_v3_smallint_ord (mismatched query domain). +--! @param a eql_v3.query_smallint_ord_ope left operand +--! @param b public.eql_v3_smallint_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_smallint_ord_ope, b public.eql_v3_smallint_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_smallint_ord_ope and public.eql_v3_smallint_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord_ope: public.eql_v3_smallint_ord and eql_v3.query_smallint_ord_ope (mismatched query domain). +--! @param a public.eql_v3_smallint_ord left operand +--! @param b eql_v3.query_smallint_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_smallint_ord, b eql_v3.query_smallint_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_smallint_ord and eql_v3.query_smallint_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord_ope: eql_v3.query_smallint_ord_ope and public.eql_v3_smallint_ord (mismatched query domain). +--! @param a eql_v3.query_smallint_ord_ope left operand +--! @param b public.eql_v3_smallint_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_smallint_ord_ope, b public.eql_v3_smallint_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_smallint_ord_ope and public.eql_v3_smallint_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord_ope: public.eql_v3_smallint_ord and eql_v3.query_smallint_ord_ope (mismatched query domain). +--! @param a public.eql_v3_smallint_ord left operand +--! @param b eql_v3.query_smallint_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_smallint_ord, b eql_v3.query_smallint_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_smallint_ord and eql_v3.query_smallint_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord_ope: eql_v3.query_smallint_ord_ope and public.eql_v3_smallint_ord (mismatched query domain). +--! @param a eql_v3.query_smallint_ord_ope left operand +--! @param b public.eql_v3_smallint_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_smallint_ord_ope, b public.eql_v3_smallint_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_smallint_ord_ope and public.eql_v3_smallint_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord_ope: public.eql_v3_smallint_ord and eql_v3.query_smallint_ord_ope (mismatched query domain). +--! @param a public.eql_v3_smallint_ord left operand +--! @param b eql_v3.query_smallint_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_smallint_ord, b eql_v3.query_smallint_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_smallint_ord and eql_v3.query_smallint_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord_ope: eql_v3.query_smallint_ord_ope and public.eql_v3_smallint_ord (mismatched query domain). +--! @param a eql_v3.query_smallint_ord_ope left operand +--! @param b public.eql_v3_smallint_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_smallint_ord_ope, b public.eql_v3_smallint_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_smallint_ord_ope and public.eql_v3_smallint_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord_ope: public.eql_v3_smallint_ord and eql_v3.query_smallint_ord_ope (mismatched query domain). +--! @param a public.eql_v3_smallint_ord left operand +--! @param b eql_v3.query_smallint_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_smallint_ord, b eql_v3.query_smallint_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_smallint_ord and eql_v3.query_smallint_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord_ope: eql_v3.query_smallint_ord_ope and public.eql_v3_smallint_ord (mismatched query domain). +--! @param a eql_v3.query_smallint_ord_ope left operand +--! @param b public.eql_v3_smallint_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_smallint_ord_ope, b public.eql_v3_smallint_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_smallint_ord_ope and public.eql_v3_smallint_ord'; END; $$ +LANGUAGE plpgsql; diff --git a/packages/eql/src/v3/scalars/smallint/query_smallint_ord_ope_operators.sql b/packages/eql/src/v3/scalars/smallint/query_smallint_ord_ope_operators.sql index 1b8480f2e3..ad96946ccf 100644 --- a/packages/eql/src/v3/scalars/smallint/query_smallint_ord_ope_operators.sql +++ b/packages/eql/src/v3/scalars/smallint/query_smallint_ord_ope_operators.sql @@ -77,3 +77,143 @@ CREATE OPERATOR >= ( LEFTARG = eql_v3.query_smallint_ord_ope, RIGHTARG = public.eql_v3_smallint_ord_ope, COMMUTATOR = <=, NEGATOR = <, RESTRICT = scalargesel, JOIN = scalargejoinsel ); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_smallint_eq, RIGHTARG = eql_v3.query_smallint_ord_ope +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_smallint_ord_ope, RIGHTARG = public.eql_v3_smallint_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_smallint_eq, RIGHTARG = eql_v3.query_smallint_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_smallint_ord_ope, RIGHTARG = public.eql_v3_smallint_eq +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_smallint_ord_ore, RIGHTARG = eql_v3.query_smallint_ord_ope +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_smallint_ord_ope, RIGHTARG = public.eql_v3_smallint_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_smallint_ord_ore, RIGHTARG = eql_v3.query_smallint_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_smallint_ord_ope, RIGHTARG = public.eql_v3_smallint_ord_ore +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_smallint_ord_ore, RIGHTARG = eql_v3.query_smallint_ord_ope +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_smallint_ord_ope, RIGHTARG = public.eql_v3_smallint_ord_ore +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_smallint_ord_ore, RIGHTARG = eql_v3.query_smallint_ord_ope +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_smallint_ord_ope, RIGHTARG = public.eql_v3_smallint_ord_ore +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_smallint_ord_ore, RIGHTARG = eql_v3.query_smallint_ord_ope +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_smallint_ord_ope, RIGHTARG = public.eql_v3_smallint_ord_ore +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_smallint_ord_ore, RIGHTARG = eql_v3.query_smallint_ord_ope +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_smallint_ord_ope, RIGHTARG = public.eql_v3_smallint_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_smallint_ord, RIGHTARG = eql_v3.query_smallint_ord_ope +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_smallint_ord_ope, RIGHTARG = public.eql_v3_smallint_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_smallint_ord, RIGHTARG = eql_v3.query_smallint_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_smallint_ord_ope, RIGHTARG = public.eql_v3_smallint_ord +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_smallint_ord, RIGHTARG = eql_v3.query_smallint_ord_ope +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_smallint_ord_ope, RIGHTARG = public.eql_v3_smallint_ord +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_smallint_ord, RIGHTARG = eql_v3.query_smallint_ord_ope +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_smallint_ord_ope, RIGHTARG = public.eql_v3_smallint_ord +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_smallint_ord, RIGHTARG = eql_v3.query_smallint_ord_ope +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_smallint_ord_ope, RIGHTARG = public.eql_v3_smallint_ord +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_smallint_ord, RIGHTARG = eql_v3.query_smallint_ord_ope +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_smallint_ord_ope, RIGHTARG = public.eql_v3_smallint_ord +); diff --git a/packages/eql/src/v3/scalars/smallint/query_smallint_ord_operators.sql b/packages/eql/src/v3/scalars/smallint/query_smallint_ord_operators.sql index 5f66128fc5..66248a0409 100644 --- a/packages/eql/src/v3/scalars/smallint/query_smallint_ord_operators.sql +++ b/packages/eql/src/v3/scalars/smallint/query_smallint_ord_operators.sql @@ -77,3 +77,143 @@ CREATE OPERATOR >= ( LEFTARG = eql_v3.query_smallint_ord, RIGHTARG = public.eql_v3_smallint_ord, COMMUTATOR = <=, NEGATOR = <, RESTRICT = scalargesel, JOIN = scalargejoinsel ); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_smallint_eq, RIGHTARG = eql_v3.query_smallint_ord +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_smallint_ord, RIGHTARG = public.eql_v3_smallint_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_smallint_eq, RIGHTARG = eql_v3.query_smallint_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_smallint_ord, RIGHTARG = public.eql_v3_smallint_eq +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_smallint_ord_ore, RIGHTARG = eql_v3.query_smallint_ord +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_smallint_ord, RIGHTARG = public.eql_v3_smallint_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_smallint_ord_ore, RIGHTARG = eql_v3.query_smallint_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_smallint_ord, RIGHTARG = public.eql_v3_smallint_ord_ore +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_smallint_ord_ore, RIGHTARG = eql_v3.query_smallint_ord +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_smallint_ord, RIGHTARG = public.eql_v3_smallint_ord_ore +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_smallint_ord_ore, RIGHTARG = eql_v3.query_smallint_ord +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_smallint_ord, RIGHTARG = public.eql_v3_smallint_ord_ore +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_smallint_ord_ore, RIGHTARG = eql_v3.query_smallint_ord +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_smallint_ord, RIGHTARG = public.eql_v3_smallint_ord_ore +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_smallint_ord_ore, RIGHTARG = eql_v3.query_smallint_ord +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_smallint_ord, RIGHTARG = public.eql_v3_smallint_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_smallint_ord_ope, RIGHTARG = eql_v3.query_smallint_ord +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_smallint_ord, RIGHTARG = public.eql_v3_smallint_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_smallint_ord_ope, RIGHTARG = eql_v3.query_smallint_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_smallint_ord, RIGHTARG = public.eql_v3_smallint_ord_ope +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_smallint_ord_ope, RIGHTARG = eql_v3.query_smallint_ord +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_smallint_ord, RIGHTARG = public.eql_v3_smallint_ord_ope +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_smallint_ord_ope, RIGHTARG = eql_v3.query_smallint_ord +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_smallint_ord, RIGHTARG = public.eql_v3_smallint_ord_ope +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_smallint_ord_ope, RIGHTARG = eql_v3.query_smallint_ord +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_smallint_ord, RIGHTARG = public.eql_v3_smallint_ord_ope +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_smallint_ord_ope, RIGHTARG = eql_v3.query_smallint_ord +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_smallint_ord, RIGHTARG = public.eql_v3_smallint_ord_ope +); diff --git a/packages/eql/src/v3/scalars/smallint/query_smallint_ord_ore_functions.sql b/packages/eql/src/v3/scalars/smallint/query_smallint_ord_ore_functions.sql index eee4caa02d..8b9c2f3934 100644 --- a/packages/eql/src/v3/scalars/smallint/query_smallint_ord_ore_functions.sql +++ b/packages/eql/src/v3/scalars/smallint/query_smallint_ord_ore_functions.sql @@ -109,3 +109,255 @@ AS $$ SELECT eql_v3.ord_term_ore(a) OPERATOR(public.>=) eql_v3.ord_term_ore(b) $ CREATE FUNCTION eql_v3.gte(a eql_v3.query_smallint_ord_ore, b public.eql_v3_smallint_ord_ore) RETURNS boolean LANGUAGE sql IMMUTABLE STRICT PARALLEL SAFE AS $$ SELECT eql_v3.ord_term_ore(a) OPERATOR(public.>=) eql_v3.ord_term_ore(b) $$; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord_ore: public.eql_v3_smallint_eq and eql_v3.query_smallint_ord_ore (mismatched query domain). +--! @param a public.eql_v3_smallint_eq left operand +--! @param b eql_v3.query_smallint_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_smallint_eq, b eql_v3.query_smallint_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_smallint_eq and eql_v3.query_smallint_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord_ore: eql_v3.query_smallint_ord_ore and public.eql_v3_smallint_eq (mismatched query domain). +--! @param a eql_v3.query_smallint_ord_ore left operand +--! @param b public.eql_v3_smallint_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_smallint_ord_ore, b public.eql_v3_smallint_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_smallint_ord_ore and public.eql_v3_smallint_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord_ore: public.eql_v3_smallint_eq and eql_v3.query_smallint_ord_ore (mismatched query domain). +--! @param a public.eql_v3_smallint_eq left operand +--! @param b eql_v3.query_smallint_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_smallint_eq, b eql_v3.query_smallint_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_smallint_eq and eql_v3.query_smallint_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord_ore: eql_v3.query_smallint_ord_ore and public.eql_v3_smallint_eq (mismatched query domain). +--! @param a eql_v3.query_smallint_ord_ore left operand +--! @param b public.eql_v3_smallint_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_smallint_ord_ore, b public.eql_v3_smallint_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_smallint_ord_ore and public.eql_v3_smallint_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord_ore: public.eql_v3_smallint_ord and eql_v3.query_smallint_ord_ore (mismatched query domain). +--! @param a public.eql_v3_smallint_ord left operand +--! @param b eql_v3.query_smallint_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_smallint_ord, b eql_v3.query_smallint_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_smallint_ord and eql_v3.query_smallint_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord_ore: eql_v3.query_smallint_ord_ore and public.eql_v3_smallint_ord (mismatched query domain). +--! @param a eql_v3.query_smallint_ord_ore left operand +--! @param b public.eql_v3_smallint_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_smallint_ord_ore, b public.eql_v3_smallint_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_smallint_ord_ore and public.eql_v3_smallint_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord_ore: public.eql_v3_smallint_ord and eql_v3.query_smallint_ord_ore (mismatched query domain). +--! @param a public.eql_v3_smallint_ord left operand +--! @param b eql_v3.query_smallint_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_smallint_ord, b eql_v3.query_smallint_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_smallint_ord and eql_v3.query_smallint_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord_ore: eql_v3.query_smallint_ord_ore and public.eql_v3_smallint_ord (mismatched query domain). +--! @param a eql_v3.query_smallint_ord_ore left operand +--! @param b public.eql_v3_smallint_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_smallint_ord_ore, b public.eql_v3_smallint_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_smallint_ord_ore and public.eql_v3_smallint_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord_ore: public.eql_v3_smallint_ord and eql_v3.query_smallint_ord_ore (mismatched query domain). +--! @param a public.eql_v3_smallint_ord left operand +--! @param b eql_v3.query_smallint_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_smallint_ord, b eql_v3.query_smallint_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_smallint_ord and eql_v3.query_smallint_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord_ore: eql_v3.query_smallint_ord_ore and public.eql_v3_smallint_ord (mismatched query domain). +--! @param a eql_v3.query_smallint_ord_ore left operand +--! @param b public.eql_v3_smallint_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_smallint_ord_ore, b public.eql_v3_smallint_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_smallint_ord_ore and public.eql_v3_smallint_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord_ore: public.eql_v3_smallint_ord and eql_v3.query_smallint_ord_ore (mismatched query domain). +--! @param a public.eql_v3_smallint_ord left operand +--! @param b eql_v3.query_smallint_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_smallint_ord, b eql_v3.query_smallint_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_smallint_ord and eql_v3.query_smallint_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord_ore: eql_v3.query_smallint_ord_ore and public.eql_v3_smallint_ord (mismatched query domain). +--! @param a eql_v3.query_smallint_ord_ore left operand +--! @param b public.eql_v3_smallint_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_smallint_ord_ore, b public.eql_v3_smallint_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_smallint_ord_ore and public.eql_v3_smallint_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord_ore: public.eql_v3_smallint_ord and eql_v3.query_smallint_ord_ore (mismatched query domain). +--! @param a public.eql_v3_smallint_ord left operand +--! @param b eql_v3.query_smallint_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_smallint_ord, b eql_v3.query_smallint_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_smallint_ord and eql_v3.query_smallint_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord_ore: eql_v3.query_smallint_ord_ore and public.eql_v3_smallint_ord (mismatched query domain). +--! @param a eql_v3.query_smallint_ord_ore left operand +--! @param b public.eql_v3_smallint_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_smallint_ord_ore, b public.eql_v3_smallint_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_smallint_ord_ore and public.eql_v3_smallint_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord_ore: public.eql_v3_smallint_ord and eql_v3.query_smallint_ord_ore (mismatched query domain). +--! @param a public.eql_v3_smallint_ord left operand +--! @param b eql_v3.query_smallint_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_smallint_ord, b eql_v3.query_smallint_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_smallint_ord and eql_v3.query_smallint_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord_ore: eql_v3.query_smallint_ord_ore and public.eql_v3_smallint_ord (mismatched query domain). +--! @param a eql_v3.query_smallint_ord_ore left operand +--! @param b public.eql_v3_smallint_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_smallint_ord_ore, b public.eql_v3_smallint_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_smallint_ord_ore and public.eql_v3_smallint_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord_ore: public.eql_v3_smallint_ord_ope and eql_v3.query_smallint_ord_ore (mismatched query domain). +--! @param a public.eql_v3_smallint_ord_ope left operand +--! @param b eql_v3.query_smallint_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_smallint_ord_ope, b eql_v3.query_smallint_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_smallint_ord_ope and eql_v3.query_smallint_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord_ore: eql_v3.query_smallint_ord_ore and public.eql_v3_smallint_ord_ope (mismatched query domain). +--! @param a eql_v3.query_smallint_ord_ore left operand +--! @param b public.eql_v3_smallint_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_smallint_ord_ore, b public.eql_v3_smallint_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_smallint_ord_ore and public.eql_v3_smallint_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord_ore: public.eql_v3_smallint_ord_ope and eql_v3.query_smallint_ord_ore (mismatched query domain). +--! @param a public.eql_v3_smallint_ord_ope left operand +--! @param b eql_v3.query_smallint_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_smallint_ord_ope, b eql_v3.query_smallint_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_smallint_ord_ope and eql_v3.query_smallint_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord_ore: eql_v3.query_smallint_ord_ore and public.eql_v3_smallint_ord_ope (mismatched query domain). +--! @param a eql_v3.query_smallint_ord_ore left operand +--! @param b public.eql_v3_smallint_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_smallint_ord_ore, b public.eql_v3_smallint_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_smallint_ord_ore and public.eql_v3_smallint_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord_ore: public.eql_v3_smallint_ord_ope and eql_v3.query_smallint_ord_ore (mismatched query domain). +--! @param a public.eql_v3_smallint_ord_ope left operand +--! @param b eql_v3.query_smallint_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_smallint_ord_ope, b eql_v3.query_smallint_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_smallint_ord_ope and eql_v3.query_smallint_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord_ore: eql_v3.query_smallint_ord_ore and public.eql_v3_smallint_ord_ope (mismatched query domain). +--! @param a eql_v3.query_smallint_ord_ore left operand +--! @param b public.eql_v3_smallint_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_smallint_ord_ore, b public.eql_v3_smallint_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_smallint_ord_ore and public.eql_v3_smallint_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord_ore: public.eql_v3_smallint_ord_ope and eql_v3.query_smallint_ord_ore (mismatched query domain). +--! @param a public.eql_v3_smallint_ord_ope left operand +--! @param b eql_v3.query_smallint_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_smallint_ord_ope, b eql_v3.query_smallint_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_smallint_ord_ope and eql_v3.query_smallint_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord_ore: eql_v3.query_smallint_ord_ore and public.eql_v3_smallint_ord_ope (mismatched query domain). +--! @param a eql_v3.query_smallint_ord_ore left operand +--! @param b public.eql_v3_smallint_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_smallint_ord_ore, b public.eql_v3_smallint_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_smallint_ord_ore and public.eql_v3_smallint_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord_ore: public.eql_v3_smallint_ord_ope and eql_v3.query_smallint_ord_ore (mismatched query domain). +--! @param a public.eql_v3_smallint_ord_ope left operand +--! @param b eql_v3.query_smallint_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_smallint_ord_ope, b eql_v3.query_smallint_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_smallint_ord_ope and eql_v3.query_smallint_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord_ore: eql_v3.query_smallint_ord_ore and public.eql_v3_smallint_ord_ope (mismatched query domain). +--! @param a eql_v3.query_smallint_ord_ore left operand +--! @param b public.eql_v3_smallint_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_smallint_ord_ore, b public.eql_v3_smallint_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_smallint_ord_ore and public.eql_v3_smallint_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord_ore: public.eql_v3_smallint_ord_ope and eql_v3.query_smallint_ord_ore (mismatched query domain). +--! @param a public.eql_v3_smallint_ord_ope left operand +--! @param b eql_v3.query_smallint_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_smallint_ord_ope, b eql_v3.query_smallint_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_smallint_ord_ope and eql_v3.query_smallint_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_smallint_ord_ore: eql_v3.query_smallint_ord_ore and public.eql_v3_smallint_ord_ope (mismatched query domain). +--! @param a eql_v3.query_smallint_ord_ore left operand +--! @param b public.eql_v3_smallint_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_smallint_ord_ore, b public.eql_v3_smallint_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_smallint_ord_ore and public.eql_v3_smallint_ord_ope'; END; $$ +LANGUAGE plpgsql; diff --git a/packages/eql/src/v3/scalars/smallint/query_smallint_ord_ore_operators.sql b/packages/eql/src/v3/scalars/smallint/query_smallint_ord_ore_operators.sql index d71111770d..068ee46422 100644 --- a/packages/eql/src/v3/scalars/smallint/query_smallint_ord_ore_operators.sql +++ b/packages/eql/src/v3/scalars/smallint/query_smallint_ord_ore_operators.sql @@ -77,3 +77,143 @@ CREATE OPERATOR >= ( LEFTARG = eql_v3.query_smallint_ord_ore, RIGHTARG = public.eql_v3_smallint_ord_ore, COMMUTATOR = <=, NEGATOR = <, RESTRICT = scalargesel, JOIN = scalargejoinsel ); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_smallint_eq, RIGHTARG = eql_v3.query_smallint_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_smallint_ord_ore, RIGHTARG = public.eql_v3_smallint_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_smallint_eq, RIGHTARG = eql_v3.query_smallint_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_smallint_ord_ore, RIGHTARG = public.eql_v3_smallint_eq +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_smallint_ord, RIGHTARG = eql_v3.query_smallint_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_smallint_ord_ore, RIGHTARG = public.eql_v3_smallint_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_smallint_ord, RIGHTARG = eql_v3.query_smallint_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_smallint_ord_ore, RIGHTARG = public.eql_v3_smallint_ord +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_smallint_ord, RIGHTARG = eql_v3.query_smallint_ord_ore +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_smallint_ord_ore, RIGHTARG = public.eql_v3_smallint_ord +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_smallint_ord, RIGHTARG = eql_v3.query_smallint_ord_ore +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_smallint_ord_ore, RIGHTARG = public.eql_v3_smallint_ord +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_smallint_ord, RIGHTARG = eql_v3.query_smallint_ord_ore +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_smallint_ord_ore, RIGHTARG = public.eql_v3_smallint_ord +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_smallint_ord, RIGHTARG = eql_v3.query_smallint_ord_ore +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_smallint_ord_ore, RIGHTARG = public.eql_v3_smallint_ord +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_smallint_ord_ope, RIGHTARG = eql_v3.query_smallint_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_smallint_ord_ore, RIGHTARG = public.eql_v3_smallint_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_smallint_ord_ope, RIGHTARG = eql_v3.query_smallint_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_smallint_ord_ore, RIGHTARG = public.eql_v3_smallint_ord_ope +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_smallint_ord_ope, RIGHTARG = eql_v3.query_smallint_ord_ore +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_smallint_ord_ore, RIGHTARG = public.eql_v3_smallint_ord_ope +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_smallint_ord_ope, RIGHTARG = eql_v3.query_smallint_ord_ore +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_smallint_ord_ore, RIGHTARG = public.eql_v3_smallint_ord_ope +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_smallint_ord_ope, RIGHTARG = eql_v3.query_smallint_ord_ore +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_smallint_ord_ore, RIGHTARG = public.eql_v3_smallint_ord_ope +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_smallint_ord_ope, RIGHTARG = eql_v3.query_smallint_ord_ore +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_smallint_ord_ore, RIGHTARG = public.eql_v3_smallint_ord_ope +); diff --git a/packages/eql/src/v3/scalars/text/query_text_eq_functions.sql b/packages/eql/src/v3/scalars/text/query_text_eq_functions.sql index 0ca1704756..c69447a60c 100644 --- a/packages/eql/src/v3/scalars/text/query_text_eq_functions.sql +++ b/packages/eql/src/v3/scalars/text/query_text_eq_functions.sql @@ -45,3 +45,183 @@ AS $$ SELECT eql_v3.eq_term(a) OPERATOR(pg_catalog.<>) eql_v3.eq_term(b) $$; CREATE FUNCTION eql_v3.neq(a eql_v3.query_text_eq, b public.eql_v3_text_eq) RETURNS boolean LANGUAGE sql IMMUTABLE STRICT PARALLEL SAFE AS $$ SELECT eql_v3.eq_term(a) OPERATOR(pg_catalog.<>) eql_v3.eq_term(b) $$; + +--! @brief Unsupported operator blocker for eql_v3.query_text_eq: public.eql_v3_text_ord_ore and eql_v3.query_text_eq (mismatched query domain). +--! @param a public.eql_v3_text_ord_ore left operand +--! @param b eql_v3.query_text_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_text_ord_ore, b eql_v3.query_text_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_text_ord_ore and eql_v3.query_text_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_eq: eql_v3.query_text_eq and public.eql_v3_text_ord_ore (mismatched query domain). +--! @param a eql_v3.query_text_eq left operand +--! @param b public.eql_v3_text_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_text_eq, b public.eql_v3_text_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_text_eq and public.eql_v3_text_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_eq: public.eql_v3_text_ord_ore and eql_v3.query_text_eq (mismatched query domain). +--! @param a public.eql_v3_text_ord_ore left operand +--! @param b eql_v3.query_text_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_text_ord_ore, b eql_v3.query_text_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_text_ord_ore and eql_v3.query_text_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_eq: eql_v3.query_text_eq and public.eql_v3_text_ord_ore (mismatched query domain). +--! @param a eql_v3.query_text_eq left operand +--! @param b public.eql_v3_text_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_text_eq, b public.eql_v3_text_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_text_eq and public.eql_v3_text_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_eq: public.eql_v3_text_ord and eql_v3.query_text_eq (mismatched query domain). +--! @param a public.eql_v3_text_ord left operand +--! @param b eql_v3.query_text_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_text_ord, b eql_v3.query_text_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_text_ord and eql_v3.query_text_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_eq: eql_v3.query_text_eq and public.eql_v3_text_ord (mismatched query domain). +--! @param a eql_v3.query_text_eq left operand +--! @param b public.eql_v3_text_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_text_eq, b public.eql_v3_text_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_text_eq and public.eql_v3_text_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_eq: public.eql_v3_text_ord and eql_v3.query_text_eq (mismatched query domain). +--! @param a public.eql_v3_text_ord left operand +--! @param b eql_v3.query_text_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_text_ord, b eql_v3.query_text_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_text_ord and eql_v3.query_text_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_eq: eql_v3.query_text_eq and public.eql_v3_text_ord (mismatched query domain). +--! @param a eql_v3.query_text_eq left operand +--! @param b public.eql_v3_text_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_text_eq, b public.eql_v3_text_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_text_eq and public.eql_v3_text_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_eq: public.eql_v3_text_ord_ope and eql_v3.query_text_eq (mismatched query domain). +--! @param a public.eql_v3_text_ord_ope left operand +--! @param b eql_v3.query_text_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_text_ord_ope, b eql_v3.query_text_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_text_ord_ope and eql_v3.query_text_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_eq: eql_v3.query_text_eq and public.eql_v3_text_ord_ope (mismatched query domain). +--! @param a eql_v3.query_text_eq left operand +--! @param b public.eql_v3_text_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_text_eq, b public.eql_v3_text_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_text_eq and public.eql_v3_text_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_eq: public.eql_v3_text_ord_ope and eql_v3.query_text_eq (mismatched query domain). +--! @param a public.eql_v3_text_ord_ope left operand +--! @param b eql_v3.query_text_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_text_ord_ope, b eql_v3.query_text_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_text_ord_ope and eql_v3.query_text_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_eq: eql_v3.query_text_eq and public.eql_v3_text_ord_ope (mismatched query domain). +--! @param a eql_v3.query_text_eq left operand +--! @param b public.eql_v3_text_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_text_eq, b public.eql_v3_text_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_text_eq and public.eql_v3_text_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_eq: public.eql_v3_text_search_ore and eql_v3.query_text_eq (mismatched query domain). +--! @param a public.eql_v3_text_search_ore left operand +--! @param b eql_v3.query_text_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_text_search_ore, b eql_v3.query_text_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_text_search_ore and eql_v3.query_text_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_eq: eql_v3.query_text_eq and public.eql_v3_text_search_ore (mismatched query domain). +--! @param a eql_v3.query_text_eq left operand +--! @param b public.eql_v3_text_search_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_text_eq, b public.eql_v3_text_search_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_text_eq and public.eql_v3_text_search_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_eq: public.eql_v3_text_search_ore and eql_v3.query_text_eq (mismatched query domain). +--! @param a public.eql_v3_text_search_ore left operand +--! @param b eql_v3.query_text_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_text_search_ore, b eql_v3.query_text_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_text_search_ore and eql_v3.query_text_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_eq: eql_v3.query_text_eq and public.eql_v3_text_search_ore (mismatched query domain). +--! @param a eql_v3.query_text_eq left operand +--! @param b public.eql_v3_text_search_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_text_eq, b public.eql_v3_text_search_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_text_eq and public.eql_v3_text_search_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_eq: public.eql_v3_text_search and eql_v3.query_text_eq (mismatched query domain). +--! @param a public.eql_v3_text_search left operand +--! @param b eql_v3.query_text_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_text_search, b eql_v3.query_text_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_text_search and eql_v3.query_text_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_eq: eql_v3.query_text_eq and public.eql_v3_text_search (mismatched query domain). +--! @param a eql_v3.query_text_eq left operand +--! @param b public.eql_v3_text_search right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_text_eq, b public.eql_v3_text_search) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_text_eq and public.eql_v3_text_search'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_eq: public.eql_v3_text_search and eql_v3.query_text_eq (mismatched query domain). +--! @param a public.eql_v3_text_search left operand +--! @param b eql_v3.query_text_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_text_search, b eql_v3.query_text_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_text_search and eql_v3.query_text_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_eq: eql_v3.query_text_eq and public.eql_v3_text_search (mismatched query domain). +--! @param a eql_v3.query_text_eq left operand +--! @param b public.eql_v3_text_search right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_text_eq, b public.eql_v3_text_search) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_text_eq and public.eql_v3_text_search'; END; $$ +LANGUAGE plpgsql; diff --git a/packages/eql/src/v3/scalars/text/query_text_eq_operators.sql b/packages/eql/src/v3/scalars/text/query_text_eq_operators.sql index 912b0c0c42..6459e7d172 100644 --- a/packages/eql/src/v3/scalars/text/query_text_eq_operators.sql +++ b/packages/eql/src/v3/scalars/text/query_text_eq_operators.sql @@ -29,3 +29,103 @@ CREATE OPERATOR <> ( LEFTARG = eql_v3.query_text_eq, RIGHTARG = public.eql_v3_text_eq, COMMUTATOR = <>, NEGATOR = =, RESTRICT = neqsel, JOIN = neqjoinsel ); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_text_ord_ore, RIGHTARG = eql_v3.query_text_eq +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_text_eq, RIGHTARG = public.eql_v3_text_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_text_ord_ore, RIGHTARG = eql_v3.query_text_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_text_eq, RIGHTARG = public.eql_v3_text_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_text_ord, RIGHTARG = eql_v3.query_text_eq +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_text_eq, RIGHTARG = public.eql_v3_text_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_text_ord, RIGHTARG = eql_v3.query_text_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_text_eq, RIGHTARG = public.eql_v3_text_ord +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_text_ord_ope, RIGHTARG = eql_v3.query_text_eq +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_text_eq, RIGHTARG = public.eql_v3_text_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_text_ord_ope, RIGHTARG = eql_v3.query_text_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_text_eq, RIGHTARG = public.eql_v3_text_ord_ope +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_text_search_ore, RIGHTARG = eql_v3.query_text_eq +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_text_eq, RIGHTARG = public.eql_v3_text_search_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_text_search_ore, RIGHTARG = eql_v3.query_text_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_text_eq, RIGHTARG = public.eql_v3_text_search_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_text_search, RIGHTARG = eql_v3.query_text_eq +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_text_eq, RIGHTARG = public.eql_v3_text_search +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_text_search, RIGHTARG = eql_v3.query_text_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_text_eq, RIGHTARG = public.eql_v3_text_search +); diff --git a/packages/eql/src/v3/scalars/text/query_text_match_functions.sql b/packages/eql/src/v3/scalars/text/query_text_match_functions.sql index b64c3c06b8..1db9d2f35a 100644 --- a/packages/eql/src/v3/scalars/text/query_text_match_functions.sql +++ b/packages/eql/src/v3/scalars/text/query_text_match_functions.sql @@ -29,3 +29,39 @@ AS $$ SELECT eql_v3.match_term(a) OPERATOR(pg_catalog.@>) eql_v3.match_term(b) A CREATE FUNCTION eql_v3.matches(a eql_v3.query_text_match, b public.eql_v3_text_match) RETURNS boolean LANGUAGE sql IMMUTABLE PARALLEL SAFE AS $$ SELECT eql_v3.match_term(a) OPERATOR(pg_catalog.@>) eql_v3.match_term(b) AND (pg_catalog.cardinality(eql_v3.match_term(b)) OPERATOR(pg_catalog.>) 0 OR pg_catalog.cardinality(eql_v3.match_term(a)) OPERATOR(pg_catalog.=) 0) $$; + +--! @brief Unsupported operator blocker for eql_v3.query_text_match: public.eql_v3_text_search_ore and eql_v3.query_text_match (mismatched query domain). +--! @param a public.eql_v3_text_search_ore left operand +--! @param b eql_v3.query_text_match right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal."@@"(a public.eql_v3_text_search_ore, b eql_v3.query_text_match) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '@@', 'public.eql_v3_text_search_ore and eql_v3.query_text_match'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_match: eql_v3.query_text_match and public.eql_v3_text_search_ore (mismatched query domain). +--! @param a eql_v3.query_text_match left operand +--! @param b public.eql_v3_text_search_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal."@@"(a eql_v3.query_text_match, b public.eql_v3_text_search_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '@@', 'eql_v3.query_text_match and public.eql_v3_text_search_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_match: public.eql_v3_text_search and eql_v3.query_text_match (mismatched query domain). +--! @param a public.eql_v3_text_search left operand +--! @param b eql_v3.query_text_match right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal."@@"(a public.eql_v3_text_search, b eql_v3.query_text_match) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '@@', 'public.eql_v3_text_search and eql_v3.query_text_match'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_match: eql_v3.query_text_match and public.eql_v3_text_search (mismatched query domain). +--! @param a eql_v3.query_text_match left operand +--! @param b public.eql_v3_text_search right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal."@@"(a eql_v3.query_text_match, b public.eql_v3_text_search) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '@@', 'eql_v3.query_text_match and public.eql_v3_text_search'; END; $$ +LANGUAGE plpgsql; diff --git a/packages/eql/src/v3/scalars/text/query_text_match_operators.sql b/packages/eql/src/v3/scalars/text/query_text_match_operators.sql index 8a510552d4..cc3dbd85fe 100644 --- a/packages/eql/src/v3/scalars/text/query_text_match_operators.sql +++ b/packages/eql/src/v3/scalars/text/query_text_match_operators.sql @@ -17,3 +17,23 @@ CREATE OPERATOR @@ ( LEFTARG = eql_v3.query_text_match, RIGHTARG = public.eql_v3_text_match, RESTRICT = contsel, JOIN = contjoinsel ); + +CREATE OPERATOR @@ ( + FUNCTION = eql_v3_internal."@@", + LEFTARG = public.eql_v3_text_search_ore, RIGHTARG = eql_v3.query_text_match +); + +CREATE OPERATOR @@ ( + FUNCTION = eql_v3_internal."@@", + LEFTARG = eql_v3.query_text_match, RIGHTARG = public.eql_v3_text_search_ore +); + +CREATE OPERATOR @@ ( + FUNCTION = eql_v3_internal."@@", + LEFTARG = public.eql_v3_text_search, RIGHTARG = eql_v3.query_text_match +); + +CREATE OPERATOR @@ ( + FUNCTION = eql_v3_internal."@@", + LEFTARG = eql_v3.query_text_match, RIGHTARG = public.eql_v3_text_search +); diff --git a/packages/eql/src/v3/scalars/text/query_text_ord_functions.sql b/packages/eql/src/v3/scalars/text/query_text_ord_functions.sql index ef850d88f0..69abcc24b0 100644 --- a/packages/eql/src/v3/scalars/text/query_text_ord_functions.sql +++ b/packages/eql/src/v3/scalars/text/query_text_ord_functions.sql @@ -117,3 +117,471 @@ AS $$ SELECT eql_v3.ord_term(a) OPERATOR(pg_catalog.>=) eql_v3.ord_term(b) $$; CREATE FUNCTION eql_v3.gte(a eql_v3.query_text_ord, b public.eql_v3_text_ord) RETURNS boolean LANGUAGE sql IMMUTABLE STRICT PARALLEL SAFE AS $$ SELECT eql_v3.ord_term(a) OPERATOR(pg_catalog.>=) eql_v3.ord_term(b) $$; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord: public.eql_v3_text_eq and eql_v3.query_text_ord (mismatched query domain). +--! @param a public.eql_v3_text_eq left operand +--! @param b eql_v3.query_text_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_text_eq, b eql_v3.query_text_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_text_eq and eql_v3.query_text_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord: eql_v3.query_text_ord and public.eql_v3_text_eq (mismatched query domain). +--! @param a eql_v3.query_text_ord left operand +--! @param b public.eql_v3_text_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_text_ord, b public.eql_v3_text_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_text_ord and public.eql_v3_text_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord: public.eql_v3_text_eq and eql_v3.query_text_ord (mismatched query domain). +--! @param a public.eql_v3_text_eq left operand +--! @param b eql_v3.query_text_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_text_eq, b eql_v3.query_text_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_text_eq and eql_v3.query_text_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord: eql_v3.query_text_ord and public.eql_v3_text_eq (mismatched query domain). +--! @param a eql_v3.query_text_ord left operand +--! @param b public.eql_v3_text_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_text_ord, b public.eql_v3_text_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_text_ord and public.eql_v3_text_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord: public.eql_v3_text_ord_ore and eql_v3.query_text_ord (mismatched query domain). +--! @param a public.eql_v3_text_ord_ore left operand +--! @param b eql_v3.query_text_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_text_ord_ore, b eql_v3.query_text_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_text_ord_ore and eql_v3.query_text_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord: eql_v3.query_text_ord and public.eql_v3_text_ord_ore (mismatched query domain). +--! @param a eql_v3.query_text_ord left operand +--! @param b public.eql_v3_text_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_text_ord, b public.eql_v3_text_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_text_ord and public.eql_v3_text_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord: public.eql_v3_text_ord_ore and eql_v3.query_text_ord (mismatched query domain). +--! @param a public.eql_v3_text_ord_ore left operand +--! @param b eql_v3.query_text_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_text_ord_ore, b eql_v3.query_text_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_text_ord_ore and eql_v3.query_text_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord: eql_v3.query_text_ord and public.eql_v3_text_ord_ore (mismatched query domain). +--! @param a eql_v3.query_text_ord left operand +--! @param b public.eql_v3_text_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_text_ord, b public.eql_v3_text_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_text_ord and public.eql_v3_text_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord: public.eql_v3_text_ord_ore and eql_v3.query_text_ord (mismatched query domain). +--! @param a public.eql_v3_text_ord_ore left operand +--! @param b eql_v3.query_text_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_text_ord_ore, b eql_v3.query_text_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_text_ord_ore and eql_v3.query_text_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord: eql_v3.query_text_ord and public.eql_v3_text_ord_ore (mismatched query domain). +--! @param a eql_v3.query_text_ord left operand +--! @param b public.eql_v3_text_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_text_ord, b public.eql_v3_text_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_text_ord and public.eql_v3_text_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord: public.eql_v3_text_ord_ore and eql_v3.query_text_ord (mismatched query domain). +--! @param a public.eql_v3_text_ord_ore left operand +--! @param b eql_v3.query_text_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_text_ord_ore, b eql_v3.query_text_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_text_ord_ore and eql_v3.query_text_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord: eql_v3.query_text_ord and public.eql_v3_text_ord_ore (mismatched query domain). +--! @param a eql_v3.query_text_ord left operand +--! @param b public.eql_v3_text_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_text_ord, b public.eql_v3_text_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_text_ord and public.eql_v3_text_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord: public.eql_v3_text_ord_ore and eql_v3.query_text_ord (mismatched query domain). +--! @param a public.eql_v3_text_ord_ore left operand +--! @param b eql_v3.query_text_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_text_ord_ore, b eql_v3.query_text_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_text_ord_ore and eql_v3.query_text_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord: eql_v3.query_text_ord and public.eql_v3_text_ord_ore (mismatched query domain). +--! @param a eql_v3.query_text_ord left operand +--! @param b public.eql_v3_text_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_text_ord, b public.eql_v3_text_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_text_ord and public.eql_v3_text_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord: public.eql_v3_text_ord_ore and eql_v3.query_text_ord (mismatched query domain). +--! @param a public.eql_v3_text_ord_ore left operand +--! @param b eql_v3.query_text_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_text_ord_ore, b eql_v3.query_text_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_text_ord_ore and eql_v3.query_text_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord: eql_v3.query_text_ord and public.eql_v3_text_ord_ore (mismatched query domain). +--! @param a eql_v3.query_text_ord left operand +--! @param b public.eql_v3_text_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_text_ord, b public.eql_v3_text_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_text_ord and public.eql_v3_text_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord: public.eql_v3_text_ord_ope and eql_v3.query_text_ord (mismatched query domain). +--! @param a public.eql_v3_text_ord_ope left operand +--! @param b eql_v3.query_text_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_text_ord_ope, b eql_v3.query_text_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_text_ord_ope and eql_v3.query_text_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord: eql_v3.query_text_ord and public.eql_v3_text_ord_ope (mismatched query domain). +--! @param a eql_v3.query_text_ord left operand +--! @param b public.eql_v3_text_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_text_ord, b public.eql_v3_text_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_text_ord and public.eql_v3_text_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord: public.eql_v3_text_ord_ope and eql_v3.query_text_ord (mismatched query domain). +--! @param a public.eql_v3_text_ord_ope left operand +--! @param b eql_v3.query_text_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_text_ord_ope, b eql_v3.query_text_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_text_ord_ope and eql_v3.query_text_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord: eql_v3.query_text_ord and public.eql_v3_text_ord_ope (mismatched query domain). +--! @param a eql_v3.query_text_ord left operand +--! @param b public.eql_v3_text_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_text_ord, b public.eql_v3_text_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_text_ord and public.eql_v3_text_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord: public.eql_v3_text_ord_ope and eql_v3.query_text_ord (mismatched query domain). +--! @param a public.eql_v3_text_ord_ope left operand +--! @param b eql_v3.query_text_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_text_ord_ope, b eql_v3.query_text_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_text_ord_ope and eql_v3.query_text_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord: eql_v3.query_text_ord and public.eql_v3_text_ord_ope (mismatched query domain). +--! @param a eql_v3.query_text_ord left operand +--! @param b public.eql_v3_text_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_text_ord, b public.eql_v3_text_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_text_ord and public.eql_v3_text_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord: public.eql_v3_text_ord_ope and eql_v3.query_text_ord (mismatched query domain). +--! @param a public.eql_v3_text_ord_ope left operand +--! @param b eql_v3.query_text_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_text_ord_ope, b eql_v3.query_text_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_text_ord_ope and eql_v3.query_text_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord: eql_v3.query_text_ord and public.eql_v3_text_ord_ope (mismatched query domain). +--! @param a eql_v3.query_text_ord left operand +--! @param b public.eql_v3_text_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_text_ord, b public.eql_v3_text_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_text_ord and public.eql_v3_text_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord: public.eql_v3_text_ord_ope and eql_v3.query_text_ord (mismatched query domain). +--! @param a public.eql_v3_text_ord_ope left operand +--! @param b eql_v3.query_text_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_text_ord_ope, b eql_v3.query_text_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_text_ord_ope and eql_v3.query_text_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord: eql_v3.query_text_ord and public.eql_v3_text_ord_ope (mismatched query domain). +--! @param a eql_v3.query_text_ord left operand +--! @param b public.eql_v3_text_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_text_ord, b public.eql_v3_text_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_text_ord and public.eql_v3_text_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord: public.eql_v3_text_ord_ope and eql_v3.query_text_ord (mismatched query domain). +--! @param a public.eql_v3_text_ord_ope left operand +--! @param b eql_v3.query_text_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_text_ord_ope, b eql_v3.query_text_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_text_ord_ope and eql_v3.query_text_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord: eql_v3.query_text_ord and public.eql_v3_text_ord_ope (mismatched query domain). +--! @param a eql_v3.query_text_ord left operand +--! @param b public.eql_v3_text_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_text_ord, b public.eql_v3_text_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_text_ord and public.eql_v3_text_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord: public.eql_v3_text_search_ore and eql_v3.query_text_ord (mismatched query domain). +--! @param a public.eql_v3_text_search_ore left operand +--! @param b eql_v3.query_text_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_text_search_ore, b eql_v3.query_text_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_text_search_ore and eql_v3.query_text_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord: eql_v3.query_text_ord and public.eql_v3_text_search_ore (mismatched query domain). +--! @param a eql_v3.query_text_ord left operand +--! @param b public.eql_v3_text_search_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_text_ord, b public.eql_v3_text_search_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_text_ord and public.eql_v3_text_search_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord: public.eql_v3_text_search_ore and eql_v3.query_text_ord (mismatched query domain). +--! @param a public.eql_v3_text_search_ore left operand +--! @param b eql_v3.query_text_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_text_search_ore, b eql_v3.query_text_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_text_search_ore and eql_v3.query_text_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord: eql_v3.query_text_ord and public.eql_v3_text_search_ore (mismatched query domain). +--! @param a eql_v3.query_text_ord left operand +--! @param b public.eql_v3_text_search_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_text_ord, b public.eql_v3_text_search_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_text_ord and public.eql_v3_text_search_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord: public.eql_v3_text_search_ore and eql_v3.query_text_ord (mismatched query domain). +--! @param a public.eql_v3_text_search_ore left operand +--! @param b eql_v3.query_text_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_text_search_ore, b eql_v3.query_text_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_text_search_ore and eql_v3.query_text_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord: eql_v3.query_text_ord and public.eql_v3_text_search_ore (mismatched query domain). +--! @param a eql_v3.query_text_ord left operand +--! @param b public.eql_v3_text_search_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_text_ord, b public.eql_v3_text_search_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_text_ord and public.eql_v3_text_search_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord: public.eql_v3_text_search_ore and eql_v3.query_text_ord (mismatched query domain). +--! @param a public.eql_v3_text_search_ore left operand +--! @param b eql_v3.query_text_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_text_search_ore, b eql_v3.query_text_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_text_search_ore and eql_v3.query_text_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord: eql_v3.query_text_ord and public.eql_v3_text_search_ore (mismatched query domain). +--! @param a eql_v3.query_text_ord left operand +--! @param b public.eql_v3_text_search_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_text_ord, b public.eql_v3_text_search_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_text_ord and public.eql_v3_text_search_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord: public.eql_v3_text_search_ore and eql_v3.query_text_ord (mismatched query domain). +--! @param a public.eql_v3_text_search_ore left operand +--! @param b eql_v3.query_text_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_text_search_ore, b eql_v3.query_text_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_text_search_ore and eql_v3.query_text_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord: eql_v3.query_text_ord and public.eql_v3_text_search_ore (mismatched query domain). +--! @param a eql_v3.query_text_ord left operand +--! @param b public.eql_v3_text_search_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_text_ord, b public.eql_v3_text_search_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_text_ord and public.eql_v3_text_search_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord: public.eql_v3_text_search_ore and eql_v3.query_text_ord (mismatched query domain). +--! @param a public.eql_v3_text_search_ore left operand +--! @param b eql_v3.query_text_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_text_search_ore, b eql_v3.query_text_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_text_search_ore and eql_v3.query_text_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord: eql_v3.query_text_ord and public.eql_v3_text_search_ore (mismatched query domain). +--! @param a eql_v3.query_text_ord left operand +--! @param b public.eql_v3_text_search_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_text_ord, b public.eql_v3_text_search_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_text_ord and public.eql_v3_text_search_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord: public.eql_v3_text_search and eql_v3.query_text_ord (mismatched query domain). +--! @param a public.eql_v3_text_search left operand +--! @param b eql_v3.query_text_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_text_search, b eql_v3.query_text_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_text_search and eql_v3.query_text_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord: eql_v3.query_text_ord and public.eql_v3_text_search (mismatched query domain). +--! @param a eql_v3.query_text_ord left operand +--! @param b public.eql_v3_text_search right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_text_ord, b public.eql_v3_text_search) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_text_ord and public.eql_v3_text_search'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord: public.eql_v3_text_search and eql_v3.query_text_ord (mismatched query domain). +--! @param a public.eql_v3_text_search left operand +--! @param b eql_v3.query_text_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_text_search, b eql_v3.query_text_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_text_search and eql_v3.query_text_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord: eql_v3.query_text_ord and public.eql_v3_text_search (mismatched query domain). +--! @param a eql_v3.query_text_ord left operand +--! @param b public.eql_v3_text_search right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_text_ord, b public.eql_v3_text_search) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_text_ord and public.eql_v3_text_search'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord: public.eql_v3_text_search and eql_v3.query_text_ord (mismatched query domain). +--! @param a public.eql_v3_text_search left operand +--! @param b eql_v3.query_text_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_text_search, b eql_v3.query_text_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_text_search and eql_v3.query_text_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord: eql_v3.query_text_ord and public.eql_v3_text_search (mismatched query domain). +--! @param a eql_v3.query_text_ord left operand +--! @param b public.eql_v3_text_search right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_text_ord, b public.eql_v3_text_search) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_text_ord and public.eql_v3_text_search'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord: public.eql_v3_text_search and eql_v3.query_text_ord (mismatched query domain). +--! @param a public.eql_v3_text_search left operand +--! @param b eql_v3.query_text_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_text_search, b eql_v3.query_text_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_text_search and eql_v3.query_text_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord: eql_v3.query_text_ord and public.eql_v3_text_search (mismatched query domain). +--! @param a eql_v3.query_text_ord left operand +--! @param b public.eql_v3_text_search right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_text_ord, b public.eql_v3_text_search) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_text_ord and public.eql_v3_text_search'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord: public.eql_v3_text_search and eql_v3.query_text_ord (mismatched query domain). +--! @param a public.eql_v3_text_search left operand +--! @param b eql_v3.query_text_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_text_search, b eql_v3.query_text_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_text_search and eql_v3.query_text_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord: eql_v3.query_text_ord and public.eql_v3_text_search (mismatched query domain). +--! @param a eql_v3.query_text_ord left operand +--! @param b public.eql_v3_text_search right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_text_ord, b public.eql_v3_text_search) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_text_ord and public.eql_v3_text_search'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord: public.eql_v3_text_search and eql_v3.query_text_ord (mismatched query domain). +--! @param a public.eql_v3_text_search left operand +--! @param b eql_v3.query_text_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_text_search, b eql_v3.query_text_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_text_search and eql_v3.query_text_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord: eql_v3.query_text_ord and public.eql_v3_text_search (mismatched query domain). +--! @param a eql_v3.query_text_ord left operand +--! @param b public.eql_v3_text_search right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_text_ord, b public.eql_v3_text_search) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_text_ord and public.eql_v3_text_search'; END; $$ +LANGUAGE plpgsql; diff --git a/packages/eql/src/v3/scalars/text/query_text_ord_ope_functions.sql b/packages/eql/src/v3/scalars/text/query_text_ord_ope_functions.sql index ea79c5090e..9f5c17adae 100644 --- a/packages/eql/src/v3/scalars/text/query_text_ord_ope_functions.sql +++ b/packages/eql/src/v3/scalars/text/query_text_ord_ope_functions.sql @@ -117,3 +117,471 @@ AS $$ SELECT eql_v3.ord_term(a) OPERATOR(pg_catalog.>=) eql_v3.ord_term(b) $$; CREATE FUNCTION eql_v3.gte(a eql_v3.query_text_ord_ope, b public.eql_v3_text_ord_ope) RETURNS boolean LANGUAGE sql IMMUTABLE STRICT PARALLEL SAFE AS $$ SELECT eql_v3.ord_term(a) OPERATOR(pg_catalog.>=) eql_v3.ord_term(b) $$; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ope: public.eql_v3_text_eq and eql_v3.query_text_ord_ope (mismatched query domain). +--! @param a public.eql_v3_text_eq left operand +--! @param b eql_v3.query_text_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_text_eq, b eql_v3.query_text_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_text_eq and eql_v3.query_text_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ope: eql_v3.query_text_ord_ope and public.eql_v3_text_eq (mismatched query domain). +--! @param a eql_v3.query_text_ord_ope left operand +--! @param b public.eql_v3_text_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_text_ord_ope, b public.eql_v3_text_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_text_ord_ope and public.eql_v3_text_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ope: public.eql_v3_text_eq and eql_v3.query_text_ord_ope (mismatched query domain). +--! @param a public.eql_v3_text_eq left operand +--! @param b eql_v3.query_text_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_text_eq, b eql_v3.query_text_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_text_eq and eql_v3.query_text_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ope: eql_v3.query_text_ord_ope and public.eql_v3_text_eq (mismatched query domain). +--! @param a eql_v3.query_text_ord_ope left operand +--! @param b public.eql_v3_text_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_text_ord_ope, b public.eql_v3_text_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_text_ord_ope and public.eql_v3_text_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ope: public.eql_v3_text_ord_ore and eql_v3.query_text_ord_ope (mismatched query domain). +--! @param a public.eql_v3_text_ord_ore left operand +--! @param b eql_v3.query_text_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_text_ord_ore, b eql_v3.query_text_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_text_ord_ore and eql_v3.query_text_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ope: eql_v3.query_text_ord_ope and public.eql_v3_text_ord_ore (mismatched query domain). +--! @param a eql_v3.query_text_ord_ope left operand +--! @param b public.eql_v3_text_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_text_ord_ope, b public.eql_v3_text_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_text_ord_ope and public.eql_v3_text_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ope: public.eql_v3_text_ord_ore and eql_v3.query_text_ord_ope (mismatched query domain). +--! @param a public.eql_v3_text_ord_ore left operand +--! @param b eql_v3.query_text_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_text_ord_ore, b eql_v3.query_text_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_text_ord_ore and eql_v3.query_text_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ope: eql_v3.query_text_ord_ope and public.eql_v3_text_ord_ore (mismatched query domain). +--! @param a eql_v3.query_text_ord_ope left operand +--! @param b public.eql_v3_text_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_text_ord_ope, b public.eql_v3_text_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_text_ord_ope and public.eql_v3_text_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ope: public.eql_v3_text_ord_ore and eql_v3.query_text_ord_ope (mismatched query domain). +--! @param a public.eql_v3_text_ord_ore left operand +--! @param b eql_v3.query_text_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_text_ord_ore, b eql_v3.query_text_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_text_ord_ore and eql_v3.query_text_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ope: eql_v3.query_text_ord_ope and public.eql_v3_text_ord_ore (mismatched query domain). +--! @param a eql_v3.query_text_ord_ope left operand +--! @param b public.eql_v3_text_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_text_ord_ope, b public.eql_v3_text_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_text_ord_ope and public.eql_v3_text_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ope: public.eql_v3_text_ord_ore and eql_v3.query_text_ord_ope (mismatched query domain). +--! @param a public.eql_v3_text_ord_ore left operand +--! @param b eql_v3.query_text_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_text_ord_ore, b eql_v3.query_text_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_text_ord_ore and eql_v3.query_text_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ope: eql_v3.query_text_ord_ope and public.eql_v3_text_ord_ore (mismatched query domain). +--! @param a eql_v3.query_text_ord_ope left operand +--! @param b public.eql_v3_text_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_text_ord_ope, b public.eql_v3_text_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_text_ord_ope and public.eql_v3_text_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ope: public.eql_v3_text_ord_ore and eql_v3.query_text_ord_ope (mismatched query domain). +--! @param a public.eql_v3_text_ord_ore left operand +--! @param b eql_v3.query_text_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_text_ord_ore, b eql_v3.query_text_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_text_ord_ore and eql_v3.query_text_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ope: eql_v3.query_text_ord_ope and public.eql_v3_text_ord_ore (mismatched query domain). +--! @param a eql_v3.query_text_ord_ope left operand +--! @param b public.eql_v3_text_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_text_ord_ope, b public.eql_v3_text_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_text_ord_ope and public.eql_v3_text_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ope: public.eql_v3_text_ord_ore and eql_v3.query_text_ord_ope (mismatched query domain). +--! @param a public.eql_v3_text_ord_ore left operand +--! @param b eql_v3.query_text_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_text_ord_ore, b eql_v3.query_text_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_text_ord_ore and eql_v3.query_text_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ope: eql_v3.query_text_ord_ope and public.eql_v3_text_ord_ore (mismatched query domain). +--! @param a eql_v3.query_text_ord_ope left operand +--! @param b public.eql_v3_text_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_text_ord_ope, b public.eql_v3_text_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_text_ord_ope and public.eql_v3_text_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ope: public.eql_v3_text_ord and eql_v3.query_text_ord_ope (mismatched query domain). +--! @param a public.eql_v3_text_ord left operand +--! @param b eql_v3.query_text_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_text_ord, b eql_v3.query_text_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_text_ord and eql_v3.query_text_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ope: eql_v3.query_text_ord_ope and public.eql_v3_text_ord (mismatched query domain). +--! @param a eql_v3.query_text_ord_ope left operand +--! @param b public.eql_v3_text_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_text_ord_ope, b public.eql_v3_text_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_text_ord_ope and public.eql_v3_text_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ope: public.eql_v3_text_ord and eql_v3.query_text_ord_ope (mismatched query domain). +--! @param a public.eql_v3_text_ord left operand +--! @param b eql_v3.query_text_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_text_ord, b eql_v3.query_text_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_text_ord and eql_v3.query_text_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ope: eql_v3.query_text_ord_ope and public.eql_v3_text_ord (mismatched query domain). +--! @param a eql_v3.query_text_ord_ope left operand +--! @param b public.eql_v3_text_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_text_ord_ope, b public.eql_v3_text_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_text_ord_ope and public.eql_v3_text_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ope: public.eql_v3_text_ord and eql_v3.query_text_ord_ope (mismatched query domain). +--! @param a public.eql_v3_text_ord left operand +--! @param b eql_v3.query_text_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_text_ord, b eql_v3.query_text_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_text_ord and eql_v3.query_text_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ope: eql_v3.query_text_ord_ope and public.eql_v3_text_ord (mismatched query domain). +--! @param a eql_v3.query_text_ord_ope left operand +--! @param b public.eql_v3_text_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_text_ord_ope, b public.eql_v3_text_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_text_ord_ope and public.eql_v3_text_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ope: public.eql_v3_text_ord and eql_v3.query_text_ord_ope (mismatched query domain). +--! @param a public.eql_v3_text_ord left operand +--! @param b eql_v3.query_text_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_text_ord, b eql_v3.query_text_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_text_ord and eql_v3.query_text_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ope: eql_v3.query_text_ord_ope and public.eql_v3_text_ord (mismatched query domain). +--! @param a eql_v3.query_text_ord_ope left operand +--! @param b public.eql_v3_text_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_text_ord_ope, b public.eql_v3_text_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_text_ord_ope and public.eql_v3_text_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ope: public.eql_v3_text_ord and eql_v3.query_text_ord_ope (mismatched query domain). +--! @param a public.eql_v3_text_ord left operand +--! @param b eql_v3.query_text_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_text_ord, b eql_v3.query_text_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_text_ord and eql_v3.query_text_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ope: eql_v3.query_text_ord_ope and public.eql_v3_text_ord (mismatched query domain). +--! @param a eql_v3.query_text_ord_ope left operand +--! @param b public.eql_v3_text_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_text_ord_ope, b public.eql_v3_text_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_text_ord_ope and public.eql_v3_text_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ope: public.eql_v3_text_ord and eql_v3.query_text_ord_ope (mismatched query domain). +--! @param a public.eql_v3_text_ord left operand +--! @param b eql_v3.query_text_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_text_ord, b eql_v3.query_text_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_text_ord and eql_v3.query_text_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ope: eql_v3.query_text_ord_ope and public.eql_v3_text_ord (mismatched query domain). +--! @param a eql_v3.query_text_ord_ope left operand +--! @param b public.eql_v3_text_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_text_ord_ope, b public.eql_v3_text_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_text_ord_ope and public.eql_v3_text_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ope: public.eql_v3_text_search_ore and eql_v3.query_text_ord_ope (mismatched query domain). +--! @param a public.eql_v3_text_search_ore left operand +--! @param b eql_v3.query_text_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_text_search_ore, b eql_v3.query_text_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_text_search_ore and eql_v3.query_text_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ope: eql_v3.query_text_ord_ope and public.eql_v3_text_search_ore (mismatched query domain). +--! @param a eql_v3.query_text_ord_ope left operand +--! @param b public.eql_v3_text_search_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_text_ord_ope, b public.eql_v3_text_search_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_text_ord_ope and public.eql_v3_text_search_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ope: public.eql_v3_text_search_ore and eql_v3.query_text_ord_ope (mismatched query domain). +--! @param a public.eql_v3_text_search_ore left operand +--! @param b eql_v3.query_text_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_text_search_ore, b eql_v3.query_text_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_text_search_ore and eql_v3.query_text_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ope: eql_v3.query_text_ord_ope and public.eql_v3_text_search_ore (mismatched query domain). +--! @param a eql_v3.query_text_ord_ope left operand +--! @param b public.eql_v3_text_search_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_text_ord_ope, b public.eql_v3_text_search_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_text_ord_ope and public.eql_v3_text_search_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ope: public.eql_v3_text_search_ore and eql_v3.query_text_ord_ope (mismatched query domain). +--! @param a public.eql_v3_text_search_ore left operand +--! @param b eql_v3.query_text_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_text_search_ore, b eql_v3.query_text_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_text_search_ore and eql_v3.query_text_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ope: eql_v3.query_text_ord_ope and public.eql_v3_text_search_ore (mismatched query domain). +--! @param a eql_v3.query_text_ord_ope left operand +--! @param b public.eql_v3_text_search_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_text_ord_ope, b public.eql_v3_text_search_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_text_ord_ope and public.eql_v3_text_search_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ope: public.eql_v3_text_search_ore and eql_v3.query_text_ord_ope (mismatched query domain). +--! @param a public.eql_v3_text_search_ore left operand +--! @param b eql_v3.query_text_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_text_search_ore, b eql_v3.query_text_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_text_search_ore and eql_v3.query_text_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ope: eql_v3.query_text_ord_ope and public.eql_v3_text_search_ore (mismatched query domain). +--! @param a eql_v3.query_text_ord_ope left operand +--! @param b public.eql_v3_text_search_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_text_ord_ope, b public.eql_v3_text_search_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_text_ord_ope and public.eql_v3_text_search_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ope: public.eql_v3_text_search_ore and eql_v3.query_text_ord_ope (mismatched query domain). +--! @param a public.eql_v3_text_search_ore left operand +--! @param b eql_v3.query_text_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_text_search_ore, b eql_v3.query_text_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_text_search_ore and eql_v3.query_text_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ope: eql_v3.query_text_ord_ope and public.eql_v3_text_search_ore (mismatched query domain). +--! @param a eql_v3.query_text_ord_ope left operand +--! @param b public.eql_v3_text_search_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_text_ord_ope, b public.eql_v3_text_search_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_text_ord_ope and public.eql_v3_text_search_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ope: public.eql_v3_text_search_ore and eql_v3.query_text_ord_ope (mismatched query domain). +--! @param a public.eql_v3_text_search_ore left operand +--! @param b eql_v3.query_text_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_text_search_ore, b eql_v3.query_text_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_text_search_ore and eql_v3.query_text_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ope: eql_v3.query_text_ord_ope and public.eql_v3_text_search_ore (mismatched query domain). +--! @param a eql_v3.query_text_ord_ope left operand +--! @param b public.eql_v3_text_search_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_text_ord_ope, b public.eql_v3_text_search_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_text_ord_ope and public.eql_v3_text_search_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ope: public.eql_v3_text_search and eql_v3.query_text_ord_ope (mismatched query domain). +--! @param a public.eql_v3_text_search left operand +--! @param b eql_v3.query_text_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_text_search, b eql_v3.query_text_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_text_search and eql_v3.query_text_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ope: eql_v3.query_text_ord_ope and public.eql_v3_text_search (mismatched query domain). +--! @param a eql_v3.query_text_ord_ope left operand +--! @param b public.eql_v3_text_search right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_text_ord_ope, b public.eql_v3_text_search) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_text_ord_ope and public.eql_v3_text_search'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ope: public.eql_v3_text_search and eql_v3.query_text_ord_ope (mismatched query domain). +--! @param a public.eql_v3_text_search left operand +--! @param b eql_v3.query_text_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_text_search, b eql_v3.query_text_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_text_search and eql_v3.query_text_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ope: eql_v3.query_text_ord_ope and public.eql_v3_text_search (mismatched query domain). +--! @param a eql_v3.query_text_ord_ope left operand +--! @param b public.eql_v3_text_search right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_text_ord_ope, b public.eql_v3_text_search) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_text_ord_ope and public.eql_v3_text_search'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ope: public.eql_v3_text_search and eql_v3.query_text_ord_ope (mismatched query domain). +--! @param a public.eql_v3_text_search left operand +--! @param b eql_v3.query_text_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_text_search, b eql_v3.query_text_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_text_search and eql_v3.query_text_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ope: eql_v3.query_text_ord_ope and public.eql_v3_text_search (mismatched query domain). +--! @param a eql_v3.query_text_ord_ope left operand +--! @param b public.eql_v3_text_search right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_text_ord_ope, b public.eql_v3_text_search) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_text_ord_ope and public.eql_v3_text_search'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ope: public.eql_v3_text_search and eql_v3.query_text_ord_ope (mismatched query domain). +--! @param a public.eql_v3_text_search left operand +--! @param b eql_v3.query_text_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_text_search, b eql_v3.query_text_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_text_search and eql_v3.query_text_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ope: eql_v3.query_text_ord_ope and public.eql_v3_text_search (mismatched query domain). +--! @param a eql_v3.query_text_ord_ope left operand +--! @param b public.eql_v3_text_search right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_text_ord_ope, b public.eql_v3_text_search) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_text_ord_ope and public.eql_v3_text_search'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ope: public.eql_v3_text_search and eql_v3.query_text_ord_ope (mismatched query domain). +--! @param a public.eql_v3_text_search left operand +--! @param b eql_v3.query_text_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_text_search, b eql_v3.query_text_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_text_search and eql_v3.query_text_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ope: eql_v3.query_text_ord_ope and public.eql_v3_text_search (mismatched query domain). +--! @param a eql_v3.query_text_ord_ope left operand +--! @param b public.eql_v3_text_search right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_text_ord_ope, b public.eql_v3_text_search) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_text_ord_ope and public.eql_v3_text_search'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ope: public.eql_v3_text_search and eql_v3.query_text_ord_ope (mismatched query domain). +--! @param a public.eql_v3_text_search left operand +--! @param b eql_v3.query_text_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_text_search, b eql_v3.query_text_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_text_search and eql_v3.query_text_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ope: eql_v3.query_text_ord_ope and public.eql_v3_text_search (mismatched query domain). +--! @param a eql_v3.query_text_ord_ope left operand +--! @param b public.eql_v3_text_search right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_text_ord_ope, b public.eql_v3_text_search) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_text_ord_ope and public.eql_v3_text_search'; END; $$ +LANGUAGE plpgsql; diff --git a/packages/eql/src/v3/scalars/text/query_text_ord_ope_operators.sql b/packages/eql/src/v3/scalars/text/query_text_ord_ope_operators.sql index 50f68e8b72..70115eda80 100644 --- a/packages/eql/src/v3/scalars/text/query_text_ord_ope_operators.sql +++ b/packages/eql/src/v3/scalars/text/query_text_ord_ope_operators.sql @@ -77,3 +77,263 @@ CREATE OPERATOR >= ( LEFTARG = eql_v3.query_text_ord_ope, RIGHTARG = public.eql_v3_text_ord_ope, COMMUTATOR = <=, NEGATOR = <, RESTRICT = scalargesel, JOIN = scalargejoinsel ); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_text_eq, RIGHTARG = eql_v3.query_text_ord_ope +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_text_ord_ope, RIGHTARG = public.eql_v3_text_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_text_eq, RIGHTARG = eql_v3.query_text_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_text_ord_ope, RIGHTARG = public.eql_v3_text_eq +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_text_ord_ore, RIGHTARG = eql_v3.query_text_ord_ope +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_text_ord_ope, RIGHTARG = public.eql_v3_text_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_text_ord_ore, RIGHTARG = eql_v3.query_text_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_text_ord_ope, RIGHTARG = public.eql_v3_text_ord_ore +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_text_ord_ore, RIGHTARG = eql_v3.query_text_ord_ope +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_text_ord_ope, RIGHTARG = public.eql_v3_text_ord_ore +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_text_ord_ore, RIGHTARG = eql_v3.query_text_ord_ope +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_text_ord_ope, RIGHTARG = public.eql_v3_text_ord_ore +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_text_ord_ore, RIGHTARG = eql_v3.query_text_ord_ope +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_text_ord_ope, RIGHTARG = public.eql_v3_text_ord_ore +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_text_ord_ore, RIGHTARG = eql_v3.query_text_ord_ope +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_text_ord_ope, RIGHTARG = public.eql_v3_text_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_text_ord, RIGHTARG = eql_v3.query_text_ord_ope +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_text_ord_ope, RIGHTARG = public.eql_v3_text_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_text_ord, RIGHTARG = eql_v3.query_text_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_text_ord_ope, RIGHTARG = public.eql_v3_text_ord +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_text_ord, RIGHTARG = eql_v3.query_text_ord_ope +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_text_ord_ope, RIGHTARG = public.eql_v3_text_ord +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_text_ord, RIGHTARG = eql_v3.query_text_ord_ope +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_text_ord_ope, RIGHTARG = public.eql_v3_text_ord +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_text_ord, RIGHTARG = eql_v3.query_text_ord_ope +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_text_ord_ope, RIGHTARG = public.eql_v3_text_ord +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_text_ord, RIGHTARG = eql_v3.query_text_ord_ope +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_text_ord_ope, RIGHTARG = public.eql_v3_text_ord +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_text_search_ore, RIGHTARG = eql_v3.query_text_ord_ope +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_text_ord_ope, RIGHTARG = public.eql_v3_text_search_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_text_search_ore, RIGHTARG = eql_v3.query_text_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_text_ord_ope, RIGHTARG = public.eql_v3_text_search_ore +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_text_search_ore, RIGHTARG = eql_v3.query_text_ord_ope +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_text_ord_ope, RIGHTARG = public.eql_v3_text_search_ore +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_text_search_ore, RIGHTARG = eql_v3.query_text_ord_ope +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_text_ord_ope, RIGHTARG = public.eql_v3_text_search_ore +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_text_search_ore, RIGHTARG = eql_v3.query_text_ord_ope +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_text_ord_ope, RIGHTARG = public.eql_v3_text_search_ore +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_text_search_ore, RIGHTARG = eql_v3.query_text_ord_ope +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_text_ord_ope, RIGHTARG = public.eql_v3_text_search_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_text_search, RIGHTARG = eql_v3.query_text_ord_ope +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_text_ord_ope, RIGHTARG = public.eql_v3_text_search +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_text_search, RIGHTARG = eql_v3.query_text_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_text_ord_ope, RIGHTARG = public.eql_v3_text_search +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_text_search, RIGHTARG = eql_v3.query_text_ord_ope +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_text_ord_ope, RIGHTARG = public.eql_v3_text_search +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_text_search, RIGHTARG = eql_v3.query_text_ord_ope +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_text_ord_ope, RIGHTARG = public.eql_v3_text_search +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_text_search, RIGHTARG = eql_v3.query_text_ord_ope +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_text_ord_ope, RIGHTARG = public.eql_v3_text_search +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_text_search, RIGHTARG = eql_v3.query_text_ord_ope +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_text_ord_ope, RIGHTARG = public.eql_v3_text_search +); diff --git a/packages/eql/src/v3/scalars/text/query_text_ord_operators.sql b/packages/eql/src/v3/scalars/text/query_text_ord_operators.sql index 0e7d9be4bd..c162d7b481 100644 --- a/packages/eql/src/v3/scalars/text/query_text_ord_operators.sql +++ b/packages/eql/src/v3/scalars/text/query_text_ord_operators.sql @@ -77,3 +77,263 @@ CREATE OPERATOR >= ( LEFTARG = eql_v3.query_text_ord, RIGHTARG = public.eql_v3_text_ord, COMMUTATOR = <=, NEGATOR = <, RESTRICT = scalargesel, JOIN = scalargejoinsel ); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_text_eq, RIGHTARG = eql_v3.query_text_ord +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_text_ord, RIGHTARG = public.eql_v3_text_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_text_eq, RIGHTARG = eql_v3.query_text_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_text_ord, RIGHTARG = public.eql_v3_text_eq +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_text_ord_ore, RIGHTARG = eql_v3.query_text_ord +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_text_ord, RIGHTARG = public.eql_v3_text_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_text_ord_ore, RIGHTARG = eql_v3.query_text_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_text_ord, RIGHTARG = public.eql_v3_text_ord_ore +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_text_ord_ore, RIGHTARG = eql_v3.query_text_ord +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_text_ord, RIGHTARG = public.eql_v3_text_ord_ore +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_text_ord_ore, RIGHTARG = eql_v3.query_text_ord +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_text_ord, RIGHTARG = public.eql_v3_text_ord_ore +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_text_ord_ore, RIGHTARG = eql_v3.query_text_ord +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_text_ord, RIGHTARG = public.eql_v3_text_ord_ore +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_text_ord_ore, RIGHTARG = eql_v3.query_text_ord +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_text_ord, RIGHTARG = public.eql_v3_text_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_text_ord_ope, RIGHTARG = eql_v3.query_text_ord +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_text_ord, RIGHTARG = public.eql_v3_text_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_text_ord_ope, RIGHTARG = eql_v3.query_text_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_text_ord, RIGHTARG = public.eql_v3_text_ord_ope +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_text_ord_ope, RIGHTARG = eql_v3.query_text_ord +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_text_ord, RIGHTARG = public.eql_v3_text_ord_ope +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_text_ord_ope, RIGHTARG = eql_v3.query_text_ord +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_text_ord, RIGHTARG = public.eql_v3_text_ord_ope +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_text_ord_ope, RIGHTARG = eql_v3.query_text_ord +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_text_ord, RIGHTARG = public.eql_v3_text_ord_ope +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_text_ord_ope, RIGHTARG = eql_v3.query_text_ord +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_text_ord, RIGHTARG = public.eql_v3_text_ord_ope +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_text_search_ore, RIGHTARG = eql_v3.query_text_ord +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_text_ord, RIGHTARG = public.eql_v3_text_search_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_text_search_ore, RIGHTARG = eql_v3.query_text_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_text_ord, RIGHTARG = public.eql_v3_text_search_ore +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_text_search_ore, RIGHTARG = eql_v3.query_text_ord +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_text_ord, RIGHTARG = public.eql_v3_text_search_ore +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_text_search_ore, RIGHTARG = eql_v3.query_text_ord +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_text_ord, RIGHTARG = public.eql_v3_text_search_ore +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_text_search_ore, RIGHTARG = eql_v3.query_text_ord +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_text_ord, RIGHTARG = public.eql_v3_text_search_ore +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_text_search_ore, RIGHTARG = eql_v3.query_text_ord +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_text_ord, RIGHTARG = public.eql_v3_text_search_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_text_search, RIGHTARG = eql_v3.query_text_ord +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_text_ord, RIGHTARG = public.eql_v3_text_search +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_text_search, RIGHTARG = eql_v3.query_text_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_text_ord, RIGHTARG = public.eql_v3_text_search +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_text_search, RIGHTARG = eql_v3.query_text_ord +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_text_ord, RIGHTARG = public.eql_v3_text_search +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_text_search, RIGHTARG = eql_v3.query_text_ord +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_text_ord, RIGHTARG = public.eql_v3_text_search +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_text_search, RIGHTARG = eql_v3.query_text_ord +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_text_ord, RIGHTARG = public.eql_v3_text_search +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_text_search, RIGHTARG = eql_v3.query_text_ord +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_text_ord, RIGHTARG = public.eql_v3_text_search +); diff --git a/packages/eql/src/v3/scalars/text/query_text_ord_ore_functions.sql b/packages/eql/src/v3/scalars/text/query_text_ord_ore_functions.sql index 6a666ef98b..37e39ba757 100644 --- a/packages/eql/src/v3/scalars/text/query_text_ord_ore_functions.sql +++ b/packages/eql/src/v3/scalars/text/query_text_ord_ore_functions.sql @@ -117,3 +117,471 @@ AS $$ SELECT eql_v3.ord_term_ore(a) OPERATOR(public.>=) eql_v3.ord_term_ore(b) $ CREATE FUNCTION eql_v3.gte(a eql_v3.query_text_ord_ore, b public.eql_v3_text_ord_ore) RETURNS boolean LANGUAGE sql IMMUTABLE STRICT PARALLEL SAFE AS $$ SELECT eql_v3.ord_term_ore(a) OPERATOR(public.>=) eql_v3.ord_term_ore(b) $$; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ore: public.eql_v3_text_eq and eql_v3.query_text_ord_ore (mismatched query domain). +--! @param a public.eql_v3_text_eq left operand +--! @param b eql_v3.query_text_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_text_eq, b eql_v3.query_text_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_text_eq and eql_v3.query_text_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ore: eql_v3.query_text_ord_ore and public.eql_v3_text_eq (mismatched query domain). +--! @param a eql_v3.query_text_ord_ore left operand +--! @param b public.eql_v3_text_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_text_ord_ore, b public.eql_v3_text_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_text_ord_ore and public.eql_v3_text_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ore: public.eql_v3_text_eq and eql_v3.query_text_ord_ore (mismatched query domain). +--! @param a public.eql_v3_text_eq left operand +--! @param b eql_v3.query_text_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_text_eq, b eql_v3.query_text_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_text_eq and eql_v3.query_text_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ore: eql_v3.query_text_ord_ore and public.eql_v3_text_eq (mismatched query domain). +--! @param a eql_v3.query_text_ord_ore left operand +--! @param b public.eql_v3_text_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_text_ord_ore, b public.eql_v3_text_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_text_ord_ore and public.eql_v3_text_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ore: public.eql_v3_text_ord and eql_v3.query_text_ord_ore (mismatched query domain). +--! @param a public.eql_v3_text_ord left operand +--! @param b eql_v3.query_text_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_text_ord, b eql_v3.query_text_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_text_ord and eql_v3.query_text_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ore: eql_v3.query_text_ord_ore and public.eql_v3_text_ord (mismatched query domain). +--! @param a eql_v3.query_text_ord_ore left operand +--! @param b public.eql_v3_text_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_text_ord_ore, b public.eql_v3_text_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_text_ord_ore and public.eql_v3_text_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ore: public.eql_v3_text_ord and eql_v3.query_text_ord_ore (mismatched query domain). +--! @param a public.eql_v3_text_ord left operand +--! @param b eql_v3.query_text_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_text_ord, b eql_v3.query_text_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_text_ord and eql_v3.query_text_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ore: eql_v3.query_text_ord_ore and public.eql_v3_text_ord (mismatched query domain). +--! @param a eql_v3.query_text_ord_ore left operand +--! @param b public.eql_v3_text_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_text_ord_ore, b public.eql_v3_text_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_text_ord_ore and public.eql_v3_text_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ore: public.eql_v3_text_ord and eql_v3.query_text_ord_ore (mismatched query domain). +--! @param a public.eql_v3_text_ord left operand +--! @param b eql_v3.query_text_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_text_ord, b eql_v3.query_text_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_text_ord and eql_v3.query_text_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ore: eql_v3.query_text_ord_ore and public.eql_v3_text_ord (mismatched query domain). +--! @param a eql_v3.query_text_ord_ore left operand +--! @param b public.eql_v3_text_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_text_ord_ore, b public.eql_v3_text_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_text_ord_ore and public.eql_v3_text_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ore: public.eql_v3_text_ord and eql_v3.query_text_ord_ore (mismatched query domain). +--! @param a public.eql_v3_text_ord left operand +--! @param b eql_v3.query_text_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_text_ord, b eql_v3.query_text_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_text_ord and eql_v3.query_text_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ore: eql_v3.query_text_ord_ore and public.eql_v3_text_ord (mismatched query domain). +--! @param a eql_v3.query_text_ord_ore left operand +--! @param b public.eql_v3_text_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_text_ord_ore, b public.eql_v3_text_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_text_ord_ore and public.eql_v3_text_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ore: public.eql_v3_text_ord and eql_v3.query_text_ord_ore (mismatched query domain). +--! @param a public.eql_v3_text_ord left operand +--! @param b eql_v3.query_text_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_text_ord, b eql_v3.query_text_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_text_ord and eql_v3.query_text_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ore: eql_v3.query_text_ord_ore and public.eql_v3_text_ord (mismatched query domain). +--! @param a eql_v3.query_text_ord_ore left operand +--! @param b public.eql_v3_text_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_text_ord_ore, b public.eql_v3_text_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_text_ord_ore and public.eql_v3_text_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ore: public.eql_v3_text_ord and eql_v3.query_text_ord_ore (mismatched query domain). +--! @param a public.eql_v3_text_ord left operand +--! @param b eql_v3.query_text_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_text_ord, b eql_v3.query_text_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_text_ord and eql_v3.query_text_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ore: eql_v3.query_text_ord_ore and public.eql_v3_text_ord (mismatched query domain). +--! @param a eql_v3.query_text_ord_ore left operand +--! @param b public.eql_v3_text_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_text_ord_ore, b public.eql_v3_text_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_text_ord_ore and public.eql_v3_text_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ore: public.eql_v3_text_ord_ope and eql_v3.query_text_ord_ore (mismatched query domain). +--! @param a public.eql_v3_text_ord_ope left operand +--! @param b eql_v3.query_text_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_text_ord_ope, b eql_v3.query_text_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_text_ord_ope and eql_v3.query_text_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ore: eql_v3.query_text_ord_ore and public.eql_v3_text_ord_ope (mismatched query domain). +--! @param a eql_v3.query_text_ord_ore left operand +--! @param b public.eql_v3_text_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_text_ord_ore, b public.eql_v3_text_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_text_ord_ore and public.eql_v3_text_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ore: public.eql_v3_text_ord_ope and eql_v3.query_text_ord_ore (mismatched query domain). +--! @param a public.eql_v3_text_ord_ope left operand +--! @param b eql_v3.query_text_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_text_ord_ope, b eql_v3.query_text_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_text_ord_ope and eql_v3.query_text_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ore: eql_v3.query_text_ord_ore and public.eql_v3_text_ord_ope (mismatched query domain). +--! @param a eql_v3.query_text_ord_ore left operand +--! @param b public.eql_v3_text_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_text_ord_ore, b public.eql_v3_text_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_text_ord_ore and public.eql_v3_text_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ore: public.eql_v3_text_ord_ope and eql_v3.query_text_ord_ore (mismatched query domain). +--! @param a public.eql_v3_text_ord_ope left operand +--! @param b eql_v3.query_text_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_text_ord_ope, b eql_v3.query_text_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_text_ord_ope and eql_v3.query_text_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ore: eql_v3.query_text_ord_ore and public.eql_v3_text_ord_ope (mismatched query domain). +--! @param a eql_v3.query_text_ord_ore left operand +--! @param b public.eql_v3_text_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_text_ord_ore, b public.eql_v3_text_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_text_ord_ore and public.eql_v3_text_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ore: public.eql_v3_text_ord_ope and eql_v3.query_text_ord_ore (mismatched query domain). +--! @param a public.eql_v3_text_ord_ope left operand +--! @param b eql_v3.query_text_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_text_ord_ope, b eql_v3.query_text_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_text_ord_ope and eql_v3.query_text_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ore: eql_v3.query_text_ord_ore and public.eql_v3_text_ord_ope (mismatched query domain). +--! @param a eql_v3.query_text_ord_ore left operand +--! @param b public.eql_v3_text_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_text_ord_ore, b public.eql_v3_text_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_text_ord_ore and public.eql_v3_text_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ore: public.eql_v3_text_ord_ope and eql_v3.query_text_ord_ore (mismatched query domain). +--! @param a public.eql_v3_text_ord_ope left operand +--! @param b eql_v3.query_text_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_text_ord_ope, b eql_v3.query_text_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_text_ord_ope and eql_v3.query_text_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ore: eql_v3.query_text_ord_ore and public.eql_v3_text_ord_ope (mismatched query domain). +--! @param a eql_v3.query_text_ord_ore left operand +--! @param b public.eql_v3_text_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_text_ord_ore, b public.eql_v3_text_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_text_ord_ore and public.eql_v3_text_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ore: public.eql_v3_text_ord_ope and eql_v3.query_text_ord_ore (mismatched query domain). +--! @param a public.eql_v3_text_ord_ope left operand +--! @param b eql_v3.query_text_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_text_ord_ope, b eql_v3.query_text_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_text_ord_ope and eql_v3.query_text_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ore: eql_v3.query_text_ord_ore and public.eql_v3_text_ord_ope (mismatched query domain). +--! @param a eql_v3.query_text_ord_ore left operand +--! @param b public.eql_v3_text_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_text_ord_ore, b public.eql_v3_text_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_text_ord_ore and public.eql_v3_text_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ore: public.eql_v3_text_search_ore and eql_v3.query_text_ord_ore (mismatched query domain). +--! @param a public.eql_v3_text_search_ore left operand +--! @param b eql_v3.query_text_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_text_search_ore, b eql_v3.query_text_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_text_search_ore and eql_v3.query_text_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ore: eql_v3.query_text_ord_ore and public.eql_v3_text_search_ore (mismatched query domain). +--! @param a eql_v3.query_text_ord_ore left operand +--! @param b public.eql_v3_text_search_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_text_ord_ore, b public.eql_v3_text_search_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_text_ord_ore and public.eql_v3_text_search_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ore: public.eql_v3_text_search_ore and eql_v3.query_text_ord_ore (mismatched query domain). +--! @param a public.eql_v3_text_search_ore left operand +--! @param b eql_v3.query_text_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_text_search_ore, b eql_v3.query_text_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_text_search_ore and eql_v3.query_text_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ore: eql_v3.query_text_ord_ore and public.eql_v3_text_search_ore (mismatched query domain). +--! @param a eql_v3.query_text_ord_ore left operand +--! @param b public.eql_v3_text_search_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_text_ord_ore, b public.eql_v3_text_search_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_text_ord_ore and public.eql_v3_text_search_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ore: public.eql_v3_text_search_ore and eql_v3.query_text_ord_ore (mismatched query domain). +--! @param a public.eql_v3_text_search_ore left operand +--! @param b eql_v3.query_text_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_text_search_ore, b eql_v3.query_text_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_text_search_ore and eql_v3.query_text_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ore: eql_v3.query_text_ord_ore and public.eql_v3_text_search_ore (mismatched query domain). +--! @param a eql_v3.query_text_ord_ore left operand +--! @param b public.eql_v3_text_search_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_text_ord_ore, b public.eql_v3_text_search_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_text_ord_ore and public.eql_v3_text_search_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ore: public.eql_v3_text_search_ore and eql_v3.query_text_ord_ore (mismatched query domain). +--! @param a public.eql_v3_text_search_ore left operand +--! @param b eql_v3.query_text_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_text_search_ore, b eql_v3.query_text_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_text_search_ore and eql_v3.query_text_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ore: eql_v3.query_text_ord_ore and public.eql_v3_text_search_ore (mismatched query domain). +--! @param a eql_v3.query_text_ord_ore left operand +--! @param b public.eql_v3_text_search_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_text_ord_ore, b public.eql_v3_text_search_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_text_ord_ore and public.eql_v3_text_search_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ore: public.eql_v3_text_search_ore and eql_v3.query_text_ord_ore (mismatched query domain). +--! @param a public.eql_v3_text_search_ore left operand +--! @param b eql_v3.query_text_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_text_search_ore, b eql_v3.query_text_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_text_search_ore and eql_v3.query_text_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ore: eql_v3.query_text_ord_ore and public.eql_v3_text_search_ore (mismatched query domain). +--! @param a eql_v3.query_text_ord_ore left operand +--! @param b public.eql_v3_text_search_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_text_ord_ore, b public.eql_v3_text_search_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_text_ord_ore and public.eql_v3_text_search_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ore: public.eql_v3_text_search_ore and eql_v3.query_text_ord_ore (mismatched query domain). +--! @param a public.eql_v3_text_search_ore left operand +--! @param b eql_v3.query_text_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_text_search_ore, b eql_v3.query_text_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_text_search_ore and eql_v3.query_text_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ore: eql_v3.query_text_ord_ore and public.eql_v3_text_search_ore (mismatched query domain). +--! @param a eql_v3.query_text_ord_ore left operand +--! @param b public.eql_v3_text_search_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_text_ord_ore, b public.eql_v3_text_search_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_text_ord_ore and public.eql_v3_text_search_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ore: public.eql_v3_text_search and eql_v3.query_text_ord_ore (mismatched query domain). +--! @param a public.eql_v3_text_search left operand +--! @param b eql_v3.query_text_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_text_search, b eql_v3.query_text_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_text_search and eql_v3.query_text_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ore: eql_v3.query_text_ord_ore and public.eql_v3_text_search (mismatched query domain). +--! @param a eql_v3.query_text_ord_ore left operand +--! @param b public.eql_v3_text_search right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_text_ord_ore, b public.eql_v3_text_search) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_text_ord_ore and public.eql_v3_text_search'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ore: public.eql_v3_text_search and eql_v3.query_text_ord_ore (mismatched query domain). +--! @param a public.eql_v3_text_search left operand +--! @param b eql_v3.query_text_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_text_search, b eql_v3.query_text_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_text_search and eql_v3.query_text_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ore: eql_v3.query_text_ord_ore and public.eql_v3_text_search (mismatched query domain). +--! @param a eql_v3.query_text_ord_ore left operand +--! @param b public.eql_v3_text_search right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_text_ord_ore, b public.eql_v3_text_search) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_text_ord_ore and public.eql_v3_text_search'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ore: public.eql_v3_text_search and eql_v3.query_text_ord_ore (mismatched query domain). +--! @param a public.eql_v3_text_search left operand +--! @param b eql_v3.query_text_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_text_search, b eql_v3.query_text_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_text_search and eql_v3.query_text_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ore: eql_v3.query_text_ord_ore and public.eql_v3_text_search (mismatched query domain). +--! @param a eql_v3.query_text_ord_ore left operand +--! @param b public.eql_v3_text_search right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_text_ord_ore, b public.eql_v3_text_search) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_text_ord_ore and public.eql_v3_text_search'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ore: public.eql_v3_text_search and eql_v3.query_text_ord_ore (mismatched query domain). +--! @param a public.eql_v3_text_search left operand +--! @param b eql_v3.query_text_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_text_search, b eql_v3.query_text_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_text_search and eql_v3.query_text_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ore: eql_v3.query_text_ord_ore and public.eql_v3_text_search (mismatched query domain). +--! @param a eql_v3.query_text_ord_ore left operand +--! @param b public.eql_v3_text_search right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_text_ord_ore, b public.eql_v3_text_search) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_text_ord_ore and public.eql_v3_text_search'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ore: public.eql_v3_text_search and eql_v3.query_text_ord_ore (mismatched query domain). +--! @param a public.eql_v3_text_search left operand +--! @param b eql_v3.query_text_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_text_search, b eql_v3.query_text_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_text_search and eql_v3.query_text_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ore: eql_v3.query_text_ord_ore and public.eql_v3_text_search (mismatched query domain). +--! @param a eql_v3.query_text_ord_ore left operand +--! @param b public.eql_v3_text_search right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_text_ord_ore, b public.eql_v3_text_search) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_text_ord_ore and public.eql_v3_text_search'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ore: public.eql_v3_text_search and eql_v3.query_text_ord_ore (mismatched query domain). +--! @param a public.eql_v3_text_search left operand +--! @param b eql_v3.query_text_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_text_search, b eql_v3.query_text_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_text_search and eql_v3.query_text_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_ord_ore: eql_v3.query_text_ord_ore and public.eql_v3_text_search (mismatched query domain). +--! @param a eql_v3.query_text_ord_ore left operand +--! @param b public.eql_v3_text_search right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_text_ord_ore, b public.eql_v3_text_search) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_text_ord_ore and public.eql_v3_text_search'; END; $$ +LANGUAGE plpgsql; diff --git a/packages/eql/src/v3/scalars/text/query_text_ord_ore_operators.sql b/packages/eql/src/v3/scalars/text/query_text_ord_ore_operators.sql index a7526f6f9b..99f44560f3 100644 --- a/packages/eql/src/v3/scalars/text/query_text_ord_ore_operators.sql +++ b/packages/eql/src/v3/scalars/text/query_text_ord_ore_operators.sql @@ -77,3 +77,263 @@ CREATE OPERATOR >= ( LEFTARG = eql_v3.query_text_ord_ore, RIGHTARG = public.eql_v3_text_ord_ore, COMMUTATOR = <=, NEGATOR = <, RESTRICT = scalargesel, JOIN = scalargejoinsel ); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_text_eq, RIGHTARG = eql_v3.query_text_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_text_ord_ore, RIGHTARG = public.eql_v3_text_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_text_eq, RIGHTARG = eql_v3.query_text_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_text_ord_ore, RIGHTARG = public.eql_v3_text_eq +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_text_ord, RIGHTARG = eql_v3.query_text_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_text_ord_ore, RIGHTARG = public.eql_v3_text_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_text_ord, RIGHTARG = eql_v3.query_text_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_text_ord_ore, RIGHTARG = public.eql_v3_text_ord +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_text_ord, RIGHTARG = eql_v3.query_text_ord_ore +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_text_ord_ore, RIGHTARG = public.eql_v3_text_ord +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_text_ord, RIGHTARG = eql_v3.query_text_ord_ore +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_text_ord_ore, RIGHTARG = public.eql_v3_text_ord +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_text_ord, RIGHTARG = eql_v3.query_text_ord_ore +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_text_ord_ore, RIGHTARG = public.eql_v3_text_ord +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_text_ord, RIGHTARG = eql_v3.query_text_ord_ore +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_text_ord_ore, RIGHTARG = public.eql_v3_text_ord +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_text_ord_ope, RIGHTARG = eql_v3.query_text_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_text_ord_ore, RIGHTARG = public.eql_v3_text_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_text_ord_ope, RIGHTARG = eql_v3.query_text_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_text_ord_ore, RIGHTARG = public.eql_v3_text_ord_ope +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_text_ord_ope, RIGHTARG = eql_v3.query_text_ord_ore +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_text_ord_ore, RIGHTARG = public.eql_v3_text_ord_ope +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_text_ord_ope, RIGHTARG = eql_v3.query_text_ord_ore +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_text_ord_ore, RIGHTARG = public.eql_v3_text_ord_ope +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_text_ord_ope, RIGHTARG = eql_v3.query_text_ord_ore +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_text_ord_ore, RIGHTARG = public.eql_v3_text_ord_ope +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_text_ord_ope, RIGHTARG = eql_v3.query_text_ord_ore +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_text_ord_ore, RIGHTARG = public.eql_v3_text_ord_ope +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_text_search_ore, RIGHTARG = eql_v3.query_text_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_text_ord_ore, RIGHTARG = public.eql_v3_text_search_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_text_search_ore, RIGHTARG = eql_v3.query_text_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_text_ord_ore, RIGHTARG = public.eql_v3_text_search_ore +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_text_search_ore, RIGHTARG = eql_v3.query_text_ord_ore +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_text_ord_ore, RIGHTARG = public.eql_v3_text_search_ore +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_text_search_ore, RIGHTARG = eql_v3.query_text_ord_ore +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_text_ord_ore, RIGHTARG = public.eql_v3_text_search_ore +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_text_search_ore, RIGHTARG = eql_v3.query_text_ord_ore +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_text_ord_ore, RIGHTARG = public.eql_v3_text_search_ore +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_text_search_ore, RIGHTARG = eql_v3.query_text_ord_ore +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_text_ord_ore, RIGHTARG = public.eql_v3_text_search_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_text_search, RIGHTARG = eql_v3.query_text_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_text_ord_ore, RIGHTARG = public.eql_v3_text_search +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_text_search, RIGHTARG = eql_v3.query_text_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_text_ord_ore, RIGHTARG = public.eql_v3_text_search +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_text_search, RIGHTARG = eql_v3.query_text_ord_ore +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_text_ord_ore, RIGHTARG = public.eql_v3_text_search +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_text_search, RIGHTARG = eql_v3.query_text_ord_ore +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_text_ord_ore, RIGHTARG = public.eql_v3_text_search +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_text_search, RIGHTARG = eql_v3.query_text_ord_ore +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_text_ord_ore, RIGHTARG = public.eql_v3_text_search +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_text_search, RIGHTARG = eql_v3.query_text_ord_ore +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_text_ord_ore, RIGHTARG = public.eql_v3_text_search +); diff --git a/packages/eql/src/v3/scalars/text/query_text_search_functions.sql b/packages/eql/src/v3/scalars/text/query_text_search_functions.sql index fe38d39d76..b4bab8bf1f 100644 --- a/packages/eql/src/v3/scalars/text/query_text_search_functions.sql +++ b/packages/eql/src/v3/scalars/text/query_text_search_functions.sql @@ -141,3 +141,507 @@ AS $$ SELECT eql_v3.match_term(a) OPERATOR(pg_catalog.@>) eql_v3.match_term(b) A CREATE FUNCTION eql_v3.matches(a eql_v3.query_text_search, b public.eql_v3_text_search) RETURNS boolean LANGUAGE sql IMMUTABLE PARALLEL SAFE AS $$ SELECT eql_v3.match_term(a) OPERATOR(pg_catalog.@>) eql_v3.match_term(b) AND (pg_catalog.cardinality(eql_v3.match_term(b)) OPERATOR(pg_catalog.>) 0 OR pg_catalog.cardinality(eql_v3.match_term(a)) OPERATOR(pg_catalog.=) 0) $$; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search: public.eql_v3_text_eq and eql_v3.query_text_search (mismatched query domain). +--! @param a public.eql_v3_text_eq left operand +--! @param b eql_v3.query_text_search right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_text_eq, b eql_v3.query_text_search) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_text_eq and eql_v3.query_text_search'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search: eql_v3.query_text_search and public.eql_v3_text_eq (mismatched query domain). +--! @param a eql_v3.query_text_search left operand +--! @param b public.eql_v3_text_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_text_search, b public.eql_v3_text_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_text_search and public.eql_v3_text_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search: public.eql_v3_text_eq and eql_v3.query_text_search (mismatched query domain). +--! @param a public.eql_v3_text_eq left operand +--! @param b eql_v3.query_text_search right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_text_eq, b eql_v3.query_text_search) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_text_eq and eql_v3.query_text_search'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search: eql_v3.query_text_search and public.eql_v3_text_eq (mismatched query domain). +--! @param a eql_v3.query_text_search left operand +--! @param b public.eql_v3_text_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_text_search, b public.eql_v3_text_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_text_search and public.eql_v3_text_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search: public.eql_v3_text_match and eql_v3.query_text_search (mismatched query domain). +--! @param a public.eql_v3_text_match left operand +--! @param b eql_v3.query_text_search right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal."@@"(a public.eql_v3_text_match, b eql_v3.query_text_search) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '@@', 'public.eql_v3_text_match and eql_v3.query_text_search'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search: eql_v3.query_text_search and public.eql_v3_text_match (mismatched query domain). +--! @param a eql_v3.query_text_search left operand +--! @param b public.eql_v3_text_match right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal."@@"(a eql_v3.query_text_search, b public.eql_v3_text_match) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '@@', 'eql_v3.query_text_search and public.eql_v3_text_match'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search: public.eql_v3_text_ord_ore and eql_v3.query_text_search (mismatched query domain). +--! @param a public.eql_v3_text_ord_ore left operand +--! @param b eql_v3.query_text_search right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_text_ord_ore, b eql_v3.query_text_search) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_text_ord_ore and eql_v3.query_text_search'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search: eql_v3.query_text_search and public.eql_v3_text_ord_ore (mismatched query domain). +--! @param a eql_v3.query_text_search left operand +--! @param b public.eql_v3_text_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_text_search, b public.eql_v3_text_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_text_search and public.eql_v3_text_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search: public.eql_v3_text_ord_ore and eql_v3.query_text_search (mismatched query domain). +--! @param a public.eql_v3_text_ord_ore left operand +--! @param b eql_v3.query_text_search right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_text_ord_ore, b eql_v3.query_text_search) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_text_ord_ore and eql_v3.query_text_search'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search: eql_v3.query_text_search and public.eql_v3_text_ord_ore (mismatched query domain). +--! @param a eql_v3.query_text_search left operand +--! @param b public.eql_v3_text_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_text_search, b public.eql_v3_text_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_text_search and public.eql_v3_text_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search: public.eql_v3_text_ord_ore and eql_v3.query_text_search (mismatched query domain). +--! @param a public.eql_v3_text_ord_ore left operand +--! @param b eql_v3.query_text_search right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_text_ord_ore, b eql_v3.query_text_search) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_text_ord_ore and eql_v3.query_text_search'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search: eql_v3.query_text_search and public.eql_v3_text_ord_ore (mismatched query domain). +--! @param a eql_v3.query_text_search left operand +--! @param b public.eql_v3_text_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_text_search, b public.eql_v3_text_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_text_search and public.eql_v3_text_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search: public.eql_v3_text_ord_ore and eql_v3.query_text_search (mismatched query domain). +--! @param a public.eql_v3_text_ord_ore left operand +--! @param b eql_v3.query_text_search right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_text_ord_ore, b eql_v3.query_text_search) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_text_ord_ore and eql_v3.query_text_search'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search: eql_v3.query_text_search and public.eql_v3_text_ord_ore (mismatched query domain). +--! @param a eql_v3.query_text_search left operand +--! @param b public.eql_v3_text_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_text_search, b public.eql_v3_text_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_text_search and public.eql_v3_text_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search: public.eql_v3_text_ord_ore and eql_v3.query_text_search (mismatched query domain). +--! @param a public.eql_v3_text_ord_ore left operand +--! @param b eql_v3.query_text_search right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_text_ord_ore, b eql_v3.query_text_search) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_text_ord_ore and eql_v3.query_text_search'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search: eql_v3.query_text_search and public.eql_v3_text_ord_ore (mismatched query domain). +--! @param a eql_v3.query_text_search left operand +--! @param b public.eql_v3_text_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_text_search, b public.eql_v3_text_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_text_search and public.eql_v3_text_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search: public.eql_v3_text_ord_ore and eql_v3.query_text_search (mismatched query domain). +--! @param a public.eql_v3_text_ord_ore left operand +--! @param b eql_v3.query_text_search right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_text_ord_ore, b eql_v3.query_text_search) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_text_ord_ore and eql_v3.query_text_search'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search: eql_v3.query_text_search and public.eql_v3_text_ord_ore (mismatched query domain). +--! @param a eql_v3.query_text_search left operand +--! @param b public.eql_v3_text_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_text_search, b public.eql_v3_text_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_text_search and public.eql_v3_text_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search: public.eql_v3_text_ord and eql_v3.query_text_search (mismatched query domain). +--! @param a public.eql_v3_text_ord left operand +--! @param b eql_v3.query_text_search right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_text_ord, b eql_v3.query_text_search) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_text_ord and eql_v3.query_text_search'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search: eql_v3.query_text_search and public.eql_v3_text_ord (mismatched query domain). +--! @param a eql_v3.query_text_search left operand +--! @param b public.eql_v3_text_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_text_search, b public.eql_v3_text_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_text_search and public.eql_v3_text_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search: public.eql_v3_text_ord and eql_v3.query_text_search (mismatched query domain). +--! @param a public.eql_v3_text_ord left operand +--! @param b eql_v3.query_text_search right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_text_ord, b eql_v3.query_text_search) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_text_ord and eql_v3.query_text_search'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search: eql_v3.query_text_search and public.eql_v3_text_ord (mismatched query domain). +--! @param a eql_v3.query_text_search left operand +--! @param b public.eql_v3_text_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_text_search, b public.eql_v3_text_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_text_search and public.eql_v3_text_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search: public.eql_v3_text_ord and eql_v3.query_text_search (mismatched query domain). +--! @param a public.eql_v3_text_ord left operand +--! @param b eql_v3.query_text_search right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_text_ord, b eql_v3.query_text_search) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_text_ord and eql_v3.query_text_search'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search: eql_v3.query_text_search and public.eql_v3_text_ord (mismatched query domain). +--! @param a eql_v3.query_text_search left operand +--! @param b public.eql_v3_text_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_text_search, b public.eql_v3_text_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_text_search and public.eql_v3_text_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search: public.eql_v3_text_ord and eql_v3.query_text_search (mismatched query domain). +--! @param a public.eql_v3_text_ord left operand +--! @param b eql_v3.query_text_search right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_text_ord, b eql_v3.query_text_search) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_text_ord and eql_v3.query_text_search'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search: eql_v3.query_text_search and public.eql_v3_text_ord (mismatched query domain). +--! @param a eql_v3.query_text_search left operand +--! @param b public.eql_v3_text_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_text_search, b public.eql_v3_text_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_text_search and public.eql_v3_text_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search: public.eql_v3_text_ord and eql_v3.query_text_search (mismatched query domain). +--! @param a public.eql_v3_text_ord left operand +--! @param b eql_v3.query_text_search right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_text_ord, b eql_v3.query_text_search) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_text_ord and eql_v3.query_text_search'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search: eql_v3.query_text_search and public.eql_v3_text_ord (mismatched query domain). +--! @param a eql_v3.query_text_search left operand +--! @param b public.eql_v3_text_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_text_search, b public.eql_v3_text_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_text_search and public.eql_v3_text_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search: public.eql_v3_text_ord and eql_v3.query_text_search (mismatched query domain). +--! @param a public.eql_v3_text_ord left operand +--! @param b eql_v3.query_text_search right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_text_ord, b eql_v3.query_text_search) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_text_ord and eql_v3.query_text_search'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search: eql_v3.query_text_search and public.eql_v3_text_ord (mismatched query domain). +--! @param a eql_v3.query_text_search left operand +--! @param b public.eql_v3_text_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_text_search, b public.eql_v3_text_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_text_search and public.eql_v3_text_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search: public.eql_v3_text_ord_ope and eql_v3.query_text_search (mismatched query domain). +--! @param a public.eql_v3_text_ord_ope left operand +--! @param b eql_v3.query_text_search right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_text_ord_ope, b eql_v3.query_text_search) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_text_ord_ope and eql_v3.query_text_search'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search: eql_v3.query_text_search and public.eql_v3_text_ord_ope (mismatched query domain). +--! @param a eql_v3.query_text_search left operand +--! @param b public.eql_v3_text_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_text_search, b public.eql_v3_text_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_text_search and public.eql_v3_text_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search: public.eql_v3_text_ord_ope and eql_v3.query_text_search (mismatched query domain). +--! @param a public.eql_v3_text_ord_ope left operand +--! @param b eql_v3.query_text_search right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_text_ord_ope, b eql_v3.query_text_search) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_text_ord_ope and eql_v3.query_text_search'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search: eql_v3.query_text_search and public.eql_v3_text_ord_ope (mismatched query domain). +--! @param a eql_v3.query_text_search left operand +--! @param b public.eql_v3_text_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_text_search, b public.eql_v3_text_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_text_search and public.eql_v3_text_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search: public.eql_v3_text_ord_ope and eql_v3.query_text_search (mismatched query domain). +--! @param a public.eql_v3_text_ord_ope left operand +--! @param b eql_v3.query_text_search right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_text_ord_ope, b eql_v3.query_text_search) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_text_ord_ope and eql_v3.query_text_search'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search: eql_v3.query_text_search and public.eql_v3_text_ord_ope (mismatched query domain). +--! @param a eql_v3.query_text_search left operand +--! @param b public.eql_v3_text_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_text_search, b public.eql_v3_text_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_text_search and public.eql_v3_text_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search: public.eql_v3_text_ord_ope and eql_v3.query_text_search (mismatched query domain). +--! @param a public.eql_v3_text_ord_ope left operand +--! @param b eql_v3.query_text_search right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_text_ord_ope, b eql_v3.query_text_search) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_text_ord_ope and eql_v3.query_text_search'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search: eql_v3.query_text_search and public.eql_v3_text_ord_ope (mismatched query domain). +--! @param a eql_v3.query_text_search left operand +--! @param b public.eql_v3_text_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_text_search, b public.eql_v3_text_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_text_search and public.eql_v3_text_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search: public.eql_v3_text_ord_ope and eql_v3.query_text_search (mismatched query domain). +--! @param a public.eql_v3_text_ord_ope left operand +--! @param b eql_v3.query_text_search right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_text_ord_ope, b eql_v3.query_text_search) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_text_ord_ope and eql_v3.query_text_search'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search: eql_v3.query_text_search and public.eql_v3_text_ord_ope (mismatched query domain). +--! @param a eql_v3.query_text_search left operand +--! @param b public.eql_v3_text_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_text_search, b public.eql_v3_text_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_text_search and public.eql_v3_text_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search: public.eql_v3_text_ord_ope and eql_v3.query_text_search (mismatched query domain). +--! @param a public.eql_v3_text_ord_ope left operand +--! @param b eql_v3.query_text_search right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_text_ord_ope, b eql_v3.query_text_search) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_text_ord_ope and eql_v3.query_text_search'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search: eql_v3.query_text_search and public.eql_v3_text_ord_ope (mismatched query domain). +--! @param a eql_v3.query_text_search left operand +--! @param b public.eql_v3_text_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_text_search, b public.eql_v3_text_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_text_search and public.eql_v3_text_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search: public.eql_v3_text_search_ore and eql_v3.query_text_search (mismatched query domain). +--! @param a public.eql_v3_text_search_ore left operand +--! @param b eql_v3.query_text_search right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_text_search_ore, b eql_v3.query_text_search) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_text_search_ore and eql_v3.query_text_search'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search: eql_v3.query_text_search and public.eql_v3_text_search_ore (mismatched query domain). +--! @param a eql_v3.query_text_search left operand +--! @param b public.eql_v3_text_search_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_text_search, b public.eql_v3_text_search_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_text_search and public.eql_v3_text_search_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search: public.eql_v3_text_search_ore and eql_v3.query_text_search (mismatched query domain). +--! @param a public.eql_v3_text_search_ore left operand +--! @param b eql_v3.query_text_search right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_text_search_ore, b eql_v3.query_text_search) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_text_search_ore and eql_v3.query_text_search'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search: eql_v3.query_text_search and public.eql_v3_text_search_ore (mismatched query domain). +--! @param a eql_v3.query_text_search left operand +--! @param b public.eql_v3_text_search_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_text_search, b public.eql_v3_text_search_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_text_search and public.eql_v3_text_search_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search: public.eql_v3_text_search_ore and eql_v3.query_text_search (mismatched query domain). +--! @param a public.eql_v3_text_search_ore left operand +--! @param b eql_v3.query_text_search right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_text_search_ore, b eql_v3.query_text_search) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_text_search_ore and eql_v3.query_text_search'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search: eql_v3.query_text_search and public.eql_v3_text_search_ore (mismatched query domain). +--! @param a eql_v3.query_text_search left operand +--! @param b public.eql_v3_text_search_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_text_search, b public.eql_v3_text_search_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_text_search and public.eql_v3_text_search_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search: public.eql_v3_text_search_ore and eql_v3.query_text_search (mismatched query domain). +--! @param a public.eql_v3_text_search_ore left operand +--! @param b eql_v3.query_text_search right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_text_search_ore, b eql_v3.query_text_search) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_text_search_ore and eql_v3.query_text_search'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search: eql_v3.query_text_search and public.eql_v3_text_search_ore (mismatched query domain). +--! @param a eql_v3.query_text_search left operand +--! @param b public.eql_v3_text_search_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_text_search, b public.eql_v3_text_search_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_text_search and public.eql_v3_text_search_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search: public.eql_v3_text_search_ore and eql_v3.query_text_search (mismatched query domain). +--! @param a public.eql_v3_text_search_ore left operand +--! @param b eql_v3.query_text_search right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_text_search_ore, b eql_v3.query_text_search) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_text_search_ore and eql_v3.query_text_search'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search: eql_v3.query_text_search and public.eql_v3_text_search_ore (mismatched query domain). +--! @param a eql_v3.query_text_search left operand +--! @param b public.eql_v3_text_search_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_text_search, b public.eql_v3_text_search_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_text_search and public.eql_v3_text_search_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search: public.eql_v3_text_search_ore and eql_v3.query_text_search (mismatched query domain). +--! @param a public.eql_v3_text_search_ore left operand +--! @param b eql_v3.query_text_search right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_text_search_ore, b eql_v3.query_text_search) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_text_search_ore and eql_v3.query_text_search'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search: eql_v3.query_text_search and public.eql_v3_text_search_ore (mismatched query domain). +--! @param a eql_v3.query_text_search left operand +--! @param b public.eql_v3_text_search_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_text_search, b public.eql_v3_text_search_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_text_search and public.eql_v3_text_search_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search: public.eql_v3_text_search_ore and eql_v3.query_text_search (mismatched query domain). +--! @param a public.eql_v3_text_search_ore left operand +--! @param b eql_v3.query_text_search right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal."@@"(a public.eql_v3_text_search_ore, b eql_v3.query_text_search) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '@@', 'public.eql_v3_text_search_ore and eql_v3.query_text_search'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search: eql_v3.query_text_search and public.eql_v3_text_search_ore (mismatched query domain). +--! @param a eql_v3.query_text_search left operand +--! @param b public.eql_v3_text_search_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal."@@"(a eql_v3.query_text_search, b public.eql_v3_text_search_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '@@', 'eql_v3.query_text_search and public.eql_v3_text_search_ore'; END; $$ +LANGUAGE plpgsql; diff --git a/packages/eql/src/v3/scalars/text/query_text_search_operators.sql b/packages/eql/src/v3/scalars/text/query_text_search_operators.sql index 6a5502c377..025e59ff00 100644 --- a/packages/eql/src/v3/scalars/text/query_text_search_operators.sql +++ b/packages/eql/src/v3/scalars/text/query_text_search_operators.sql @@ -89,3 +89,283 @@ CREATE OPERATOR @@ ( LEFTARG = eql_v3.query_text_search, RIGHTARG = public.eql_v3_text_search, RESTRICT = contsel, JOIN = contjoinsel ); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_text_eq, RIGHTARG = eql_v3.query_text_search +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_text_search, RIGHTARG = public.eql_v3_text_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_text_eq, RIGHTARG = eql_v3.query_text_search +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_text_search, RIGHTARG = public.eql_v3_text_eq +); + +CREATE OPERATOR @@ ( + FUNCTION = eql_v3_internal."@@", + LEFTARG = public.eql_v3_text_match, RIGHTARG = eql_v3.query_text_search +); + +CREATE OPERATOR @@ ( + FUNCTION = eql_v3_internal."@@", + LEFTARG = eql_v3.query_text_search, RIGHTARG = public.eql_v3_text_match +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_text_ord_ore, RIGHTARG = eql_v3.query_text_search +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_text_search, RIGHTARG = public.eql_v3_text_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_text_ord_ore, RIGHTARG = eql_v3.query_text_search +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_text_search, RIGHTARG = public.eql_v3_text_ord_ore +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_text_ord_ore, RIGHTARG = eql_v3.query_text_search +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_text_search, RIGHTARG = public.eql_v3_text_ord_ore +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_text_ord_ore, RIGHTARG = eql_v3.query_text_search +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_text_search, RIGHTARG = public.eql_v3_text_ord_ore +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_text_ord_ore, RIGHTARG = eql_v3.query_text_search +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_text_search, RIGHTARG = public.eql_v3_text_ord_ore +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_text_ord_ore, RIGHTARG = eql_v3.query_text_search +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_text_search, RIGHTARG = public.eql_v3_text_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_text_ord, RIGHTARG = eql_v3.query_text_search +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_text_search, RIGHTARG = public.eql_v3_text_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_text_ord, RIGHTARG = eql_v3.query_text_search +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_text_search, RIGHTARG = public.eql_v3_text_ord +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_text_ord, RIGHTARG = eql_v3.query_text_search +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_text_search, RIGHTARG = public.eql_v3_text_ord +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_text_ord, RIGHTARG = eql_v3.query_text_search +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_text_search, RIGHTARG = public.eql_v3_text_ord +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_text_ord, RIGHTARG = eql_v3.query_text_search +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_text_search, RIGHTARG = public.eql_v3_text_ord +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_text_ord, RIGHTARG = eql_v3.query_text_search +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_text_search, RIGHTARG = public.eql_v3_text_ord +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_text_ord_ope, RIGHTARG = eql_v3.query_text_search +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_text_search, RIGHTARG = public.eql_v3_text_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_text_ord_ope, RIGHTARG = eql_v3.query_text_search +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_text_search, RIGHTARG = public.eql_v3_text_ord_ope +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_text_ord_ope, RIGHTARG = eql_v3.query_text_search +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_text_search, RIGHTARG = public.eql_v3_text_ord_ope +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_text_ord_ope, RIGHTARG = eql_v3.query_text_search +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_text_search, RIGHTARG = public.eql_v3_text_ord_ope +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_text_ord_ope, RIGHTARG = eql_v3.query_text_search +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_text_search, RIGHTARG = public.eql_v3_text_ord_ope +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_text_ord_ope, RIGHTARG = eql_v3.query_text_search +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_text_search, RIGHTARG = public.eql_v3_text_ord_ope +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_text_search_ore, RIGHTARG = eql_v3.query_text_search +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_text_search, RIGHTARG = public.eql_v3_text_search_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_text_search_ore, RIGHTARG = eql_v3.query_text_search +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_text_search, RIGHTARG = public.eql_v3_text_search_ore +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_text_search_ore, RIGHTARG = eql_v3.query_text_search +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_text_search, RIGHTARG = public.eql_v3_text_search_ore +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_text_search_ore, RIGHTARG = eql_v3.query_text_search +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_text_search, RIGHTARG = public.eql_v3_text_search_ore +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_text_search_ore, RIGHTARG = eql_v3.query_text_search +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_text_search, RIGHTARG = public.eql_v3_text_search_ore +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_text_search_ore, RIGHTARG = eql_v3.query_text_search +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_text_search, RIGHTARG = public.eql_v3_text_search_ore +); + +CREATE OPERATOR @@ ( + FUNCTION = eql_v3_internal."@@", + LEFTARG = public.eql_v3_text_search_ore, RIGHTARG = eql_v3.query_text_search +); + +CREATE OPERATOR @@ ( + FUNCTION = eql_v3_internal."@@", + LEFTARG = eql_v3.query_text_search, RIGHTARG = public.eql_v3_text_search_ore +); diff --git a/packages/eql/src/v3/scalars/text/query_text_search_ore_functions.sql b/packages/eql/src/v3/scalars/text/query_text_search_ore_functions.sql index 01eaced181..34a4873a4f 100644 --- a/packages/eql/src/v3/scalars/text/query_text_search_ore_functions.sql +++ b/packages/eql/src/v3/scalars/text/query_text_search_ore_functions.sql @@ -141,3 +141,507 @@ AS $$ SELECT eql_v3.match_term(a) OPERATOR(pg_catalog.@>) eql_v3.match_term(b) A CREATE FUNCTION eql_v3.matches(a eql_v3.query_text_search_ore, b public.eql_v3_text_search_ore) RETURNS boolean LANGUAGE sql IMMUTABLE PARALLEL SAFE AS $$ SELECT eql_v3.match_term(a) OPERATOR(pg_catalog.@>) eql_v3.match_term(b) AND (pg_catalog.cardinality(eql_v3.match_term(b)) OPERATOR(pg_catalog.>) 0 OR pg_catalog.cardinality(eql_v3.match_term(a)) OPERATOR(pg_catalog.=) 0) $$; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search_ore: public.eql_v3_text_eq and eql_v3.query_text_search_ore (mismatched query domain). +--! @param a public.eql_v3_text_eq left operand +--! @param b eql_v3.query_text_search_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_text_eq, b eql_v3.query_text_search_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_text_eq and eql_v3.query_text_search_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search_ore: eql_v3.query_text_search_ore and public.eql_v3_text_eq (mismatched query domain). +--! @param a eql_v3.query_text_search_ore left operand +--! @param b public.eql_v3_text_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_text_search_ore, b public.eql_v3_text_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_text_search_ore and public.eql_v3_text_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search_ore: public.eql_v3_text_eq and eql_v3.query_text_search_ore (mismatched query domain). +--! @param a public.eql_v3_text_eq left operand +--! @param b eql_v3.query_text_search_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_text_eq, b eql_v3.query_text_search_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_text_eq and eql_v3.query_text_search_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search_ore: eql_v3.query_text_search_ore and public.eql_v3_text_eq (mismatched query domain). +--! @param a eql_v3.query_text_search_ore left operand +--! @param b public.eql_v3_text_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_text_search_ore, b public.eql_v3_text_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_text_search_ore and public.eql_v3_text_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search_ore: public.eql_v3_text_match and eql_v3.query_text_search_ore (mismatched query domain). +--! @param a public.eql_v3_text_match left operand +--! @param b eql_v3.query_text_search_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal."@@"(a public.eql_v3_text_match, b eql_v3.query_text_search_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '@@', 'public.eql_v3_text_match and eql_v3.query_text_search_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search_ore: eql_v3.query_text_search_ore and public.eql_v3_text_match (mismatched query domain). +--! @param a eql_v3.query_text_search_ore left operand +--! @param b public.eql_v3_text_match right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal."@@"(a eql_v3.query_text_search_ore, b public.eql_v3_text_match) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '@@', 'eql_v3.query_text_search_ore and public.eql_v3_text_match'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search_ore: public.eql_v3_text_ord_ore and eql_v3.query_text_search_ore (mismatched query domain). +--! @param a public.eql_v3_text_ord_ore left operand +--! @param b eql_v3.query_text_search_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_text_ord_ore, b eql_v3.query_text_search_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_text_ord_ore and eql_v3.query_text_search_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search_ore: eql_v3.query_text_search_ore and public.eql_v3_text_ord_ore (mismatched query domain). +--! @param a eql_v3.query_text_search_ore left operand +--! @param b public.eql_v3_text_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_text_search_ore, b public.eql_v3_text_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_text_search_ore and public.eql_v3_text_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search_ore: public.eql_v3_text_ord_ore and eql_v3.query_text_search_ore (mismatched query domain). +--! @param a public.eql_v3_text_ord_ore left operand +--! @param b eql_v3.query_text_search_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_text_ord_ore, b eql_v3.query_text_search_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_text_ord_ore and eql_v3.query_text_search_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search_ore: eql_v3.query_text_search_ore and public.eql_v3_text_ord_ore (mismatched query domain). +--! @param a eql_v3.query_text_search_ore left operand +--! @param b public.eql_v3_text_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_text_search_ore, b public.eql_v3_text_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_text_search_ore and public.eql_v3_text_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search_ore: public.eql_v3_text_ord_ore and eql_v3.query_text_search_ore (mismatched query domain). +--! @param a public.eql_v3_text_ord_ore left operand +--! @param b eql_v3.query_text_search_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_text_ord_ore, b eql_v3.query_text_search_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_text_ord_ore and eql_v3.query_text_search_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search_ore: eql_v3.query_text_search_ore and public.eql_v3_text_ord_ore (mismatched query domain). +--! @param a eql_v3.query_text_search_ore left operand +--! @param b public.eql_v3_text_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_text_search_ore, b public.eql_v3_text_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_text_search_ore and public.eql_v3_text_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search_ore: public.eql_v3_text_ord_ore and eql_v3.query_text_search_ore (mismatched query domain). +--! @param a public.eql_v3_text_ord_ore left operand +--! @param b eql_v3.query_text_search_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_text_ord_ore, b eql_v3.query_text_search_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_text_ord_ore and eql_v3.query_text_search_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search_ore: eql_v3.query_text_search_ore and public.eql_v3_text_ord_ore (mismatched query domain). +--! @param a eql_v3.query_text_search_ore left operand +--! @param b public.eql_v3_text_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_text_search_ore, b public.eql_v3_text_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_text_search_ore and public.eql_v3_text_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search_ore: public.eql_v3_text_ord_ore and eql_v3.query_text_search_ore (mismatched query domain). +--! @param a public.eql_v3_text_ord_ore left operand +--! @param b eql_v3.query_text_search_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_text_ord_ore, b eql_v3.query_text_search_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_text_ord_ore and eql_v3.query_text_search_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search_ore: eql_v3.query_text_search_ore and public.eql_v3_text_ord_ore (mismatched query domain). +--! @param a eql_v3.query_text_search_ore left operand +--! @param b public.eql_v3_text_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_text_search_ore, b public.eql_v3_text_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_text_search_ore and public.eql_v3_text_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search_ore: public.eql_v3_text_ord_ore and eql_v3.query_text_search_ore (mismatched query domain). +--! @param a public.eql_v3_text_ord_ore left operand +--! @param b eql_v3.query_text_search_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_text_ord_ore, b eql_v3.query_text_search_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_text_ord_ore and eql_v3.query_text_search_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search_ore: eql_v3.query_text_search_ore and public.eql_v3_text_ord_ore (mismatched query domain). +--! @param a eql_v3.query_text_search_ore left operand +--! @param b public.eql_v3_text_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_text_search_ore, b public.eql_v3_text_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_text_search_ore and public.eql_v3_text_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search_ore: public.eql_v3_text_ord and eql_v3.query_text_search_ore (mismatched query domain). +--! @param a public.eql_v3_text_ord left operand +--! @param b eql_v3.query_text_search_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_text_ord, b eql_v3.query_text_search_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_text_ord and eql_v3.query_text_search_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search_ore: eql_v3.query_text_search_ore and public.eql_v3_text_ord (mismatched query domain). +--! @param a eql_v3.query_text_search_ore left operand +--! @param b public.eql_v3_text_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_text_search_ore, b public.eql_v3_text_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_text_search_ore and public.eql_v3_text_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search_ore: public.eql_v3_text_ord and eql_v3.query_text_search_ore (mismatched query domain). +--! @param a public.eql_v3_text_ord left operand +--! @param b eql_v3.query_text_search_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_text_ord, b eql_v3.query_text_search_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_text_ord and eql_v3.query_text_search_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search_ore: eql_v3.query_text_search_ore and public.eql_v3_text_ord (mismatched query domain). +--! @param a eql_v3.query_text_search_ore left operand +--! @param b public.eql_v3_text_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_text_search_ore, b public.eql_v3_text_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_text_search_ore and public.eql_v3_text_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search_ore: public.eql_v3_text_ord and eql_v3.query_text_search_ore (mismatched query domain). +--! @param a public.eql_v3_text_ord left operand +--! @param b eql_v3.query_text_search_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_text_ord, b eql_v3.query_text_search_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_text_ord and eql_v3.query_text_search_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search_ore: eql_v3.query_text_search_ore and public.eql_v3_text_ord (mismatched query domain). +--! @param a eql_v3.query_text_search_ore left operand +--! @param b public.eql_v3_text_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_text_search_ore, b public.eql_v3_text_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_text_search_ore and public.eql_v3_text_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search_ore: public.eql_v3_text_ord and eql_v3.query_text_search_ore (mismatched query domain). +--! @param a public.eql_v3_text_ord left operand +--! @param b eql_v3.query_text_search_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_text_ord, b eql_v3.query_text_search_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_text_ord and eql_v3.query_text_search_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search_ore: eql_v3.query_text_search_ore and public.eql_v3_text_ord (mismatched query domain). +--! @param a eql_v3.query_text_search_ore left operand +--! @param b public.eql_v3_text_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_text_search_ore, b public.eql_v3_text_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_text_search_ore and public.eql_v3_text_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search_ore: public.eql_v3_text_ord and eql_v3.query_text_search_ore (mismatched query domain). +--! @param a public.eql_v3_text_ord left operand +--! @param b eql_v3.query_text_search_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_text_ord, b eql_v3.query_text_search_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_text_ord and eql_v3.query_text_search_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search_ore: eql_v3.query_text_search_ore and public.eql_v3_text_ord (mismatched query domain). +--! @param a eql_v3.query_text_search_ore left operand +--! @param b public.eql_v3_text_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_text_search_ore, b public.eql_v3_text_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_text_search_ore and public.eql_v3_text_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search_ore: public.eql_v3_text_ord and eql_v3.query_text_search_ore (mismatched query domain). +--! @param a public.eql_v3_text_ord left operand +--! @param b eql_v3.query_text_search_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_text_ord, b eql_v3.query_text_search_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_text_ord and eql_v3.query_text_search_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search_ore: eql_v3.query_text_search_ore and public.eql_v3_text_ord (mismatched query domain). +--! @param a eql_v3.query_text_search_ore left operand +--! @param b public.eql_v3_text_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_text_search_ore, b public.eql_v3_text_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_text_search_ore and public.eql_v3_text_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search_ore: public.eql_v3_text_ord_ope and eql_v3.query_text_search_ore (mismatched query domain). +--! @param a public.eql_v3_text_ord_ope left operand +--! @param b eql_v3.query_text_search_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_text_ord_ope, b eql_v3.query_text_search_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_text_ord_ope and eql_v3.query_text_search_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search_ore: eql_v3.query_text_search_ore and public.eql_v3_text_ord_ope (mismatched query domain). +--! @param a eql_v3.query_text_search_ore left operand +--! @param b public.eql_v3_text_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_text_search_ore, b public.eql_v3_text_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_text_search_ore and public.eql_v3_text_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search_ore: public.eql_v3_text_ord_ope and eql_v3.query_text_search_ore (mismatched query domain). +--! @param a public.eql_v3_text_ord_ope left operand +--! @param b eql_v3.query_text_search_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_text_ord_ope, b eql_v3.query_text_search_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_text_ord_ope and eql_v3.query_text_search_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search_ore: eql_v3.query_text_search_ore and public.eql_v3_text_ord_ope (mismatched query domain). +--! @param a eql_v3.query_text_search_ore left operand +--! @param b public.eql_v3_text_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_text_search_ore, b public.eql_v3_text_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_text_search_ore and public.eql_v3_text_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search_ore: public.eql_v3_text_ord_ope and eql_v3.query_text_search_ore (mismatched query domain). +--! @param a public.eql_v3_text_ord_ope left operand +--! @param b eql_v3.query_text_search_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_text_ord_ope, b eql_v3.query_text_search_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_text_ord_ope and eql_v3.query_text_search_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search_ore: eql_v3.query_text_search_ore and public.eql_v3_text_ord_ope (mismatched query domain). +--! @param a eql_v3.query_text_search_ore left operand +--! @param b public.eql_v3_text_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_text_search_ore, b public.eql_v3_text_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_text_search_ore and public.eql_v3_text_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search_ore: public.eql_v3_text_ord_ope and eql_v3.query_text_search_ore (mismatched query domain). +--! @param a public.eql_v3_text_ord_ope left operand +--! @param b eql_v3.query_text_search_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_text_ord_ope, b eql_v3.query_text_search_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_text_ord_ope and eql_v3.query_text_search_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search_ore: eql_v3.query_text_search_ore and public.eql_v3_text_ord_ope (mismatched query domain). +--! @param a eql_v3.query_text_search_ore left operand +--! @param b public.eql_v3_text_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_text_search_ore, b public.eql_v3_text_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_text_search_ore and public.eql_v3_text_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search_ore: public.eql_v3_text_ord_ope and eql_v3.query_text_search_ore (mismatched query domain). +--! @param a public.eql_v3_text_ord_ope left operand +--! @param b eql_v3.query_text_search_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_text_ord_ope, b eql_v3.query_text_search_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_text_ord_ope and eql_v3.query_text_search_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search_ore: eql_v3.query_text_search_ore and public.eql_v3_text_ord_ope (mismatched query domain). +--! @param a eql_v3.query_text_search_ore left operand +--! @param b public.eql_v3_text_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_text_search_ore, b public.eql_v3_text_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_text_search_ore and public.eql_v3_text_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search_ore: public.eql_v3_text_ord_ope and eql_v3.query_text_search_ore (mismatched query domain). +--! @param a public.eql_v3_text_ord_ope left operand +--! @param b eql_v3.query_text_search_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_text_ord_ope, b eql_v3.query_text_search_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_text_ord_ope and eql_v3.query_text_search_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search_ore: eql_v3.query_text_search_ore and public.eql_v3_text_ord_ope (mismatched query domain). +--! @param a eql_v3.query_text_search_ore left operand +--! @param b public.eql_v3_text_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_text_search_ore, b public.eql_v3_text_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_text_search_ore and public.eql_v3_text_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search_ore: public.eql_v3_text_search and eql_v3.query_text_search_ore (mismatched query domain). +--! @param a public.eql_v3_text_search left operand +--! @param b eql_v3.query_text_search_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_text_search, b eql_v3.query_text_search_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_text_search and eql_v3.query_text_search_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search_ore: eql_v3.query_text_search_ore and public.eql_v3_text_search (mismatched query domain). +--! @param a eql_v3.query_text_search_ore left operand +--! @param b public.eql_v3_text_search right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_text_search_ore, b public.eql_v3_text_search) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_text_search_ore and public.eql_v3_text_search'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search_ore: public.eql_v3_text_search and eql_v3.query_text_search_ore (mismatched query domain). +--! @param a public.eql_v3_text_search left operand +--! @param b eql_v3.query_text_search_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_text_search, b eql_v3.query_text_search_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_text_search and eql_v3.query_text_search_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search_ore: eql_v3.query_text_search_ore and public.eql_v3_text_search (mismatched query domain). +--! @param a eql_v3.query_text_search_ore left operand +--! @param b public.eql_v3_text_search right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_text_search_ore, b public.eql_v3_text_search) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_text_search_ore and public.eql_v3_text_search'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search_ore: public.eql_v3_text_search and eql_v3.query_text_search_ore (mismatched query domain). +--! @param a public.eql_v3_text_search left operand +--! @param b eql_v3.query_text_search_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_text_search, b eql_v3.query_text_search_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_text_search and eql_v3.query_text_search_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search_ore: eql_v3.query_text_search_ore and public.eql_v3_text_search (mismatched query domain). +--! @param a eql_v3.query_text_search_ore left operand +--! @param b public.eql_v3_text_search right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_text_search_ore, b public.eql_v3_text_search) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_text_search_ore and public.eql_v3_text_search'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search_ore: public.eql_v3_text_search and eql_v3.query_text_search_ore (mismatched query domain). +--! @param a public.eql_v3_text_search left operand +--! @param b eql_v3.query_text_search_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_text_search, b eql_v3.query_text_search_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_text_search and eql_v3.query_text_search_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search_ore: eql_v3.query_text_search_ore and public.eql_v3_text_search (mismatched query domain). +--! @param a eql_v3.query_text_search_ore left operand +--! @param b public.eql_v3_text_search right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_text_search_ore, b public.eql_v3_text_search) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_text_search_ore and public.eql_v3_text_search'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search_ore: public.eql_v3_text_search and eql_v3.query_text_search_ore (mismatched query domain). +--! @param a public.eql_v3_text_search left operand +--! @param b eql_v3.query_text_search_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_text_search, b eql_v3.query_text_search_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_text_search and eql_v3.query_text_search_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search_ore: eql_v3.query_text_search_ore and public.eql_v3_text_search (mismatched query domain). +--! @param a eql_v3.query_text_search_ore left operand +--! @param b public.eql_v3_text_search right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_text_search_ore, b public.eql_v3_text_search) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_text_search_ore and public.eql_v3_text_search'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search_ore: public.eql_v3_text_search and eql_v3.query_text_search_ore (mismatched query domain). +--! @param a public.eql_v3_text_search left operand +--! @param b eql_v3.query_text_search_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_text_search, b eql_v3.query_text_search_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_text_search and eql_v3.query_text_search_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search_ore: eql_v3.query_text_search_ore and public.eql_v3_text_search (mismatched query domain). +--! @param a eql_v3.query_text_search_ore left operand +--! @param b public.eql_v3_text_search right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_text_search_ore, b public.eql_v3_text_search) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_text_search_ore and public.eql_v3_text_search'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search_ore: public.eql_v3_text_search and eql_v3.query_text_search_ore (mismatched query domain). +--! @param a public.eql_v3_text_search left operand +--! @param b eql_v3.query_text_search_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal."@@"(a public.eql_v3_text_search, b eql_v3.query_text_search_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '@@', 'public.eql_v3_text_search and eql_v3.query_text_search_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_text_search_ore: eql_v3.query_text_search_ore and public.eql_v3_text_search (mismatched query domain). +--! @param a eql_v3.query_text_search_ore left operand +--! @param b public.eql_v3_text_search right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal."@@"(a eql_v3.query_text_search_ore, b public.eql_v3_text_search) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '@@', 'eql_v3.query_text_search_ore and public.eql_v3_text_search'; END; $$ +LANGUAGE plpgsql; diff --git a/packages/eql/src/v3/scalars/text/query_text_search_ore_operators.sql b/packages/eql/src/v3/scalars/text/query_text_search_ore_operators.sql index 0a78693fe2..2017bafaf3 100644 --- a/packages/eql/src/v3/scalars/text/query_text_search_ore_operators.sql +++ b/packages/eql/src/v3/scalars/text/query_text_search_ore_operators.sql @@ -89,3 +89,283 @@ CREATE OPERATOR @@ ( LEFTARG = eql_v3.query_text_search_ore, RIGHTARG = public.eql_v3_text_search_ore, RESTRICT = contsel, JOIN = contjoinsel ); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_text_eq, RIGHTARG = eql_v3.query_text_search_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_text_search_ore, RIGHTARG = public.eql_v3_text_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_text_eq, RIGHTARG = eql_v3.query_text_search_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_text_search_ore, RIGHTARG = public.eql_v3_text_eq +); + +CREATE OPERATOR @@ ( + FUNCTION = eql_v3_internal."@@", + LEFTARG = public.eql_v3_text_match, RIGHTARG = eql_v3.query_text_search_ore +); + +CREATE OPERATOR @@ ( + FUNCTION = eql_v3_internal."@@", + LEFTARG = eql_v3.query_text_search_ore, RIGHTARG = public.eql_v3_text_match +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_text_ord_ore, RIGHTARG = eql_v3.query_text_search_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_text_search_ore, RIGHTARG = public.eql_v3_text_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_text_ord_ore, RIGHTARG = eql_v3.query_text_search_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_text_search_ore, RIGHTARG = public.eql_v3_text_ord_ore +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_text_ord_ore, RIGHTARG = eql_v3.query_text_search_ore +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_text_search_ore, RIGHTARG = public.eql_v3_text_ord_ore +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_text_ord_ore, RIGHTARG = eql_v3.query_text_search_ore +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_text_search_ore, RIGHTARG = public.eql_v3_text_ord_ore +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_text_ord_ore, RIGHTARG = eql_v3.query_text_search_ore +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_text_search_ore, RIGHTARG = public.eql_v3_text_ord_ore +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_text_ord_ore, RIGHTARG = eql_v3.query_text_search_ore +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_text_search_ore, RIGHTARG = public.eql_v3_text_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_text_ord, RIGHTARG = eql_v3.query_text_search_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_text_search_ore, RIGHTARG = public.eql_v3_text_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_text_ord, RIGHTARG = eql_v3.query_text_search_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_text_search_ore, RIGHTARG = public.eql_v3_text_ord +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_text_ord, RIGHTARG = eql_v3.query_text_search_ore +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_text_search_ore, RIGHTARG = public.eql_v3_text_ord +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_text_ord, RIGHTARG = eql_v3.query_text_search_ore +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_text_search_ore, RIGHTARG = public.eql_v3_text_ord +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_text_ord, RIGHTARG = eql_v3.query_text_search_ore +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_text_search_ore, RIGHTARG = public.eql_v3_text_ord +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_text_ord, RIGHTARG = eql_v3.query_text_search_ore +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_text_search_ore, RIGHTARG = public.eql_v3_text_ord +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_text_ord_ope, RIGHTARG = eql_v3.query_text_search_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_text_search_ore, RIGHTARG = public.eql_v3_text_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_text_ord_ope, RIGHTARG = eql_v3.query_text_search_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_text_search_ore, RIGHTARG = public.eql_v3_text_ord_ope +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_text_ord_ope, RIGHTARG = eql_v3.query_text_search_ore +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_text_search_ore, RIGHTARG = public.eql_v3_text_ord_ope +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_text_ord_ope, RIGHTARG = eql_v3.query_text_search_ore +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_text_search_ore, RIGHTARG = public.eql_v3_text_ord_ope +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_text_ord_ope, RIGHTARG = eql_v3.query_text_search_ore +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_text_search_ore, RIGHTARG = public.eql_v3_text_ord_ope +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_text_ord_ope, RIGHTARG = eql_v3.query_text_search_ore +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_text_search_ore, RIGHTARG = public.eql_v3_text_ord_ope +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_text_search, RIGHTARG = eql_v3.query_text_search_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_text_search_ore, RIGHTARG = public.eql_v3_text_search +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_text_search, RIGHTARG = eql_v3.query_text_search_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_text_search_ore, RIGHTARG = public.eql_v3_text_search +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_text_search, RIGHTARG = eql_v3.query_text_search_ore +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_text_search_ore, RIGHTARG = public.eql_v3_text_search +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_text_search, RIGHTARG = eql_v3.query_text_search_ore +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_text_search_ore, RIGHTARG = public.eql_v3_text_search +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_text_search, RIGHTARG = eql_v3.query_text_search_ore +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_text_search_ore, RIGHTARG = public.eql_v3_text_search +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_text_search, RIGHTARG = eql_v3.query_text_search_ore +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_text_search_ore, RIGHTARG = public.eql_v3_text_search +); + +CREATE OPERATOR @@ ( + FUNCTION = eql_v3_internal."@@", + LEFTARG = public.eql_v3_text_search, RIGHTARG = eql_v3.query_text_search_ore +); + +CREATE OPERATOR @@ ( + FUNCTION = eql_v3_internal."@@", + LEFTARG = eql_v3.query_text_search_ore, RIGHTARG = public.eql_v3_text_search +); diff --git a/packages/eql/src/v3/scalars/timestamp/query_timestamp_eq_functions.sql b/packages/eql/src/v3/scalars/timestamp/query_timestamp_eq_functions.sql index c43e5e0b25..49758df23d 100644 --- a/packages/eql/src/v3/scalars/timestamp/query_timestamp_eq_functions.sql +++ b/packages/eql/src/v3/scalars/timestamp/query_timestamp_eq_functions.sql @@ -45,3 +45,111 @@ AS $$ SELECT eql_v3.eq_term(a) OPERATOR(pg_catalog.<>) eql_v3.eq_term(b) $$; CREATE FUNCTION eql_v3.neq(a eql_v3.query_timestamp_eq, b public.eql_v3_timestamp_eq) RETURNS boolean LANGUAGE sql IMMUTABLE STRICT PARALLEL SAFE AS $$ SELECT eql_v3.eq_term(a) OPERATOR(pg_catalog.<>) eql_v3.eq_term(b) $$; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_eq: public.eql_v3_timestamp_ord_ore and eql_v3.query_timestamp_eq (mismatched query domain). +--! @param a public.eql_v3_timestamp_ord_ore left operand +--! @param b eql_v3.query_timestamp_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_timestamp_ord_ore, b eql_v3.query_timestamp_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_timestamp_ord_ore and eql_v3.query_timestamp_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_eq: eql_v3.query_timestamp_eq and public.eql_v3_timestamp_ord_ore (mismatched query domain). +--! @param a eql_v3.query_timestamp_eq left operand +--! @param b public.eql_v3_timestamp_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_timestamp_eq, b public.eql_v3_timestamp_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_timestamp_eq and public.eql_v3_timestamp_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_eq: public.eql_v3_timestamp_ord_ore and eql_v3.query_timestamp_eq (mismatched query domain). +--! @param a public.eql_v3_timestamp_ord_ore left operand +--! @param b eql_v3.query_timestamp_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_timestamp_ord_ore, b eql_v3.query_timestamp_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_timestamp_ord_ore and eql_v3.query_timestamp_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_eq: eql_v3.query_timestamp_eq and public.eql_v3_timestamp_ord_ore (mismatched query domain). +--! @param a eql_v3.query_timestamp_eq left operand +--! @param b public.eql_v3_timestamp_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_timestamp_eq, b public.eql_v3_timestamp_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_timestamp_eq and public.eql_v3_timestamp_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_eq: public.eql_v3_timestamp_ord and eql_v3.query_timestamp_eq (mismatched query domain). +--! @param a public.eql_v3_timestamp_ord left operand +--! @param b eql_v3.query_timestamp_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_timestamp_ord, b eql_v3.query_timestamp_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_timestamp_ord and eql_v3.query_timestamp_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_eq: eql_v3.query_timestamp_eq and public.eql_v3_timestamp_ord (mismatched query domain). +--! @param a eql_v3.query_timestamp_eq left operand +--! @param b public.eql_v3_timestamp_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_timestamp_eq, b public.eql_v3_timestamp_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_timestamp_eq and public.eql_v3_timestamp_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_eq: public.eql_v3_timestamp_ord and eql_v3.query_timestamp_eq (mismatched query domain). +--! @param a public.eql_v3_timestamp_ord left operand +--! @param b eql_v3.query_timestamp_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_timestamp_ord, b eql_v3.query_timestamp_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_timestamp_ord and eql_v3.query_timestamp_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_eq: eql_v3.query_timestamp_eq and public.eql_v3_timestamp_ord (mismatched query domain). +--! @param a eql_v3.query_timestamp_eq left operand +--! @param b public.eql_v3_timestamp_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_timestamp_eq, b public.eql_v3_timestamp_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_timestamp_eq and public.eql_v3_timestamp_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_eq: public.eql_v3_timestamp_ord_ope and eql_v3.query_timestamp_eq (mismatched query domain). +--! @param a public.eql_v3_timestamp_ord_ope left operand +--! @param b eql_v3.query_timestamp_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_timestamp_ord_ope, b eql_v3.query_timestamp_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_timestamp_ord_ope and eql_v3.query_timestamp_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_eq: eql_v3.query_timestamp_eq and public.eql_v3_timestamp_ord_ope (mismatched query domain). +--! @param a eql_v3.query_timestamp_eq left operand +--! @param b public.eql_v3_timestamp_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_timestamp_eq, b public.eql_v3_timestamp_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_timestamp_eq and public.eql_v3_timestamp_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_eq: public.eql_v3_timestamp_ord_ope and eql_v3.query_timestamp_eq (mismatched query domain). +--! @param a public.eql_v3_timestamp_ord_ope left operand +--! @param b eql_v3.query_timestamp_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_timestamp_ord_ope, b eql_v3.query_timestamp_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_timestamp_ord_ope and eql_v3.query_timestamp_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_eq: eql_v3.query_timestamp_eq and public.eql_v3_timestamp_ord_ope (mismatched query domain). +--! @param a eql_v3.query_timestamp_eq left operand +--! @param b public.eql_v3_timestamp_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_timestamp_eq, b public.eql_v3_timestamp_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_timestamp_eq and public.eql_v3_timestamp_ord_ope'; END; $$ +LANGUAGE plpgsql; diff --git a/packages/eql/src/v3/scalars/timestamp/query_timestamp_eq_operators.sql b/packages/eql/src/v3/scalars/timestamp/query_timestamp_eq_operators.sql index 59115cfd19..89e1669a1f 100644 --- a/packages/eql/src/v3/scalars/timestamp/query_timestamp_eq_operators.sql +++ b/packages/eql/src/v3/scalars/timestamp/query_timestamp_eq_operators.sql @@ -29,3 +29,63 @@ CREATE OPERATOR <> ( LEFTARG = eql_v3.query_timestamp_eq, RIGHTARG = public.eql_v3_timestamp_eq, COMMUTATOR = <>, NEGATOR = =, RESTRICT = neqsel, JOIN = neqjoinsel ); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_timestamp_ord_ore, RIGHTARG = eql_v3.query_timestamp_eq +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_timestamp_eq, RIGHTARG = public.eql_v3_timestamp_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_timestamp_ord_ore, RIGHTARG = eql_v3.query_timestamp_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_timestamp_eq, RIGHTARG = public.eql_v3_timestamp_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_timestamp_ord, RIGHTARG = eql_v3.query_timestamp_eq +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_timestamp_eq, RIGHTARG = public.eql_v3_timestamp_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_timestamp_ord, RIGHTARG = eql_v3.query_timestamp_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_timestamp_eq, RIGHTARG = public.eql_v3_timestamp_ord +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_timestamp_ord_ope, RIGHTARG = eql_v3.query_timestamp_eq +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_timestamp_eq, RIGHTARG = public.eql_v3_timestamp_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_timestamp_ord_ope, RIGHTARG = eql_v3.query_timestamp_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_timestamp_eq, RIGHTARG = public.eql_v3_timestamp_ord_ope +); diff --git a/packages/eql/src/v3/scalars/timestamp/query_timestamp_ord_functions.sql b/packages/eql/src/v3/scalars/timestamp/query_timestamp_ord_functions.sql index fdc2238ae6..df2fed5b6f 100644 --- a/packages/eql/src/v3/scalars/timestamp/query_timestamp_ord_functions.sql +++ b/packages/eql/src/v3/scalars/timestamp/query_timestamp_ord_functions.sql @@ -109,3 +109,255 @@ AS $$ SELECT eql_v3.ord_term(a) OPERATOR(pg_catalog.>=) eql_v3.ord_term(b) $$; CREATE FUNCTION eql_v3.gte(a eql_v3.query_timestamp_ord, b public.eql_v3_timestamp_ord) RETURNS boolean LANGUAGE sql IMMUTABLE STRICT PARALLEL SAFE AS $$ SELECT eql_v3.ord_term(a) OPERATOR(pg_catalog.>=) eql_v3.ord_term(b) $$; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord: public.eql_v3_timestamp_eq and eql_v3.query_timestamp_ord (mismatched query domain). +--! @param a public.eql_v3_timestamp_eq left operand +--! @param b eql_v3.query_timestamp_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_timestamp_eq, b eql_v3.query_timestamp_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_timestamp_eq and eql_v3.query_timestamp_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord: eql_v3.query_timestamp_ord and public.eql_v3_timestamp_eq (mismatched query domain). +--! @param a eql_v3.query_timestamp_ord left operand +--! @param b public.eql_v3_timestamp_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_timestamp_ord, b public.eql_v3_timestamp_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_timestamp_ord and public.eql_v3_timestamp_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord: public.eql_v3_timestamp_eq and eql_v3.query_timestamp_ord (mismatched query domain). +--! @param a public.eql_v3_timestamp_eq left operand +--! @param b eql_v3.query_timestamp_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_timestamp_eq, b eql_v3.query_timestamp_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_timestamp_eq and eql_v3.query_timestamp_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord: eql_v3.query_timestamp_ord and public.eql_v3_timestamp_eq (mismatched query domain). +--! @param a eql_v3.query_timestamp_ord left operand +--! @param b public.eql_v3_timestamp_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_timestamp_ord, b public.eql_v3_timestamp_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_timestamp_ord and public.eql_v3_timestamp_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord: public.eql_v3_timestamp_ord_ore and eql_v3.query_timestamp_ord (mismatched query domain). +--! @param a public.eql_v3_timestamp_ord_ore left operand +--! @param b eql_v3.query_timestamp_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_timestamp_ord_ore, b eql_v3.query_timestamp_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_timestamp_ord_ore and eql_v3.query_timestamp_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord: eql_v3.query_timestamp_ord and public.eql_v3_timestamp_ord_ore (mismatched query domain). +--! @param a eql_v3.query_timestamp_ord left operand +--! @param b public.eql_v3_timestamp_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_timestamp_ord, b public.eql_v3_timestamp_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_timestamp_ord and public.eql_v3_timestamp_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord: public.eql_v3_timestamp_ord_ore and eql_v3.query_timestamp_ord (mismatched query domain). +--! @param a public.eql_v3_timestamp_ord_ore left operand +--! @param b eql_v3.query_timestamp_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_timestamp_ord_ore, b eql_v3.query_timestamp_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_timestamp_ord_ore and eql_v3.query_timestamp_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord: eql_v3.query_timestamp_ord and public.eql_v3_timestamp_ord_ore (mismatched query domain). +--! @param a eql_v3.query_timestamp_ord left operand +--! @param b public.eql_v3_timestamp_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_timestamp_ord, b public.eql_v3_timestamp_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_timestamp_ord and public.eql_v3_timestamp_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord: public.eql_v3_timestamp_ord_ore and eql_v3.query_timestamp_ord (mismatched query domain). +--! @param a public.eql_v3_timestamp_ord_ore left operand +--! @param b eql_v3.query_timestamp_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_timestamp_ord_ore, b eql_v3.query_timestamp_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_timestamp_ord_ore and eql_v3.query_timestamp_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord: eql_v3.query_timestamp_ord and public.eql_v3_timestamp_ord_ore (mismatched query domain). +--! @param a eql_v3.query_timestamp_ord left operand +--! @param b public.eql_v3_timestamp_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_timestamp_ord, b public.eql_v3_timestamp_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_timestamp_ord and public.eql_v3_timestamp_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord: public.eql_v3_timestamp_ord_ore and eql_v3.query_timestamp_ord (mismatched query domain). +--! @param a public.eql_v3_timestamp_ord_ore left operand +--! @param b eql_v3.query_timestamp_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_timestamp_ord_ore, b eql_v3.query_timestamp_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_timestamp_ord_ore and eql_v3.query_timestamp_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord: eql_v3.query_timestamp_ord and public.eql_v3_timestamp_ord_ore (mismatched query domain). +--! @param a eql_v3.query_timestamp_ord left operand +--! @param b public.eql_v3_timestamp_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_timestamp_ord, b public.eql_v3_timestamp_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_timestamp_ord and public.eql_v3_timestamp_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord: public.eql_v3_timestamp_ord_ore and eql_v3.query_timestamp_ord (mismatched query domain). +--! @param a public.eql_v3_timestamp_ord_ore left operand +--! @param b eql_v3.query_timestamp_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_timestamp_ord_ore, b eql_v3.query_timestamp_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_timestamp_ord_ore and eql_v3.query_timestamp_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord: eql_v3.query_timestamp_ord and public.eql_v3_timestamp_ord_ore (mismatched query domain). +--! @param a eql_v3.query_timestamp_ord left operand +--! @param b public.eql_v3_timestamp_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_timestamp_ord, b public.eql_v3_timestamp_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_timestamp_ord and public.eql_v3_timestamp_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord: public.eql_v3_timestamp_ord_ore and eql_v3.query_timestamp_ord (mismatched query domain). +--! @param a public.eql_v3_timestamp_ord_ore left operand +--! @param b eql_v3.query_timestamp_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_timestamp_ord_ore, b eql_v3.query_timestamp_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_timestamp_ord_ore and eql_v3.query_timestamp_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord: eql_v3.query_timestamp_ord and public.eql_v3_timestamp_ord_ore (mismatched query domain). +--! @param a eql_v3.query_timestamp_ord left operand +--! @param b public.eql_v3_timestamp_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_timestamp_ord, b public.eql_v3_timestamp_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_timestamp_ord and public.eql_v3_timestamp_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord: public.eql_v3_timestamp_ord_ope and eql_v3.query_timestamp_ord (mismatched query domain). +--! @param a public.eql_v3_timestamp_ord_ope left operand +--! @param b eql_v3.query_timestamp_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_timestamp_ord_ope, b eql_v3.query_timestamp_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_timestamp_ord_ope and eql_v3.query_timestamp_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord: eql_v3.query_timestamp_ord and public.eql_v3_timestamp_ord_ope (mismatched query domain). +--! @param a eql_v3.query_timestamp_ord left operand +--! @param b public.eql_v3_timestamp_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_timestamp_ord, b public.eql_v3_timestamp_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_timestamp_ord and public.eql_v3_timestamp_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord: public.eql_v3_timestamp_ord_ope and eql_v3.query_timestamp_ord (mismatched query domain). +--! @param a public.eql_v3_timestamp_ord_ope left operand +--! @param b eql_v3.query_timestamp_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_timestamp_ord_ope, b eql_v3.query_timestamp_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_timestamp_ord_ope and eql_v3.query_timestamp_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord: eql_v3.query_timestamp_ord and public.eql_v3_timestamp_ord_ope (mismatched query domain). +--! @param a eql_v3.query_timestamp_ord left operand +--! @param b public.eql_v3_timestamp_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_timestamp_ord, b public.eql_v3_timestamp_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_timestamp_ord and public.eql_v3_timestamp_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord: public.eql_v3_timestamp_ord_ope and eql_v3.query_timestamp_ord (mismatched query domain). +--! @param a public.eql_v3_timestamp_ord_ope left operand +--! @param b eql_v3.query_timestamp_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_timestamp_ord_ope, b eql_v3.query_timestamp_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_timestamp_ord_ope and eql_v3.query_timestamp_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord: eql_v3.query_timestamp_ord and public.eql_v3_timestamp_ord_ope (mismatched query domain). +--! @param a eql_v3.query_timestamp_ord left operand +--! @param b public.eql_v3_timestamp_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_timestamp_ord, b public.eql_v3_timestamp_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_timestamp_ord and public.eql_v3_timestamp_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord: public.eql_v3_timestamp_ord_ope and eql_v3.query_timestamp_ord (mismatched query domain). +--! @param a public.eql_v3_timestamp_ord_ope left operand +--! @param b eql_v3.query_timestamp_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_timestamp_ord_ope, b eql_v3.query_timestamp_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_timestamp_ord_ope and eql_v3.query_timestamp_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord: eql_v3.query_timestamp_ord and public.eql_v3_timestamp_ord_ope (mismatched query domain). +--! @param a eql_v3.query_timestamp_ord left operand +--! @param b public.eql_v3_timestamp_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_timestamp_ord, b public.eql_v3_timestamp_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_timestamp_ord and public.eql_v3_timestamp_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord: public.eql_v3_timestamp_ord_ope and eql_v3.query_timestamp_ord (mismatched query domain). +--! @param a public.eql_v3_timestamp_ord_ope left operand +--! @param b eql_v3.query_timestamp_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_timestamp_ord_ope, b eql_v3.query_timestamp_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_timestamp_ord_ope and eql_v3.query_timestamp_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord: eql_v3.query_timestamp_ord and public.eql_v3_timestamp_ord_ope (mismatched query domain). +--! @param a eql_v3.query_timestamp_ord left operand +--! @param b public.eql_v3_timestamp_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_timestamp_ord, b public.eql_v3_timestamp_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_timestamp_ord and public.eql_v3_timestamp_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord: public.eql_v3_timestamp_ord_ope and eql_v3.query_timestamp_ord (mismatched query domain). +--! @param a public.eql_v3_timestamp_ord_ope left operand +--! @param b eql_v3.query_timestamp_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_timestamp_ord_ope, b eql_v3.query_timestamp_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_timestamp_ord_ope and eql_v3.query_timestamp_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord: eql_v3.query_timestamp_ord and public.eql_v3_timestamp_ord_ope (mismatched query domain). +--! @param a eql_v3.query_timestamp_ord left operand +--! @param b public.eql_v3_timestamp_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_timestamp_ord, b public.eql_v3_timestamp_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_timestamp_ord and public.eql_v3_timestamp_ord_ope'; END; $$ +LANGUAGE plpgsql; diff --git a/packages/eql/src/v3/scalars/timestamp/query_timestamp_ord_ope_functions.sql b/packages/eql/src/v3/scalars/timestamp/query_timestamp_ord_ope_functions.sql index b75707f37f..db54fc8ddc 100644 --- a/packages/eql/src/v3/scalars/timestamp/query_timestamp_ord_ope_functions.sql +++ b/packages/eql/src/v3/scalars/timestamp/query_timestamp_ord_ope_functions.sql @@ -109,3 +109,255 @@ AS $$ SELECT eql_v3.ord_term(a) OPERATOR(pg_catalog.>=) eql_v3.ord_term(b) $$; CREATE FUNCTION eql_v3.gte(a eql_v3.query_timestamp_ord_ope, b public.eql_v3_timestamp_ord_ope) RETURNS boolean LANGUAGE sql IMMUTABLE STRICT PARALLEL SAFE AS $$ SELECT eql_v3.ord_term(a) OPERATOR(pg_catalog.>=) eql_v3.ord_term(b) $$; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord_ope: public.eql_v3_timestamp_eq and eql_v3.query_timestamp_ord_ope (mismatched query domain). +--! @param a public.eql_v3_timestamp_eq left operand +--! @param b eql_v3.query_timestamp_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_timestamp_eq, b eql_v3.query_timestamp_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_timestamp_eq and eql_v3.query_timestamp_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord_ope: eql_v3.query_timestamp_ord_ope and public.eql_v3_timestamp_eq (mismatched query domain). +--! @param a eql_v3.query_timestamp_ord_ope left operand +--! @param b public.eql_v3_timestamp_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_timestamp_ord_ope, b public.eql_v3_timestamp_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_timestamp_ord_ope and public.eql_v3_timestamp_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord_ope: public.eql_v3_timestamp_eq and eql_v3.query_timestamp_ord_ope (mismatched query domain). +--! @param a public.eql_v3_timestamp_eq left operand +--! @param b eql_v3.query_timestamp_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_timestamp_eq, b eql_v3.query_timestamp_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_timestamp_eq and eql_v3.query_timestamp_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord_ope: eql_v3.query_timestamp_ord_ope and public.eql_v3_timestamp_eq (mismatched query domain). +--! @param a eql_v3.query_timestamp_ord_ope left operand +--! @param b public.eql_v3_timestamp_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_timestamp_ord_ope, b public.eql_v3_timestamp_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_timestamp_ord_ope and public.eql_v3_timestamp_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord_ope: public.eql_v3_timestamp_ord_ore and eql_v3.query_timestamp_ord_ope (mismatched query domain). +--! @param a public.eql_v3_timestamp_ord_ore left operand +--! @param b eql_v3.query_timestamp_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_timestamp_ord_ore, b eql_v3.query_timestamp_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_timestamp_ord_ore and eql_v3.query_timestamp_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord_ope: eql_v3.query_timestamp_ord_ope and public.eql_v3_timestamp_ord_ore (mismatched query domain). +--! @param a eql_v3.query_timestamp_ord_ope left operand +--! @param b public.eql_v3_timestamp_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_timestamp_ord_ope, b public.eql_v3_timestamp_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_timestamp_ord_ope and public.eql_v3_timestamp_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord_ope: public.eql_v3_timestamp_ord_ore and eql_v3.query_timestamp_ord_ope (mismatched query domain). +--! @param a public.eql_v3_timestamp_ord_ore left operand +--! @param b eql_v3.query_timestamp_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_timestamp_ord_ore, b eql_v3.query_timestamp_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_timestamp_ord_ore and eql_v3.query_timestamp_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord_ope: eql_v3.query_timestamp_ord_ope and public.eql_v3_timestamp_ord_ore (mismatched query domain). +--! @param a eql_v3.query_timestamp_ord_ope left operand +--! @param b public.eql_v3_timestamp_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_timestamp_ord_ope, b public.eql_v3_timestamp_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_timestamp_ord_ope and public.eql_v3_timestamp_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord_ope: public.eql_v3_timestamp_ord_ore and eql_v3.query_timestamp_ord_ope (mismatched query domain). +--! @param a public.eql_v3_timestamp_ord_ore left operand +--! @param b eql_v3.query_timestamp_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_timestamp_ord_ore, b eql_v3.query_timestamp_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_timestamp_ord_ore and eql_v3.query_timestamp_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord_ope: eql_v3.query_timestamp_ord_ope and public.eql_v3_timestamp_ord_ore (mismatched query domain). +--! @param a eql_v3.query_timestamp_ord_ope left operand +--! @param b public.eql_v3_timestamp_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_timestamp_ord_ope, b public.eql_v3_timestamp_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_timestamp_ord_ope and public.eql_v3_timestamp_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord_ope: public.eql_v3_timestamp_ord_ore and eql_v3.query_timestamp_ord_ope (mismatched query domain). +--! @param a public.eql_v3_timestamp_ord_ore left operand +--! @param b eql_v3.query_timestamp_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_timestamp_ord_ore, b eql_v3.query_timestamp_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_timestamp_ord_ore and eql_v3.query_timestamp_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord_ope: eql_v3.query_timestamp_ord_ope and public.eql_v3_timestamp_ord_ore (mismatched query domain). +--! @param a eql_v3.query_timestamp_ord_ope left operand +--! @param b public.eql_v3_timestamp_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_timestamp_ord_ope, b public.eql_v3_timestamp_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_timestamp_ord_ope and public.eql_v3_timestamp_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord_ope: public.eql_v3_timestamp_ord_ore and eql_v3.query_timestamp_ord_ope (mismatched query domain). +--! @param a public.eql_v3_timestamp_ord_ore left operand +--! @param b eql_v3.query_timestamp_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_timestamp_ord_ore, b eql_v3.query_timestamp_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_timestamp_ord_ore and eql_v3.query_timestamp_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord_ope: eql_v3.query_timestamp_ord_ope and public.eql_v3_timestamp_ord_ore (mismatched query domain). +--! @param a eql_v3.query_timestamp_ord_ope left operand +--! @param b public.eql_v3_timestamp_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_timestamp_ord_ope, b public.eql_v3_timestamp_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_timestamp_ord_ope and public.eql_v3_timestamp_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord_ope: public.eql_v3_timestamp_ord_ore and eql_v3.query_timestamp_ord_ope (mismatched query domain). +--! @param a public.eql_v3_timestamp_ord_ore left operand +--! @param b eql_v3.query_timestamp_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_timestamp_ord_ore, b eql_v3.query_timestamp_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_timestamp_ord_ore and eql_v3.query_timestamp_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord_ope: eql_v3.query_timestamp_ord_ope and public.eql_v3_timestamp_ord_ore (mismatched query domain). +--! @param a eql_v3.query_timestamp_ord_ope left operand +--! @param b public.eql_v3_timestamp_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_timestamp_ord_ope, b public.eql_v3_timestamp_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_timestamp_ord_ope and public.eql_v3_timestamp_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord_ope: public.eql_v3_timestamp_ord and eql_v3.query_timestamp_ord_ope (mismatched query domain). +--! @param a public.eql_v3_timestamp_ord left operand +--! @param b eql_v3.query_timestamp_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_timestamp_ord, b eql_v3.query_timestamp_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_timestamp_ord and eql_v3.query_timestamp_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord_ope: eql_v3.query_timestamp_ord_ope and public.eql_v3_timestamp_ord (mismatched query domain). +--! @param a eql_v3.query_timestamp_ord_ope left operand +--! @param b public.eql_v3_timestamp_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_timestamp_ord_ope, b public.eql_v3_timestamp_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_timestamp_ord_ope and public.eql_v3_timestamp_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord_ope: public.eql_v3_timestamp_ord and eql_v3.query_timestamp_ord_ope (mismatched query domain). +--! @param a public.eql_v3_timestamp_ord left operand +--! @param b eql_v3.query_timestamp_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_timestamp_ord, b eql_v3.query_timestamp_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_timestamp_ord and eql_v3.query_timestamp_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord_ope: eql_v3.query_timestamp_ord_ope and public.eql_v3_timestamp_ord (mismatched query domain). +--! @param a eql_v3.query_timestamp_ord_ope left operand +--! @param b public.eql_v3_timestamp_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_timestamp_ord_ope, b public.eql_v3_timestamp_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_timestamp_ord_ope and public.eql_v3_timestamp_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord_ope: public.eql_v3_timestamp_ord and eql_v3.query_timestamp_ord_ope (mismatched query domain). +--! @param a public.eql_v3_timestamp_ord left operand +--! @param b eql_v3.query_timestamp_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_timestamp_ord, b eql_v3.query_timestamp_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_timestamp_ord and eql_v3.query_timestamp_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord_ope: eql_v3.query_timestamp_ord_ope and public.eql_v3_timestamp_ord (mismatched query domain). +--! @param a eql_v3.query_timestamp_ord_ope left operand +--! @param b public.eql_v3_timestamp_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_timestamp_ord_ope, b public.eql_v3_timestamp_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_timestamp_ord_ope and public.eql_v3_timestamp_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord_ope: public.eql_v3_timestamp_ord and eql_v3.query_timestamp_ord_ope (mismatched query domain). +--! @param a public.eql_v3_timestamp_ord left operand +--! @param b eql_v3.query_timestamp_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_timestamp_ord, b eql_v3.query_timestamp_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_timestamp_ord and eql_v3.query_timestamp_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord_ope: eql_v3.query_timestamp_ord_ope and public.eql_v3_timestamp_ord (mismatched query domain). +--! @param a eql_v3.query_timestamp_ord_ope left operand +--! @param b public.eql_v3_timestamp_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_timestamp_ord_ope, b public.eql_v3_timestamp_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_timestamp_ord_ope and public.eql_v3_timestamp_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord_ope: public.eql_v3_timestamp_ord and eql_v3.query_timestamp_ord_ope (mismatched query domain). +--! @param a public.eql_v3_timestamp_ord left operand +--! @param b eql_v3.query_timestamp_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_timestamp_ord, b eql_v3.query_timestamp_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_timestamp_ord and eql_v3.query_timestamp_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord_ope: eql_v3.query_timestamp_ord_ope and public.eql_v3_timestamp_ord (mismatched query domain). +--! @param a eql_v3.query_timestamp_ord_ope left operand +--! @param b public.eql_v3_timestamp_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_timestamp_ord_ope, b public.eql_v3_timestamp_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_timestamp_ord_ope and public.eql_v3_timestamp_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord_ope: public.eql_v3_timestamp_ord and eql_v3.query_timestamp_ord_ope (mismatched query domain). +--! @param a public.eql_v3_timestamp_ord left operand +--! @param b eql_v3.query_timestamp_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_timestamp_ord, b eql_v3.query_timestamp_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_timestamp_ord and eql_v3.query_timestamp_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord_ope: eql_v3.query_timestamp_ord_ope and public.eql_v3_timestamp_ord (mismatched query domain). +--! @param a eql_v3.query_timestamp_ord_ope left operand +--! @param b public.eql_v3_timestamp_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_timestamp_ord_ope, b public.eql_v3_timestamp_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_timestamp_ord_ope and public.eql_v3_timestamp_ord'; END; $$ +LANGUAGE plpgsql; diff --git a/packages/eql/src/v3/scalars/timestamp/query_timestamp_ord_ope_operators.sql b/packages/eql/src/v3/scalars/timestamp/query_timestamp_ord_ope_operators.sql index bea80edde5..838ff1a872 100644 --- a/packages/eql/src/v3/scalars/timestamp/query_timestamp_ord_ope_operators.sql +++ b/packages/eql/src/v3/scalars/timestamp/query_timestamp_ord_ope_operators.sql @@ -77,3 +77,143 @@ CREATE OPERATOR >= ( LEFTARG = eql_v3.query_timestamp_ord_ope, RIGHTARG = public.eql_v3_timestamp_ord_ope, COMMUTATOR = <=, NEGATOR = <, RESTRICT = scalargesel, JOIN = scalargejoinsel ); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_timestamp_eq, RIGHTARG = eql_v3.query_timestamp_ord_ope +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_timestamp_ord_ope, RIGHTARG = public.eql_v3_timestamp_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_timestamp_eq, RIGHTARG = eql_v3.query_timestamp_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_timestamp_ord_ope, RIGHTARG = public.eql_v3_timestamp_eq +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_timestamp_ord_ore, RIGHTARG = eql_v3.query_timestamp_ord_ope +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_timestamp_ord_ope, RIGHTARG = public.eql_v3_timestamp_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_timestamp_ord_ore, RIGHTARG = eql_v3.query_timestamp_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_timestamp_ord_ope, RIGHTARG = public.eql_v3_timestamp_ord_ore +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_timestamp_ord_ore, RIGHTARG = eql_v3.query_timestamp_ord_ope +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_timestamp_ord_ope, RIGHTARG = public.eql_v3_timestamp_ord_ore +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_timestamp_ord_ore, RIGHTARG = eql_v3.query_timestamp_ord_ope +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_timestamp_ord_ope, RIGHTARG = public.eql_v3_timestamp_ord_ore +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_timestamp_ord_ore, RIGHTARG = eql_v3.query_timestamp_ord_ope +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_timestamp_ord_ope, RIGHTARG = public.eql_v3_timestamp_ord_ore +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_timestamp_ord_ore, RIGHTARG = eql_v3.query_timestamp_ord_ope +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_timestamp_ord_ope, RIGHTARG = public.eql_v3_timestamp_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_timestamp_ord, RIGHTARG = eql_v3.query_timestamp_ord_ope +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_timestamp_ord_ope, RIGHTARG = public.eql_v3_timestamp_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_timestamp_ord, RIGHTARG = eql_v3.query_timestamp_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_timestamp_ord_ope, RIGHTARG = public.eql_v3_timestamp_ord +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_timestamp_ord, RIGHTARG = eql_v3.query_timestamp_ord_ope +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_timestamp_ord_ope, RIGHTARG = public.eql_v3_timestamp_ord +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_timestamp_ord, RIGHTARG = eql_v3.query_timestamp_ord_ope +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_timestamp_ord_ope, RIGHTARG = public.eql_v3_timestamp_ord +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_timestamp_ord, RIGHTARG = eql_v3.query_timestamp_ord_ope +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_timestamp_ord_ope, RIGHTARG = public.eql_v3_timestamp_ord +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_timestamp_ord, RIGHTARG = eql_v3.query_timestamp_ord_ope +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_timestamp_ord_ope, RIGHTARG = public.eql_v3_timestamp_ord +); diff --git a/packages/eql/src/v3/scalars/timestamp/query_timestamp_ord_operators.sql b/packages/eql/src/v3/scalars/timestamp/query_timestamp_ord_operators.sql index e8aba6361b..79e64fada0 100644 --- a/packages/eql/src/v3/scalars/timestamp/query_timestamp_ord_operators.sql +++ b/packages/eql/src/v3/scalars/timestamp/query_timestamp_ord_operators.sql @@ -77,3 +77,143 @@ CREATE OPERATOR >= ( LEFTARG = eql_v3.query_timestamp_ord, RIGHTARG = public.eql_v3_timestamp_ord, COMMUTATOR = <=, NEGATOR = <, RESTRICT = scalargesel, JOIN = scalargejoinsel ); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_timestamp_eq, RIGHTARG = eql_v3.query_timestamp_ord +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_timestamp_ord, RIGHTARG = public.eql_v3_timestamp_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_timestamp_eq, RIGHTARG = eql_v3.query_timestamp_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_timestamp_ord, RIGHTARG = public.eql_v3_timestamp_eq +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_timestamp_ord_ore, RIGHTARG = eql_v3.query_timestamp_ord +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_timestamp_ord, RIGHTARG = public.eql_v3_timestamp_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_timestamp_ord_ore, RIGHTARG = eql_v3.query_timestamp_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_timestamp_ord, RIGHTARG = public.eql_v3_timestamp_ord_ore +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_timestamp_ord_ore, RIGHTARG = eql_v3.query_timestamp_ord +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_timestamp_ord, RIGHTARG = public.eql_v3_timestamp_ord_ore +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_timestamp_ord_ore, RIGHTARG = eql_v3.query_timestamp_ord +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_timestamp_ord, RIGHTARG = public.eql_v3_timestamp_ord_ore +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_timestamp_ord_ore, RIGHTARG = eql_v3.query_timestamp_ord +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_timestamp_ord, RIGHTARG = public.eql_v3_timestamp_ord_ore +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_timestamp_ord_ore, RIGHTARG = eql_v3.query_timestamp_ord +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_timestamp_ord, RIGHTARG = public.eql_v3_timestamp_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_timestamp_ord_ope, RIGHTARG = eql_v3.query_timestamp_ord +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_timestamp_ord, RIGHTARG = public.eql_v3_timestamp_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_timestamp_ord_ope, RIGHTARG = eql_v3.query_timestamp_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_timestamp_ord, RIGHTARG = public.eql_v3_timestamp_ord_ope +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_timestamp_ord_ope, RIGHTARG = eql_v3.query_timestamp_ord +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_timestamp_ord, RIGHTARG = public.eql_v3_timestamp_ord_ope +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_timestamp_ord_ope, RIGHTARG = eql_v3.query_timestamp_ord +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_timestamp_ord, RIGHTARG = public.eql_v3_timestamp_ord_ope +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_timestamp_ord_ope, RIGHTARG = eql_v3.query_timestamp_ord +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_timestamp_ord, RIGHTARG = public.eql_v3_timestamp_ord_ope +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_timestamp_ord_ope, RIGHTARG = eql_v3.query_timestamp_ord +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_timestamp_ord, RIGHTARG = public.eql_v3_timestamp_ord_ope +); diff --git a/packages/eql/src/v3/scalars/timestamp/query_timestamp_ord_ore_functions.sql b/packages/eql/src/v3/scalars/timestamp/query_timestamp_ord_ore_functions.sql index f7722bbd27..2dda051679 100644 --- a/packages/eql/src/v3/scalars/timestamp/query_timestamp_ord_ore_functions.sql +++ b/packages/eql/src/v3/scalars/timestamp/query_timestamp_ord_ore_functions.sql @@ -109,3 +109,255 @@ AS $$ SELECT eql_v3.ord_term_ore(a) OPERATOR(public.>=) eql_v3.ord_term_ore(b) $ CREATE FUNCTION eql_v3.gte(a eql_v3.query_timestamp_ord_ore, b public.eql_v3_timestamp_ord_ore) RETURNS boolean LANGUAGE sql IMMUTABLE STRICT PARALLEL SAFE AS $$ SELECT eql_v3.ord_term_ore(a) OPERATOR(public.>=) eql_v3.ord_term_ore(b) $$; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord_ore: public.eql_v3_timestamp_eq and eql_v3.query_timestamp_ord_ore (mismatched query domain). +--! @param a public.eql_v3_timestamp_eq left operand +--! @param b eql_v3.query_timestamp_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_timestamp_eq, b eql_v3.query_timestamp_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_timestamp_eq and eql_v3.query_timestamp_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord_ore: eql_v3.query_timestamp_ord_ore and public.eql_v3_timestamp_eq (mismatched query domain). +--! @param a eql_v3.query_timestamp_ord_ore left operand +--! @param b public.eql_v3_timestamp_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_timestamp_ord_ore, b public.eql_v3_timestamp_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_timestamp_ord_ore and public.eql_v3_timestamp_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord_ore: public.eql_v3_timestamp_eq and eql_v3.query_timestamp_ord_ore (mismatched query domain). +--! @param a public.eql_v3_timestamp_eq left operand +--! @param b eql_v3.query_timestamp_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_timestamp_eq, b eql_v3.query_timestamp_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_timestamp_eq and eql_v3.query_timestamp_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord_ore: eql_v3.query_timestamp_ord_ore and public.eql_v3_timestamp_eq (mismatched query domain). +--! @param a eql_v3.query_timestamp_ord_ore left operand +--! @param b public.eql_v3_timestamp_eq right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_timestamp_ord_ore, b public.eql_v3_timestamp_eq) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_timestamp_ord_ore and public.eql_v3_timestamp_eq'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord_ore: public.eql_v3_timestamp_ord and eql_v3.query_timestamp_ord_ore (mismatched query domain). +--! @param a public.eql_v3_timestamp_ord left operand +--! @param b eql_v3.query_timestamp_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_timestamp_ord, b eql_v3.query_timestamp_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_timestamp_ord and eql_v3.query_timestamp_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord_ore: eql_v3.query_timestamp_ord_ore and public.eql_v3_timestamp_ord (mismatched query domain). +--! @param a eql_v3.query_timestamp_ord_ore left operand +--! @param b public.eql_v3_timestamp_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_timestamp_ord_ore, b public.eql_v3_timestamp_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_timestamp_ord_ore and public.eql_v3_timestamp_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord_ore: public.eql_v3_timestamp_ord and eql_v3.query_timestamp_ord_ore (mismatched query domain). +--! @param a public.eql_v3_timestamp_ord left operand +--! @param b eql_v3.query_timestamp_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_timestamp_ord, b eql_v3.query_timestamp_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_timestamp_ord and eql_v3.query_timestamp_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord_ore: eql_v3.query_timestamp_ord_ore and public.eql_v3_timestamp_ord (mismatched query domain). +--! @param a eql_v3.query_timestamp_ord_ore left operand +--! @param b public.eql_v3_timestamp_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_timestamp_ord_ore, b public.eql_v3_timestamp_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_timestamp_ord_ore and public.eql_v3_timestamp_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord_ore: public.eql_v3_timestamp_ord and eql_v3.query_timestamp_ord_ore (mismatched query domain). +--! @param a public.eql_v3_timestamp_ord left operand +--! @param b eql_v3.query_timestamp_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_timestamp_ord, b eql_v3.query_timestamp_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_timestamp_ord and eql_v3.query_timestamp_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord_ore: eql_v3.query_timestamp_ord_ore and public.eql_v3_timestamp_ord (mismatched query domain). +--! @param a eql_v3.query_timestamp_ord_ore left operand +--! @param b public.eql_v3_timestamp_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_timestamp_ord_ore, b public.eql_v3_timestamp_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_timestamp_ord_ore and public.eql_v3_timestamp_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord_ore: public.eql_v3_timestamp_ord and eql_v3.query_timestamp_ord_ore (mismatched query domain). +--! @param a public.eql_v3_timestamp_ord left operand +--! @param b eql_v3.query_timestamp_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_timestamp_ord, b eql_v3.query_timestamp_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_timestamp_ord and eql_v3.query_timestamp_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord_ore: eql_v3.query_timestamp_ord_ore and public.eql_v3_timestamp_ord (mismatched query domain). +--! @param a eql_v3.query_timestamp_ord_ore left operand +--! @param b public.eql_v3_timestamp_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_timestamp_ord_ore, b public.eql_v3_timestamp_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_timestamp_ord_ore and public.eql_v3_timestamp_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord_ore: public.eql_v3_timestamp_ord and eql_v3.query_timestamp_ord_ore (mismatched query domain). +--! @param a public.eql_v3_timestamp_ord left operand +--! @param b eql_v3.query_timestamp_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_timestamp_ord, b eql_v3.query_timestamp_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_timestamp_ord and eql_v3.query_timestamp_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord_ore: eql_v3.query_timestamp_ord_ore and public.eql_v3_timestamp_ord (mismatched query domain). +--! @param a eql_v3.query_timestamp_ord_ore left operand +--! @param b public.eql_v3_timestamp_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_timestamp_ord_ore, b public.eql_v3_timestamp_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_timestamp_ord_ore and public.eql_v3_timestamp_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord_ore: public.eql_v3_timestamp_ord and eql_v3.query_timestamp_ord_ore (mismatched query domain). +--! @param a public.eql_v3_timestamp_ord left operand +--! @param b eql_v3.query_timestamp_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_timestamp_ord, b eql_v3.query_timestamp_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_timestamp_ord and eql_v3.query_timestamp_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord_ore: eql_v3.query_timestamp_ord_ore and public.eql_v3_timestamp_ord (mismatched query domain). +--! @param a eql_v3.query_timestamp_ord_ore left operand +--! @param b public.eql_v3_timestamp_ord right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_timestamp_ord_ore, b public.eql_v3_timestamp_ord) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_timestamp_ord_ore and public.eql_v3_timestamp_ord'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord_ore: public.eql_v3_timestamp_ord_ope and eql_v3.query_timestamp_ord_ore (mismatched query domain). +--! @param a public.eql_v3_timestamp_ord_ope left operand +--! @param b eql_v3.query_timestamp_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a public.eql_v3_timestamp_ord_ope, b eql_v3.query_timestamp_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'public.eql_v3_timestamp_ord_ope and eql_v3.query_timestamp_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord_ore: eql_v3.query_timestamp_ord_ore and public.eql_v3_timestamp_ord_ope (mismatched query domain). +--! @param a eql_v3.query_timestamp_ord_ore left operand +--! @param b public.eql_v3_timestamp_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.eq(a eql_v3.query_timestamp_ord_ore, b public.eql_v3_timestamp_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '=', 'eql_v3.query_timestamp_ord_ore and public.eql_v3_timestamp_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord_ore: public.eql_v3_timestamp_ord_ope and eql_v3.query_timestamp_ord_ore (mismatched query domain). +--! @param a public.eql_v3_timestamp_ord_ope left operand +--! @param b eql_v3.query_timestamp_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a public.eql_v3_timestamp_ord_ope, b eql_v3.query_timestamp_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'public.eql_v3_timestamp_ord_ope and eql_v3.query_timestamp_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord_ore: eql_v3.query_timestamp_ord_ore and public.eql_v3_timestamp_ord_ope (mismatched query domain). +--! @param a eql_v3.query_timestamp_ord_ore left operand +--! @param b public.eql_v3_timestamp_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.neq(a eql_v3.query_timestamp_ord_ore, b public.eql_v3_timestamp_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<>', 'eql_v3.query_timestamp_ord_ore and public.eql_v3_timestamp_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord_ore: public.eql_v3_timestamp_ord_ope and eql_v3.query_timestamp_ord_ore (mismatched query domain). +--! @param a public.eql_v3_timestamp_ord_ope left operand +--! @param b eql_v3.query_timestamp_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a public.eql_v3_timestamp_ord_ope, b eql_v3.query_timestamp_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'public.eql_v3_timestamp_ord_ope and eql_v3.query_timestamp_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord_ore: eql_v3.query_timestamp_ord_ore and public.eql_v3_timestamp_ord_ope (mismatched query domain). +--! @param a eql_v3.query_timestamp_ord_ore left operand +--! @param b public.eql_v3_timestamp_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lt(a eql_v3.query_timestamp_ord_ore, b public.eql_v3_timestamp_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<', 'eql_v3.query_timestamp_ord_ore and public.eql_v3_timestamp_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord_ore: public.eql_v3_timestamp_ord_ope and eql_v3.query_timestamp_ord_ore (mismatched query domain). +--! @param a public.eql_v3_timestamp_ord_ope left operand +--! @param b eql_v3.query_timestamp_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a public.eql_v3_timestamp_ord_ope, b eql_v3.query_timestamp_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'public.eql_v3_timestamp_ord_ope and eql_v3.query_timestamp_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord_ore: eql_v3.query_timestamp_ord_ore and public.eql_v3_timestamp_ord_ope (mismatched query domain). +--! @param a eql_v3.query_timestamp_ord_ore left operand +--! @param b public.eql_v3_timestamp_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.lte(a eql_v3.query_timestamp_ord_ore, b public.eql_v3_timestamp_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '<=', 'eql_v3.query_timestamp_ord_ore and public.eql_v3_timestamp_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord_ore: public.eql_v3_timestamp_ord_ope and eql_v3.query_timestamp_ord_ore (mismatched query domain). +--! @param a public.eql_v3_timestamp_ord_ope left operand +--! @param b eql_v3.query_timestamp_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a public.eql_v3_timestamp_ord_ope, b eql_v3.query_timestamp_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'public.eql_v3_timestamp_ord_ope and eql_v3.query_timestamp_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord_ore: eql_v3.query_timestamp_ord_ore and public.eql_v3_timestamp_ord_ope (mismatched query domain). +--! @param a eql_v3.query_timestamp_ord_ore left operand +--! @param b public.eql_v3_timestamp_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gt(a eql_v3.query_timestamp_ord_ore, b public.eql_v3_timestamp_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>', 'eql_v3.query_timestamp_ord_ore and public.eql_v3_timestamp_ord_ope'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord_ore: public.eql_v3_timestamp_ord_ope and eql_v3.query_timestamp_ord_ore (mismatched query domain). +--! @param a public.eql_v3_timestamp_ord_ope left operand +--! @param b eql_v3.query_timestamp_ord_ore right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a public.eql_v3_timestamp_ord_ope, b eql_v3.query_timestamp_ord_ore) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'public.eql_v3_timestamp_ord_ope and eql_v3.query_timestamp_ord_ore'; END; $$ +LANGUAGE plpgsql; + +--! @brief Unsupported operator blocker for eql_v3.query_timestamp_ord_ore: eql_v3.query_timestamp_ord_ore and public.eql_v3_timestamp_ord_ope (mismatched query domain). +--! @param a eql_v3.query_timestamp_ord_ore left operand +--! @param b public.eql_v3_timestamp_ord_ope right operand +--! @return boolean never returned — the function always raises +CREATE FUNCTION eql_v3_internal.gte(a eql_v3.query_timestamp_ord_ore, b public.eql_v3_timestamp_ord_ope) +RETURNS boolean IMMUTABLE PARALLEL SAFE +AS $$ BEGIN RAISE EXCEPTION 'operator % is not supported for %: use the query domain that matches the column', '>=', 'eql_v3.query_timestamp_ord_ore and public.eql_v3_timestamp_ord_ope'; END; $$ +LANGUAGE plpgsql; diff --git a/packages/eql/src/v3/scalars/timestamp/query_timestamp_ord_ore_operators.sql b/packages/eql/src/v3/scalars/timestamp/query_timestamp_ord_ore_operators.sql index 63a7acda9a..91beba9811 100644 --- a/packages/eql/src/v3/scalars/timestamp/query_timestamp_ord_ore_operators.sql +++ b/packages/eql/src/v3/scalars/timestamp/query_timestamp_ord_ore_operators.sql @@ -77,3 +77,143 @@ CREATE OPERATOR >= ( LEFTARG = eql_v3.query_timestamp_ord_ore, RIGHTARG = public.eql_v3_timestamp_ord_ore, COMMUTATOR = <=, NEGATOR = <, RESTRICT = scalargesel, JOIN = scalargejoinsel ); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_timestamp_eq, RIGHTARG = eql_v3.query_timestamp_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_timestamp_ord_ore, RIGHTARG = public.eql_v3_timestamp_eq +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_timestamp_eq, RIGHTARG = eql_v3.query_timestamp_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_timestamp_ord_ore, RIGHTARG = public.eql_v3_timestamp_eq +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_timestamp_ord, RIGHTARG = eql_v3.query_timestamp_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_timestamp_ord_ore, RIGHTARG = public.eql_v3_timestamp_ord +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_timestamp_ord, RIGHTARG = eql_v3.query_timestamp_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_timestamp_ord_ore, RIGHTARG = public.eql_v3_timestamp_ord +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_timestamp_ord, RIGHTARG = eql_v3.query_timestamp_ord_ore +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_timestamp_ord_ore, RIGHTARG = public.eql_v3_timestamp_ord +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_timestamp_ord, RIGHTARG = eql_v3.query_timestamp_ord_ore +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_timestamp_ord_ore, RIGHTARG = public.eql_v3_timestamp_ord +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_timestamp_ord, RIGHTARG = eql_v3.query_timestamp_ord_ore +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_timestamp_ord_ore, RIGHTARG = public.eql_v3_timestamp_ord +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_timestamp_ord, RIGHTARG = eql_v3.query_timestamp_ord_ore +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_timestamp_ord_ore, RIGHTARG = public.eql_v3_timestamp_ord +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = public.eql_v3_timestamp_ord_ope, RIGHTARG = eql_v3.query_timestamp_ord_ore +); + +CREATE OPERATOR = ( + FUNCTION = eql_v3_internal.eq, + LEFTARG = eql_v3.query_timestamp_ord_ore, RIGHTARG = public.eql_v3_timestamp_ord_ope +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = public.eql_v3_timestamp_ord_ope, RIGHTARG = eql_v3.query_timestamp_ord_ore +); + +CREATE OPERATOR <> ( + FUNCTION = eql_v3_internal.neq, + LEFTARG = eql_v3.query_timestamp_ord_ore, RIGHTARG = public.eql_v3_timestamp_ord_ope +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = public.eql_v3_timestamp_ord_ope, RIGHTARG = eql_v3.query_timestamp_ord_ore +); + +CREATE OPERATOR < ( + FUNCTION = eql_v3_internal.lt, + LEFTARG = eql_v3.query_timestamp_ord_ore, RIGHTARG = public.eql_v3_timestamp_ord_ope +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = public.eql_v3_timestamp_ord_ope, RIGHTARG = eql_v3.query_timestamp_ord_ore +); + +CREATE OPERATOR <= ( + FUNCTION = eql_v3_internal.lte, + LEFTARG = eql_v3.query_timestamp_ord_ore, RIGHTARG = public.eql_v3_timestamp_ord_ope +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = public.eql_v3_timestamp_ord_ope, RIGHTARG = eql_v3.query_timestamp_ord_ore +); + +CREATE OPERATOR > ( + FUNCTION = eql_v3_internal.gt, + LEFTARG = eql_v3.query_timestamp_ord_ore, RIGHTARG = public.eql_v3_timestamp_ord_ope +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = public.eql_v3_timestamp_ord_ope, RIGHTARG = eql_v3.query_timestamp_ord_ore +); + +CREATE OPERATOR >= ( + FUNCTION = eql_v3_internal.gte, + LEFTARG = eql_v3.query_timestamp_ord_ore, RIGHTARG = public.eql_v3_timestamp_ord_ope +); diff --git a/packages/eql/tests/docker-compose.yml b/packages/eql/tests/docker-compose.yml index 239328becf..7089551a29 100644 --- a/packages/eql/tests/docker-compose.yml +++ b/packages/eql/tests/docker-compose.yml @@ -5,16 +5,16 @@ services: # max_locks_per_transaction is NOT a per-transaction cap — it sizes the # CLUSTER-WIDE shared lock table as max_locks_per_transaction * # max_connections. The shipped uninstaller drops both eql_v3 schemas with - # DROP ... CASCADE, which takes a lock on every one of the ~5,700 objects it + # DROP ... CASCADE, which takes a lock on every one of the ~8,550 objects it # removes and holds them all until commit (sqlx sends the script as a single # implicit transaction). At the stock 64 * 100 = 6,400 slots, ONE uninstall - # already consumes ~89% of the table, so two concurrent ones exhaust it and + # already exceeds the whole table, so two concurrent ones exhaust it and # every backend — including unrelated tests merely installing EQL — fails # with `53200 out of shared memory`. nextest runs one test per core (16 in - # CI), so size for the worst case: 16 * 5,700 ~= 91k slots. 1024 * 100 = - # 102,400 covers it, and costs ~42MB of shared memory (well inside the 2GB + # CI), so size for the worst case: 16 * 8,600 ~= 138k slots. 1536 * 100 = + # 153,600 covers it, and costs ~63MB of shared memory (well inside the 2GB # limit below). Keep tests/sqlx/tests/lock_capacity_tests.rs in sync. - command: postgres -c track_functions=all -c shared_preload_libraries=pg_stat_statements -c pg_stat_statements.track=all -c max_locks_per_transaction=1024 + command: postgres -c track_functions=all -c shared_preload_libraries=pg_stat_statements -c pg_stat_statements.track=all -c max_locks_per_transaction=1536 ports: - 7432:7432 environment: diff --git a/packages/eql/tests/sqlx/src/matrix.rs b/packages/eql/tests/sqlx/src/matrix.rs index 299dc38b98..6d0147a46b 100644 --- a/packages/eql/tests/sqlx/src/matrix.rs +++ b/packages/eql/tests/sqlx/src/matrix.rs @@ -1514,6 +1514,13 @@ macro_rules! __scalar_matrix_planner_metadata_case { JOIN pg_catalog.pg_type rt ON rt.oid = o.oprright WHERE o.oprname IN ({op_list}) AND ('{d}'::regtype = o.oprleft OR '{d}'::regtype = o.oprright) + -- Cross-pair blockers (this domain against ANOTHER domain's + -- query twin) are deliberately metadata-free: they only + -- exist to raise, so keep them out of this accounting. + AND NOT (rt.typname LIKE 'query\_%' AND lt.oid = '{d}'::regtype + AND rt.typname <> 'query_' || substr(lt.typname, 8)) + AND NOT (lt.typname LIKE 'query\_%' AND rt.oid = '{d}'::regtype + AND lt.typname <> 'query_' || substr(rt.typname, 8)) "# ); let rows: Vec<(String, String, String, bool, bool, bool, bool)> = diff --git a/packages/eql/tests/sqlx/tests/lock_capacity_tests.rs b/packages/eql/tests/sqlx/tests/lock_capacity_tests.rs index 080d248f7d..9169fd383f 100644 --- a/packages/eql/tests/sqlx/tests/lock_capacity_tests.rs +++ b/packages/eql/tests/sqlx/tests/lock_capacity_tests.rs @@ -2,12 +2,12 @@ //! suite's concurrent `DROP ... CASCADE` load. //! //! Why this exists: the shipped uninstaller drops both `eql_v3` schemas with -//! `DROP ... CASCADE`. That takes a lock on every one of the ~5,700 objects it +//! `DROP ... CASCADE`. That takes a lock on every one of the ~8,550 objects it //! removes and holds them until the transaction commits — `sqlx::raw_sql` sends //! the whole script as ONE implicit transaction. `max_locks_per_transaction` is //! not a per-transaction cap; it sizes the *cluster-wide* shared lock table as //! `max_locks_per_transaction * max_connections`. At the stock 64 * 100 = 6,400 -//! slots a single uninstall already holds ~89% of the table, so two overlapping +//! slots a single uninstall already exceeds the whole table, so two overlapping //! ones exhaust it — and the backends that then fail with `53200 out of shared //! memory` are mostly INNOCENT tests that were merely installing EQL. //! @@ -18,24 +18,24 @@ //! cause and the fix. //! //! `tests/docker-compose.yml` provisions the capacity (`-c -//! max_locks_per_transaction=1024`); this asserts the database under test +//! max_locks_per_transaction=1536`); this asserts the database under test //! actually has it. use anyhow::Result; use eql_tests::property::connect_pool; /// Locks held by one full run of the shipped uninstaller, measured against the -/// v3 surface (`DROP ... CASCADE` over ~5,682 objects, plus catalog locks). +/// v3 surface (`DROP ... CASCADE` over ~8,550 objects, plus catalog locks). /// This grows as the catalog grows — it is a measured floor, not a constant of /// nature. -const LOCKS_PER_UNINSTALL: i64 = 5_700; +const LOCKS_PER_UNINSTALL: i64 = 8_600; /// Worst-case simultaneous uninstalls: nextest runs one test per core, and CI /// runners have 16. Every one of those slots could be an uninstall-heavy test. const WORST_CASE_CONCURRENT_UNINSTALLS: i64 = 16; -/// The capacity the suite needs: ~91k slots. The compose setting (1024 * 100 = -/// 102,400) clears this; the stock default (6,400) misses it by ~14x. +/// The capacity the suite needs: ~138k slots. The compose setting (1536 * 100 = +/// 153,600) clears this; the stock default (6,400) misses it by ~24x. const MIN_LOCK_TABLE_CAPACITY: i64 = LOCKS_PER_UNINSTALL * WORST_CASE_CONCURRENT_UNINSTALLS; /// Read an integer GUC. Both settings are plain integers with no unit, so @@ -72,7 +72,7 @@ async fn lock_table_fits_concurrent_uninstalls() -> Result<()> { `53200 out of shared memory` in whichever unrelated tests happen to run \ alongside an uninstall.\n\ \n\ - Fix: tests/docker-compose.yml sets `-c max_locks_per_transaction=1024`. \ + Fix: tests/docker-compose.yml sets `-c max_locks_per_transaction=1536`. \ A container created before that change keeps the old setting, so recreate it:\n\ \n mise run postgres:down && mise run postgres:up postgres-17\n" ); diff --git a/packages/eql/tests/sqlx/tests/v3_query_domain_cross_pair_tests.rs b/packages/eql/tests/sqlx/tests/v3_query_domain_cross_pair_tests.rs new file mode 100644 index 0000000000..0c07bbfc49 --- /dev/null +++ b/packages/eql/tests/sqlx/tests/v3_query_domain_cross_pair_tests.rs @@ -0,0 +1,177 @@ +//! A storage domain compared with ANOTHER domain's query twin must +//! raise, never fall through to native `jsonb jsonb`. +//! +//! Every `public.eql_v3__` and `eql_v3.query__` is a domain over +//! `jsonb`, and PostgreSQL resolves an operator against the base type unless an +//! operator with the exact argument types exists. Before the cross-pair +//! blockers, `eql_v3_text_ord = $1::eql_v3.query_text_eq` therefore compared the +//! two envelopes as plain JSON and answered false for equal values, with no +//! error. This suite enumerates the pairs from the installed catalog (so a new +//! domain is covered the day it lands) and asserts each one is claimed by an +//! exact-signature blocker. Creds-free. + +use anyhow::Result; +use sqlx::PgPool; + +/// `(storage, query_twin)` for every term-bearing domain: the pairs that are +/// MEANT to compare. Derived from the catalog: a query twin is +/// `eql_v3.query_` for storage domain `public.eql_v3_`. +async fn twins(pool: &PgPool) -> Result> { + Ok(sqlx::query_as( + r#"SELECT 'public.eql_v3_' || substr(q.typname, 7), 'eql_v3.' || q.typname + FROM pg_type q + JOIN pg_namespace qn ON qn.oid = q.typnamespace AND qn.nspname = 'eql_v3' + JOIN pg_type s ON s.typname = 'eql_v3_' || substr(q.typname, 7) + JOIN pg_namespace sn ON sn.oid = s.typnamespace AND sn.nspname = 'public' + WHERE q.typtype = 'd' AND q.typname LIKE 'query\_%' + -- the SteVec query operand has no scalar storage twin of this shape + AND q.typname <> 'query_json' + ORDER BY 1"#, + ) + .fetch_all(pool) + .await?) +} + +/// The family of a domain name: everything before the index suffix +/// (`text_ord_ope` → `text`). +fn family(storage: &str) -> &str { + let name = storage.trim_start_matches("public.eql_v3_"); + name.split('_').next().expect("a domain name has a family") +} + +/// Operators a storage domain SUPPORTS (a public `eql_v3` wrapper backs its +/// `(domain, domain)` overload, as opposed to an `eql_v3_internal` blocker). +async fn supported_ops(pool: &PgPool, storage: &str) -> Result> { + Ok(sqlx::query_scalar( + r#"SELECT o.oprname + FROM pg_operator o + JOIN pg_proc p ON p.oid = o.oprcode + JOIN pg_namespace pn ON pn.oid = p.pronamespace + WHERE o.oprleft = $1::regtype AND o.oprright = $1::regtype + AND pn.nspname = 'eql_v3' + AND o.oprname IN ('=', '<>', '<', '<=', '>', '>=', '@@') + ORDER BY 1"#, + ) + .bind(storage) + .fetch_all(pool) + .await?) +} + +/// Run `NULL:: NULL::` and return the error text, if any. +/// NULL operands are enough: a blocker raises unconditionally, while native +/// `jsonb jsonb` (the silent fallback) returns NULL. +async fn probe(pool: &PgPool, left: &str, op: &str, right: &str) -> Option { + sqlx::query(&format!("SELECT NULL::{left} {op} NULL::{right}")) + .fetch_all(pool) + .await + .err() + .map(|e| e.to_string()) +} + +#[sqlx::test] +async fn every_same_family_cross_domain_pair_raises_in_both_directions(pool: PgPool) -> Result<()> { + let twins = twins(&pool).await?; + assert!(twins.len() > 20, "catalog enumeration found {twins:?}"); + + let mut checked = 0; + let mut leaks = Vec::new(); + for (storage, _) in &twins { + let storage_ops = supported_ops(&pool, storage).await?; + for (other, query) in &twins { + if other == storage || family(other) != family(storage) { + continue; + } + // `query` is the twin of `other`; pair it with `storage`. + for op in supported_ops(&pool, other).await? { + if !storage_ops.contains(&op) { + continue; + } + for (l, r) in [(storage, query), (query, storage)] { + checked += 1; + match probe(&pool, l, &op, r).await { + Some(e) if e.contains("use the query domain that matches the column") => {} + other => leaks.push(format!("{l} {op} {r}: {other:?}")), + } + } + } + } + } + + assert!(checked > 500, "only {checked} pairs checked"); + assert!( + leaks.is_empty(), + "{} of {checked} same-family cross-domain pairs did not raise:\n{}", + leaks.len(), + leaks.join("\n") + ); + Ok(()) +} + +/// The reported cases (`@@` across families already errored: "operator is not +/// unique"), spelled out so a regression names the exact predicate. +#[sqlx::test] +async fn reported_mismatches_raise(pool: PgPool) -> Result<()> { + for (l, op, r) in [ + ("public.eql_v3_text_ord", "=", "eql_v3.query_text_eq"), + ("public.eql_v3_text_search", "=", "eql_v3.query_text_eq"), + ("public.eql_v3_text_ord", "<", "eql_v3.query_text_ord_ope"), + ("eql_v3.query_text_ord_ope", "<", "public.eql_v3_text_ord"), + ] { + let err = probe(&pool, l, op, r) + .await + .unwrap_or_else(|| panic!("{l} {op} {r} fell through to native jsonb")); + assert!(err.contains("is not supported for"), "{l} {op} {r}: {err}"); + } + Ok(()) +} + +/// Control: the matching twin is untouched — it still resolves to the wrapper. +#[sqlx::test] +async fn matching_twin_still_compares(pool: PgPool) -> Result<()> { + for (l, op, r) in [ + ("public.eql_v3_text_eq", "=", "eql_v3.query_text_eq"), + ("public.eql_v3_text_ord", "<", "eql_v3.query_text_ord"), + ("public.eql_v3_text_match", "@@", "eql_v3.query_text_match"), + ( + "public.eql_v3_integer_ord", + ">=", + "eql_v3.query_integer_ord", + ), + ] { + assert_eq!(probe(&pool, l, op, r).await, None, "{l} {op} {r}"); + } + Ok(()) +} + +/// The blockers are recognised as blockers by `eql_v3.lints()` (it matches their +/// message text), so none is reported as an inlinability or blocker-shape error. +/// Without the shared `is not supported for` marker every one of them is +/// misclassified as an ordinary operator wrapper that fails to inline. +#[sqlx::test] +async fn cross_pair_blockers_are_recognised_by_the_lints(pool: PgPool) -> Result<()> { + let flagged: Vec<(String, String, String)> = sqlx::query_as( + r#"SELECT severity, category, object_name FROM eql_v3.lints() + WHERE severity = 'error' + AND object_name LIKE 'operator %' + AND object_name LIKE '%query\_%'"#, + ) + .fetch_all(&pool) + .await?; + assert!( + flagged.is_empty(), + "lint errors on query-twin operators: {flagged:?}" + ); + + let blockers: i64 = sqlx::query_scalar( + r#"SELECT count(*) FROM pg_proc p + JOIN pg_namespace n ON n.oid = p.pronamespace AND n.nspname = 'eql_v3_internal' + WHERE p.prosrc LIKE '%use the query domain that matches the column%'"#, + ) + .fetch_one(&pool) + .await?; + assert!( + blockers > 500, + "only {blockers} cross-pair blockers installed" + ); + Ok(()) +} diff --git a/skills/stash-postgres/SKILL.md b/skills/stash-postgres/SKILL.md index edb611ff01..4c2a47a0a2 100644 --- a/skills/stash-postgres/SKILL.md +++ b/skills/stash-postgres/SKILL.md @@ -105,6 +105,14 @@ public.eql_v3_bigint_ord → eql_v3.query_bigint_ord public.eql_v3_timestamp_ord → eql_v3.query_timestamp_ord ``` +Use the query domain of the column's *own* domain. Pairing a column with a +different domain's query operand (for example `public.eql_v3_text_ord` with +`eql_v3.query_text_eq`) raises `operator = is not supported for ...: use the +query domain that matches the column` rather than returning no rows. This +guard covers the comparison operators (`=`, `<>`, `<`, `<=`, `>`, `>=`, `@@`) +that both the column and the wrong query domain support, within one type +family. Build the cast from the column's own domain every time. + **One irregular case:** `types.Json` builds `public.eql_v3_json_search`, but its query domain is `eql_v3.query_json` — not `query_json_search`.