diff options
Diffstat (limited to 'src/backend/utils/mb')
| -rw-r--r-- | src/backend/utils/mb/common.c | 22 | ||||
| -rw-r--r-- | src/backend/utils/mb/mbutils.c | 10 |
2 files changed, 27 insertions, 5 deletions
diff --git a/src/backend/utils/mb/common.c b/src/backend/utils/mb/common.c index 2927bc5e94..89f63ad2ec 100644 --- a/src/backend/utils/mb/common.c +++ b/src/backend/utils/mb/common.c @@ -2,7 +2,7 @@ * This file contains some public functions * usable for both the backend and the frontend. * Tatsuo Ishii - * $Id: common.c,v 1.8 2000/01/18 05:14:24 ishii Exp $ */ + * $Id: common.c,v 1.9 2000/06/13 07:35:15 tgl Exp $ */ #include <stdlib.h> #include <string.h> @@ -14,8 +14,10 @@ #endif #include "postgres.h" + #include "miscadmin.h" #include "mb/pg_wchar.h" +#include "utils/builtins.h" /* * convert encoding char to encoding symbol value. @@ -38,6 +40,15 @@ pg_char_to_encoding(const char *s) return (p->encoding); } +/* Same, as an fmgr-callable function */ +Datum +PG_char_to_encoding(PG_FUNCTION_ARGS) +{ + Name s = PG_GETARG_NAME(0); + + PG_RETURN_INT32(pg_char_to_encoding(NameStr(*s))); +} + /* * check to see if encoding name is valid */ @@ -77,6 +88,15 @@ pg_encoding_to_char(int encoding) return (p->name); } +/* Same, as an fmgr-callable function */ +Datum +PG_encoding_to_char(PG_FUNCTION_ARGS) +{ + int32 encoding = PG_GETARG_INT32(0); + + PG_RETURN_NAME(pg_encoding_to_char(encoding)); +} + /* returns the byte length of a multi-byte word for an encoding */ int pg_encoding_mblen(int encoding, const unsigned char *mbstr) diff --git a/src/backend/utils/mb/mbutils.c b/src/backend/utils/mb/mbutils.c index ba22ec347f..2e21f4f37a 100644 --- a/src/backend/utils/mb/mbutils.c +++ b/src/backend/utils/mb/mbutils.c @@ -3,12 +3,14 @@ * client encoding and server internal encoding. * (currently mule internal code (mic) is used) * Tatsuo Ishii - * $Id: mbutils.c,v 1.9 1999/09/11 22:28:00 tgl Exp $ */ + * $Id: mbutils.c,v 1.10 2000/06/13 07:35:12 tgl Exp $ */ #include "postgres.h" + #include "miscadmin.h" #include "mb/pg_wchar.h" +#include "utils/builtins.h" static int client_encoding = -1; static void (*client_to_mic) ();/* something to MIC */ @@ -266,10 +268,10 @@ GetDatabaseEncoding() } /* for builtin-function */ -const char * -getdatabaseencoding() +Datum +getdatabaseencoding(PG_FUNCTION_ARGS) { - return (pg_encoding_to_char(DatabaseEncoding)); + PG_RETURN_NAME(pg_encoding_to_char(DatabaseEncoding)); } /* set and get template1 database encoding */ |
