1 | /*------------------------------------------------------------------------- |
2 | * |
3 | * varlena.h |
4 | * Functions for the variable-length built-in types. |
5 | * |
6 | * Portions Copyright (c) 1996-2019, PostgreSQL Global Development Group |
7 | * Portions Copyright (c) 1994, Regents of the University of California |
8 | * |
9 | * src/include/utils/varlena.h |
10 | * |
11 | *------------------------------------------------------------------------- |
12 | */ |
13 | #ifndef VARLENA_H |
14 | #define VARLENA_H |
15 | |
16 | #include "nodes/pg_list.h" |
17 | #include "utils/sortsupport.h" |
18 | |
19 | extern int varstr_cmp(const char *arg1, int len1, const char *arg2, int len2, Oid collid); |
20 | extern void varstr_sortsupport(SortSupport ssup, Oid typid, Oid collid); |
21 | extern int varstr_levenshtein(const char *source, int slen, |
22 | const char *target, int tlen, |
23 | int ins_c, int del_c, int sub_c, |
24 | bool trusted); |
25 | extern int varstr_levenshtein_less_equal(const char *source, int slen, |
26 | const char *target, int tlen, |
27 | int ins_c, int del_c, int sub_c, |
28 | int max_d, bool trusted); |
29 | extern List *textToQualifiedNameList(text *textval); |
30 | extern bool SplitIdentifierString(char *rawstring, char separator, |
31 | List **namelist); |
32 | extern bool SplitDirectoriesString(char *rawstring, char separator, |
33 | List **namelist); |
34 | extern bool SplitGUCList(char *rawstring, char separator, |
35 | List **namelist); |
36 | extern text *replace_text_regexp(text *src_text, void *regexp, |
37 | text *replace_text, bool glob); |
38 | |
39 | #endif |
40 | |