|
| 1 | +/* <begin connected objects> */ |
| 2 | +/* |
| 3 | +This file is auto generated by pgrx. |
| 4 | +
|
| 5 | +The ordering of items is not stable, it is driven by a dependency graph. |
| 6 | +*/ |
| 7 | +/* </end connected objects> */ |
| 8 | + |
| 9 | +/* <begin connected objects> */ |
| 10 | +-- src/lib.rs:16 |
| 11 | +-- bootstrap |
| 12 | +CREATE TYPE bm25vector; |
| 13 | +CREATE TYPE bm25query; |
| 14 | +/* </end connected objects> */ |
| 15 | + |
| 16 | +/* <begin connected objects> */ |
| 17 | +-- src/index/am.rs:11 |
| 18 | +-- vchord_bm25::index::am::_bm25_amhandler |
| 19 | +CREATE FUNCTION _bm25_amhandler(internal) RETURNS index_am_handler |
| 20 | +IMMUTABLE STRICT PARALLEL SAFE LANGUAGE c AS 'MODULE_PATHNAME', '_bm25_amhandler_wrapper'; |
| 21 | +/* </end connected objects> */ |
| 22 | + |
| 23 | +/* <begin connected objects> */ |
| 24 | +-- src/datatype/text_bm25vector.rs:136 |
| 25 | +-- vchord_bm25::datatype::text_bm25vector::_bm25catalog_bm25vector_in |
| 26 | +CREATE FUNCTION "_bm25catalog_bm25vector_in"( |
| 27 | + "input" cstring, /* &core::ffi::c_str::CStr */ |
| 28 | + "_oid" oid, /* pgrx_pg_sys::submodules::oids::Oid */ |
| 29 | + "_typmod" INT /* i32 */ |
| 30 | +) RETURNS bm25vector /* vchord_bm25::datatype::memory_bm25vector::Bm25VectorOutput */ |
| 31 | +IMMUTABLE STRICT PARALLEL SAFE |
| 32 | +LANGUAGE c /* Rust */ |
| 33 | +AS 'MODULE_PATHNAME', '_bm25catalog_bm25vector_in_wrapper'; |
| 34 | +/* </end connected objects> */ |
| 35 | + |
| 36 | +/* <begin connected objects> */ |
| 37 | +-- src/datatype/operator_bm25vector.rs:3 |
| 38 | +-- vchord_bm25::datatype::operator_bm25vector::_bm25catalog_bm25vector_operator_eq |
| 39 | +CREATE FUNCTION "_bm25catalog_bm25vector_operator_eq"( |
| 40 | + "lhs" bm25vector, /* vchord_bm25::datatype::memory_bm25vector::Bm25VectorInput<'_> */ |
| 41 | + "rhs" bm25vector /* vchord_bm25::datatype::memory_bm25vector::Bm25VectorInput<'_> */ |
| 42 | +) RETURNS bool /* bool */ |
| 43 | +IMMUTABLE STRICT PARALLEL SAFE |
| 44 | +LANGUAGE c /* Rust */ |
| 45 | +AS 'MODULE_PATHNAME', '_bm25catalog_bm25vector_operator_eq_wrapper'; |
| 46 | +/* </end connected objects> */ |
| 47 | + |
| 48 | +/* <begin connected objects> */ |
| 49 | +-- src/datatype/operator_bm25vector.rs:8 |
| 50 | +-- vchord_bm25::datatype::operator_bm25vector::_bm25catalog_bm25vector_operator_neq |
| 51 | +CREATE FUNCTION "_bm25catalog_bm25vector_operator_neq"( |
| 52 | + "lhs" bm25vector, /* vchord_bm25::datatype::memory_bm25vector::Bm25VectorInput<'_> */ |
| 53 | + "rhs" bm25vector /* vchord_bm25::datatype::memory_bm25vector::Bm25VectorInput<'_> */ |
| 54 | +) RETURNS bool /* bool */ |
| 55 | +IMMUTABLE STRICT PARALLEL SAFE |
| 56 | +LANGUAGE c /* Rust */ |
| 57 | +AS 'MODULE_PATHNAME', '_bm25catalog_bm25vector_operator_neq_wrapper'; |
| 58 | +/* </end connected objects> */ |
| 59 | + |
| 60 | +/* <begin connected objects> */ |
| 61 | +-- src/datatype/text_bm25vector.rs:145 |
| 62 | +-- vchord_bm25::datatype::text_bm25vector::_bm25catalog_bm25vector_out |
| 63 | +CREATE FUNCTION "_bm25catalog_bm25vector_out"( |
| 64 | + "vector" bm25vector /* vchord_bm25::datatype::memory_bm25vector::Bm25VectorInput<'_> */ |
| 65 | +) RETURNS cstring /* alloc::ffi::c_str::CString */ |
| 66 | +IMMUTABLE STRICT PARALLEL SAFE |
| 67 | +LANGUAGE c /* Rust */ |
| 68 | +AS 'MODULE_PATHNAME', '_bm25catalog_bm25vector_out_wrapper'; |
| 69 | +/* </end connected objects> */ |
| 70 | + |
| 71 | +/* <begin connected objects> */ |
| 72 | +-- src/datatype/binary_bm25vector.rs:30 |
| 73 | +-- vchord_bm25::datatype::binary_bm25vector::_bm25catalog_bm25vector_recv |
| 74 | +CREATE FUNCTION "_bm25catalog_bm25vector_recv"( |
| 75 | + "internal" internal, /* pgrx::datum::internal::Internal */ |
| 76 | + "_oid" oid, /* pgrx_pg_sys::submodules::oids::Oid */ |
| 77 | + "_typmod" INT /* i32 */ |
| 78 | +) RETURNS bm25vector /* vchord_bm25::datatype::memory_bm25vector::Bm25VectorOutput */ |
| 79 | +IMMUTABLE STRICT PARALLEL SAFE |
| 80 | +LANGUAGE c /* Rust */ |
| 81 | +AS 'MODULE_PATHNAME', '_bm25catalog_bm25vector_recv_wrapper'; |
| 82 | +/* </end connected objects> */ |
| 83 | + |
| 84 | +/* <begin connected objects> */ |
| 85 | +-- src/datatype/binary_bm25vector.rs:12 |
| 86 | +-- vchord_bm25::datatype::binary_bm25vector::_bm25catalog_bm25vector_send |
| 87 | +CREATE FUNCTION "_bm25catalog_bm25vector_send"( |
| 88 | + "vector" bm25vector /* vchord_bm25::datatype::memory_bm25vector::Bm25VectorInput<'_> */ |
| 89 | +) RETURNS bytea /* vchord_bm25::datatype::bytea::Bytea */ |
| 90 | +IMMUTABLE STRICT PARALLEL SAFE |
| 91 | +LANGUAGE c /* Rust */ |
| 92 | +AS 'MODULE_PATHNAME', '_bm25catalog_bm25vector_send_wrapper'; |
| 93 | +/* </end connected objects> */ |
| 94 | + |
| 95 | +/* <begin connected objects> */ |
| 96 | +-- src/datatype/cast.rs:3 |
| 97 | +-- vchord_bm25::datatype::cast::_vchord_bm25_cast_array_to_bm25vector |
| 98 | +CREATE FUNCTION "_vchord_bm25_cast_array_to_bm25vector"( |
| 99 | + "array" INT[], /* pgrx::datum::array::Array<'_, i32> */ |
| 100 | + "_typmod" INT, /* i32 */ |
| 101 | + "_explicit" bool /* bool */ |
| 102 | +) RETURNS bm25vector /* vchord_bm25::datatype::memory_bm25vector::Bm25VectorOutput */ |
| 103 | +IMMUTABLE STRICT PARALLEL SAFE |
| 104 | +LANGUAGE c /* Rust */ |
| 105 | +AS 'MODULE_PATHNAME', '_vchord_bm25_cast_array_to_bm25vector_wrapper'; |
| 106 | +/* </end connected objects> */ |
| 107 | + |
| 108 | +/* <begin connected objects> */ |
| 109 | +-- src/page/inspector.rs:8 |
| 110 | +-- vchord_bm25::page::inspector::bm25_page_inspect |
| 111 | +CREATE FUNCTION "bm25_page_inspect"( |
| 112 | + "index" regclass, /* pgrx::rel::PgRelation */ |
| 113 | + "blkno" INT /* i32 */ |
| 114 | +) RETURNS TEXT /* alloc::string::String */ |
| 115 | +STRICT |
| 116 | +LANGUAGE c /* Rust */ |
| 117 | +AS 'MODULE_PATHNAME', 'bm25_page_inspect_wrapper'; |
| 118 | +/* </end connected objects> */ |
| 119 | + |
| 120 | +/* <begin connected objects> */ |
| 121 | +-- src/datatype/functions.rs:11 |
| 122 | +-- vchord_bm25::datatype::functions::search_bm25query |
| 123 | +CREATE FUNCTION "search_bm25query"( |
| 124 | + "target_vector" bm25vector, /* vchord_bm25::datatype::memory_bm25vector::Bm25VectorInput<'_> */ |
| 125 | + "query" bm25query /* pgrx::heap_tuple::PgHeapTuple<'_, pgrx::pgbox::AllocatedByRust> */ |
| 126 | +) RETURNS real /* f32 */ |
| 127 | +STRICT STABLE PARALLEL SAFE |
| 128 | +LANGUAGE c /* Rust */ |
| 129 | +AS 'MODULE_PATHNAME', 'search_bm25query_wrapper'; |
| 130 | +/* </end connected objects> */ |
| 131 | + |
| 132 | +/* <begin connected objects> */ |
| 133 | +-- src/lib.rs:17 |
| 134 | +-- finalize |
| 135 | +CREATE TYPE bm25vector ( |
| 136 | + INPUT = _bm25catalog_bm25vector_in, |
| 137 | + OUTPUT = _bm25catalog_bm25vector_out, |
| 138 | + RECEIVE = _bm25catalog_bm25vector_recv, |
| 139 | + SEND = _bm25catalog_bm25vector_send, |
| 140 | + STORAGE = EXTERNAL, |
| 141 | + INTERNALLENGTH = VARIABLE, |
| 142 | + ALIGNMENT = double |
| 143 | +); |
| 144 | + |
| 145 | +CREATE OPERATOR = ( |
| 146 | + PROCEDURE = _bm25catalog_bm25vector_operator_eq, |
| 147 | + LEFTARG = bm25vector, |
| 148 | + RIGHTARG = bm25vector, |
| 149 | + COMMUTATOR = =, |
| 150 | + NEGATOR = <>, |
| 151 | + RESTRICT = eqsel, |
| 152 | + JOIN = eqjoinsel |
| 153 | +); |
| 154 | + |
| 155 | +CREATE OPERATOR <> ( |
| 156 | + PROCEDURE = _bm25catalog_bm25vector_operator_neq, |
| 157 | + LEFTARG = bm25vector, |
| 158 | + RIGHTARG = bm25vector, |
| 159 | + COMMUTATOR = <>, |
| 160 | + NEGATOR = =, |
| 161 | + RESTRICT = eqsel, |
| 162 | + JOIN = eqjoinsel |
| 163 | +); |
| 164 | + |
| 165 | +CREATE CAST (int[] AS bm25vector) |
| 166 | + WITH FUNCTION _vchord_bm25_cast_array_to_bm25vector(int[], integer, boolean) AS IMPLICIT; |
| 167 | + |
| 168 | +CREATE TYPE bm25query AS ( |
| 169 | + index_oid regclass, |
| 170 | + query_vector bm25vector |
| 171 | +); |
| 172 | + |
| 173 | +CREATE FUNCTION to_bm25query(index_oid regclass, query_vector bm25vector) RETURNS bm25query |
| 174 | + IMMUTABLE STRICT PARALLEL SAFE LANGUAGE sql AS $$ |
| 175 | + SELECT index_oid, query_vector; |
| 176 | + $$; |
| 177 | + |
| 178 | +CREATE ACCESS METHOD bm25 TYPE INDEX HANDLER _bm25_amhandler; |
| 179 | +COMMENT ON ACCESS METHOD bm25 IS 'vchord bm25 index access method'; |
| 180 | + |
| 181 | +CREATE OPERATOR pg_catalog.<&> ( |
| 182 | + PROCEDURE = search_bm25query, |
| 183 | + LEFTARG = bm25vector, |
| 184 | + RIGHTARG = bm25query |
| 185 | +); |
| 186 | + |
| 187 | +CREATE OPERATOR FAMILY bm25_ops USING bm25; |
| 188 | + |
| 189 | +CREATE OPERATOR CLASS bm25_ops FOR TYPE bm25vector USING bm25 FAMILY bm25_ops AS |
| 190 | + OPERATOR 1 pg_catalog.<&>(bm25vector, bm25query) FOR ORDER BY float_ops; |
| 191 | +/* </end connected objects> */ |
| 192 | + |
0 commit comments