|
- /* contrib/btree_gist/btree_gist--1.4--1.5.sql */
-
- -- complain if script is sourced in psql, rather than via CREATE EXTENSION
- \echo Use "ALTER EXTENSION btree_gist UPDATE TO '1.5'" to load this file. \quit
-
- --
- --
- --
- -- enum ops
- --
- --
- --
- -- define the GiST support methods
- CREATE FUNCTION gbt_enum_consistent(internal,anyenum,int2,oid,internal)
- RETURNS bool
- AS 'MODULE_PATHNAME'
- LANGUAGE C IMMUTABLE STRICT;
-
- CREATE FUNCTION gbt_enum_compress(internal)
- RETURNS internal
- AS 'MODULE_PATHNAME'
- LANGUAGE C IMMUTABLE STRICT;
-
- CREATE FUNCTION gbt_enum_fetch(internal)
- RETURNS internal
- AS 'MODULE_PATHNAME'
- LANGUAGE C IMMUTABLE STRICT;
-
- CREATE FUNCTION gbt_enum_penalty(internal,internal,internal)
- RETURNS internal
- AS 'MODULE_PATHNAME'
- LANGUAGE C IMMUTABLE STRICT;
-
- CREATE FUNCTION gbt_enum_picksplit(internal, internal)
- RETURNS internal
- AS 'MODULE_PATHNAME'
- LANGUAGE C IMMUTABLE STRICT;
-
- CREATE FUNCTION gbt_enum_union(internal, internal)
- RETURNS gbtreekey8
- AS 'MODULE_PATHNAME'
- LANGUAGE C IMMUTABLE STRICT;
-
- CREATE FUNCTION gbt_enum_same(gbtreekey8, gbtreekey8, internal)
- RETURNS internal
- AS 'MODULE_PATHNAME'
- LANGUAGE C IMMUTABLE STRICT;
-
- -- Create the operator class
- CREATE OPERATOR CLASS gist_enum_ops
- DEFAULT FOR TYPE anyenum USING gist
- AS
- OPERATOR 1 < ,
- OPERATOR 2 <= ,
- OPERATOR 3 = ,
- OPERATOR 4 >= ,
- OPERATOR 5 > ,
- FUNCTION 1 gbt_enum_consistent (internal, anyenum, int2, oid, internal),
- FUNCTION 2 gbt_enum_union (internal, internal),
- FUNCTION 3 gbt_enum_compress (internal),
- FUNCTION 4 gbt_decompress (internal),
- FUNCTION 5 gbt_enum_penalty (internal, internal, internal),
- FUNCTION 6 gbt_enum_picksplit (internal, internal),
- FUNCTION 7 gbt_enum_same (gbtreekey8, gbtreekey8, internal),
- STORAGE gbtreekey8;
-
- ALTER OPERATOR FAMILY gist_enum_ops USING gist ADD
- OPERATOR 6 <> (anyenum, anyenum) ,
- FUNCTION 9 (anyenum, anyenum) gbt_enum_fetch (internal) ;
|