1 /*-------------------------------------------------------------------------
4 * Functions for the variable-length built-in types.
6 * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group
7 * Portions Copyright (c) 1994, Regents of the University of California
9 * src/include/utils/varlena.h
11 *-------------------------------------------------------------------------
16 #include "nodes/pg_list.h"
17 #include "utils/sortsupport.h"
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
,
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
,
32 extern bool SplitDirectoriesString(char *rawstring
, char separator
,
34 extern bool SplitGUCList(char *rawstring
, char separator
,
36 extern text
*replace_text_regexp(text
*src_text
, text
*pattern_text
,
38 int cflags
, Oid collation
,
39 int search_start
, int n
);
41 typedef struct ClosestMatchState
49 extern void initClosestMatch(ClosestMatchState
*state
, const char *source
, int max_d
);
50 extern void updateClosestMatch(ClosestMatchState
*state
, const char *candidate
);
51 extern const char *getClosestMatch(ClosestMatchState
*state
);