00001 /* ----------------------------------------------------------------------- 00002 * formatting.h 00003 * 00004 * src/include/utils/formatting.h 00005 * 00006 * 00007 * Portions Copyright (c) 1999-2013, PostgreSQL Global Development Group 00008 * 00009 * The PostgreSQL routines for a DateTime/int/float/numeric formatting, 00010 * inspire with Oracle TO_CHAR() / TO_DATE() / TO_NUMBER() routines. 00011 * 00012 * Karel Zak 00013 * 00014 * ----------------------------------------------------------------------- 00015 */ 00016 00017 #ifndef _FORMATTING_H_ 00018 #define _FORMATTING_H_ 00019 00020 #include "fmgr.h" 00021 00022 00023 extern char *str_tolower(const char *buff, size_t nbytes, Oid collid); 00024 extern char *str_toupper(const char *buff, size_t nbytes, Oid collid); 00025 extern char *str_initcap(const char *buff, size_t nbytes, Oid collid); 00026 00027 extern char *asc_tolower(const char *buff, size_t nbytes); 00028 extern char *asc_toupper(const char *buff, size_t nbytes); 00029 extern char *asc_initcap(const char *buff, size_t nbytes); 00030 00031 extern Datum timestamp_to_char(PG_FUNCTION_ARGS); 00032 extern Datum timestamptz_to_char(PG_FUNCTION_ARGS); 00033 extern Datum interval_to_char(PG_FUNCTION_ARGS); 00034 extern Datum to_timestamp(PG_FUNCTION_ARGS); 00035 extern Datum to_date(PG_FUNCTION_ARGS); 00036 extern Datum numeric_to_number(PG_FUNCTION_ARGS); 00037 extern Datum numeric_to_char(PG_FUNCTION_ARGS); 00038 extern Datum int4_to_char(PG_FUNCTION_ARGS); 00039 extern Datum int8_to_char(PG_FUNCTION_ARGS); 00040 extern Datum float4_to_char(PG_FUNCTION_ARGS); 00041 extern Datum float8_to_char(PG_FUNCTION_ARGS); 00042 00043 #endif