| /*------------------------------------------------------------------------- |
| * |
| * Utility routines for SQL dumping |
| * Basically this is stuff that is useful in both pg_dump and pg_dumpall. |
| * Lately it's also being used by psql and bin/scripts/ ... |
| * |
| * |
| * Portions Copyright (c) 1996-2009, PostgreSQL Global Development Group |
| * Portions Copyright (c) 1994, Regents of the University of California |
| * |
| * $PostgreSQL: pgsql/src/bin/pg_dump/dumputils.h,v 1.19 2006/10/09 23:30:33 tgl Exp $ |
| * |
| *------------------------------------------------------------------------- |
| */ |
| |
| #ifndef DUMPUTILS_H |
| #define DUMPUTILS_H |
| |
| #include "libpq-fe.h" |
| #include "pqexpbuffer.h" |
| |
| extern void init_parallel_dump_utils(void); |
| extern const char *fmtId(const char *identifier); |
| extern void appendStringLiteral(PQExpBuffer buf, const char *str, |
| int encoding, bool std_strings); |
| extern void appendStringLiteralConn(PQExpBuffer buf, const char *str, |
| PGconn *conn); |
| extern void appendStringLiteralDQ(PQExpBuffer buf, const char *str, |
| const char *dqprefix); |
| extern int parse_version(const char *versionString); |
| extern bool parsePGArray(const char *atext, char ***itemarray, int *nitems); |
| extern bool buildACLCommands(const char *name, const char *type, |
| const char *acls, const char *owner, |
| int remoteVersion, |
| PQExpBuffer sql); |
| extern void processSQLNamePattern(PGconn *conn, PQExpBuffer buf, |
| const char *pattern, |
| bool have_where, bool force_escape, |
| const char *schemavar, const char *namevar, |
| const char *altnamevar, const char *visibilityrule); |
| /* GPDB additions */ |
| extern char *escape_backslashes(const char *src, bool quotes_too); |
| extern char *escape_fmtopts_string(const char *src); |
| extern char *custom_fmtopts_string(const char *src); |
| |
| |
| #endif /* DUMPUTILS_H */ |