1 /*------------------------------------------------------------------------- 2 * 3 * varlena.h 4 * Functions for the variable-length built-in types. 5 * 6 * Portions Copyright (c) 1996-2017, 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(char *arg1, int len1, char *arg2, int len2, Oid collid); 20 extern void varstr_sortsupport(SortSupport ssup, Oid collid, bool bpchar); 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