mirror of
https://github.com/postgres/postgres.git
synced 2025-11-15 03:41:20 +03:00
Another batch of fmgr updates. I think I have gotten all old-style
functions that take pass-by-value datatypes. Should be ready for port testing ...
This commit is contained in:
@@ -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)
|
||||
|
||||
@@ -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 */
|
||||
|
||||
Reference in New Issue
Block a user