1 #ifndef PGTYPES_NUMERIC
2 #define PGTYPES_NUMERIC
6 #define NUMERIC_POS 0x0000
7 #define NUMERIC_NEG 0x4000
8 #define NUMERIC_NAN 0xC000
9 #define NUMERIC_NULL 0xF000
10 #define NUMERIC_MAX_PRECISION 1000
11 #define NUMERIC_MAX_DISPLAY_SCALE NUMERIC_MAX_PRECISION
12 #define NUMERIC_MIN_DISPLAY_SCALE 0
13 #define NUMERIC_MIN_SIG_DIGITS 16
Datum numeric(PG_FUNCTION_ARGS)
void PGTYPESdecimal_free(decimal *)
int PGTYPESnumeric_to_double(numeric *, double *)
int PGTYPESnumeric_to_long(numeric *, long *)
int PGTYPESnumeric_from_int(signed int, numeric *)
int PGTYPESnumeric_mul(numeric *, numeric *, numeric *)
int PGTYPESnumeric_from_decimal(decimal *, numeric *)
int PGTYPESnumeric_sub(numeric *, numeric *, numeric *)
int PGTYPESnumeric_to_int(numeric *, int *)
char * PGTYPESnumeric_to_asc(numeric *, int)
int PGTYPESnumeric_copy(numeric *, numeric *)
numeric * PGTYPESnumeric_new(void)
int PGTYPESnumeric_div(numeric *, numeric *, numeric *)
int PGTYPESnumeric_add(numeric *, numeric *, numeric *)
int PGTYPESnumeric_from_double(double, numeric *)
int PGTYPESnumeric_cmp(numeric *, numeric *)
int PGTYPESnumeric_to_decimal(numeric *, decimal *)
int PGTYPESnumeric_from_long(signed long int, numeric *)
decimal * PGTYPESdecimal_new(void)
void PGTYPESnumeric_free(numeric *)
numeric * PGTYPESnumeric_from_asc(char *, char **)
unsigned char NumericDigit