~vcs-imports/mammoth-replicator/trunk

« back to all changes in this revision

Viewing changes to contrib/pg_trgm/pg_trgm.sql.in

  • Committer: alvherre
  • Date: 2005-12-16 21:24:52 UTC
  • Revision ID: svn-v4:db760fc0-0f08-0410-9d63-cc6633f64896:trunk:1
Initial import of the REL8_0_3 sources from the Pgsql CVS repository.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
SET search_path = public;
 
2
 
 
3
BEGIN;
 
4
 
 
5
create function set_limit(float4)
 
6
returns float4
 
7
AS 'MODULE_PATHNAME'
 
8
LANGUAGE 'C' with (isstrict,iscachable);
 
9
 
 
10
create function show_limit()
 
11
returns float4
 
12
AS 'MODULE_PATHNAME'
 
13
LANGUAGE 'C' with (isstrict,iscachable);
 
14
 
 
15
create function show_trgm(text)
 
16
returns _text
 
17
AS 'MODULE_PATHNAME'
 
18
LANGUAGE 'C' with (isstrict,iscachable);
 
19
 
 
20
create function similarity(text,text)
 
21
returns float4
 
22
AS 'MODULE_PATHNAME'
 
23
LANGUAGE 'C' with (isstrict,iscachable);
 
24
 
 
25
create function similarity_op(text,text)
 
26
returns bool
 
27
AS 'MODULE_PATHNAME'
 
28
LANGUAGE 'C' with (isstrict,iscachable);
 
29
 
 
30
CREATE OPERATOR % (
 
31
        LEFTARG = text,
 
32
        RIGHTARG = text,
 
33
        PROCEDURE = similarity_op,
 
34
        COMMUTATOR = '%',
 
35
        RESTRICT = contsel,
 
36
        JOIN = contjoinsel
 
37
);
 
38
 
 
39
--gist key
 
40
CREATE FUNCTION gtrgm_in(cstring)
 
41
RETURNS gtrgm
 
42
AS 'MODULE_PATHNAME'
 
43
LANGUAGE 'C' with (isstrict);
 
44
 
 
45
CREATE FUNCTION gtrgm_out(gtrgm)
 
46
RETURNS cstring
 
47
AS 'MODULE_PATHNAME'
 
48
LANGUAGE 'C' with (isstrict);
 
49
 
 
50
CREATE TYPE gtrgm (
 
51
        INTERNALLENGTH = -1,
 
52
        INPUT = gtrgm_in,
 
53
        OUTPUT = gtrgm_out
 
54
);
 
55
 
 
56
-- support functions
 
57
CREATE FUNCTION gtrgm_consistent(gtrgm,internal,int4)
 
58
RETURNS bool
 
59
AS 'MODULE_PATHNAME'
 
60
LANGUAGE 'C';
 
61
 
 
62
CREATE FUNCTION gtrgm_compress(internal)
 
63
RETURNS internal
 
64
AS 'MODULE_PATHNAME'
 
65
LANGUAGE 'C';
 
66
 
 
67
CREATE FUNCTION gtrgm_decompress(internal)
 
68
RETURNS internal
 
69
AS 'MODULE_PATHNAME'
 
70
LANGUAGE 'C';
 
71
 
 
72
CREATE FUNCTION gtrgm_penalty(internal,internal,internal)
 
73
RETURNS internal
 
74
AS 'MODULE_PATHNAME'
 
75
LANGUAGE 'C' with (isstrict);
 
76
 
 
77
CREATE FUNCTION gtrgm_picksplit(internal, internal)
 
78
RETURNS internal
 
79
AS 'MODULE_PATHNAME'
 
80
LANGUAGE 'C';
 
81
 
 
82
CREATE FUNCTION gtrgm_union(bytea, internal)
 
83
RETURNS _int4
 
84
AS 'MODULE_PATHNAME'
 
85
LANGUAGE 'C';
 
86
 
 
87
CREATE FUNCTION gtrgm_same(gtrgm, gtrgm, internal)
 
88
RETURNS internal
 
89
AS 'MODULE_PATHNAME'
 
90
LANGUAGE 'C';
 
91
 
 
92
-- create the operator class
 
93
CREATE OPERATOR CLASS gist_trgm_ops
 
94
FOR TYPE text USING gist
 
95
AS
 
96
        OPERATOR        1       % (text, text),
 
97
        FUNCTION        1       gtrgm_consistent (gtrgm, internal, int4),
 
98
        FUNCTION        2       gtrgm_union (bytea, internal),
 
99
        FUNCTION        3       gtrgm_compress (internal),
 
100
        FUNCTION        4       gtrgm_decompress (internal),
 
101
        FUNCTION        5       gtrgm_penalty (internal, internal, internal),
 
102
        FUNCTION        6       gtrgm_picksplit (internal, internal),
 
103
        FUNCTION        7       gtrgm_same (gtrgm, gtrgm, internal),
 
104
        STORAGE         gtrgm;
 
105
 
 
106
 
 
107
COMMIT;