PostgreSQL Source Code
git master
|
#include "postgres_fe.h"
#include <math.h>
#include "ecpgerrno.h"
#include "ecpglib.h"
#include "ecpglib_extern.h"
#include "ecpgtype.h"
#include "pgtypes_date.h"
#include "pgtypes_interval.h"
#include "pgtypes_numeric.h"
#include "pgtypes_timestamp.h"
#include "sqlca.h"
Go to the source code of this file.
Macros | |
#define | POSTGRES_ECPG_INTERNAL |
Functions | |
static bool | array_delimiter (enum ARRAY_TYPE isarray, char c) |
static bool | array_boundary (enum ARRAY_TYPE isarray, char c) |
static bool | garbage_left (enum ARRAY_TYPE isarray, char **scan_length, enum COMPAT_MODE compat) |
static double | get_float8_infinity (void) |
static double | get_float8_nan (void) |
static bool | check_special_value (char *ptr, double *retval, char **endptr) |
unsigned | ecpg_hex_enc_len (unsigned srclen) |
unsigned | ecpg_hex_dec_len (unsigned srclen) |
static char | get_hex (char c) |
static unsigned | hex_decode (const char *src, unsigned len, char *dst) |
unsigned | ecpg_hex_encode (const char *src, unsigned len, char *dst) |
bool | ecpg_get_data (const PGresult *results, int act_tuple, int act_field, int lineno, enum ECPGttype type, enum ECPGttype ind_type, char *var, char *ind, long varcharsize, long offset, long ind_offset, enum ARRAY_TYPE isarray, enum COMPAT_MODE compat, bool force_indicator) |
|
static |
Definition at line 33 of file data.c.
References ECPG_ARRAY_ARRAY, and ECPG_ARRAY_VECTOR.
Referenced by ecpg_get_data(), and garbage_left().
|
static |
Definition at line 20 of file data.c.
References ECPG_ARRAY_ARRAY, and ECPG_ARRAY_VECTOR.
Referenced by ecpg_get_data(), and garbage_left().
|
static |
Definition at line 101 of file data.c.
References get_float8_infinity(), get_float8_nan(), and pg_strncasecmp().
Referenced by ecpg_get_data().
bool ecpg_get_data | ( | const PGresult * | results, |
int | act_tuple, | ||
int | act_field, | ||
int | lineno, | ||
enum ECPGttype | type, | ||
enum ECPGttype | ind_type, | ||
char * | var, | ||
char * | ind, | ||
long | varcharsize, | ||
long | offset, | ||
long | ind_offset, | ||
enum ARRAY_TYPE | isarray, | ||
enum COMPAT_MODE | compat, | ||
bool | force_indicator | ||
) |
Definition at line 206 of file data.c.
References array_boundary(), array_delimiter(), check_special_value(), compat, ecpg_alloc(), ECPG_ARRAY_ARRAY, ECPG_COMPAT_PGSQL, ECPG_CONVERT_BOOL, ECPG_DATA_NOT_ARRAY, ECPG_DATE_FORMAT, ECPG_FLOAT_FORMAT, ecpg_hex_dec_len(), ecpg_hex_enc_len(), ECPG_INT_FORMAT, ecpg_internal_regression_mode, ECPG_INTERVAL_FORMAT, ECPG_IS_ARRAY, ecpg_log(), ECPG_MISSING_INDICATOR, ECPG_NOT_FOUND, ECPG_NUMERIC_FORMAT, ECPG_OUT_OF_MEMORY, ecpg_raise(), ECPG_SQLSTATE_DATATYPE_MISMATCH, ECPG_SQLSTATE_ECPG_INTERNAL_ERROR, ECPG_SQLSTATE_ECPG_OUT_OF_MEMORY, ECPG_SQLSTATE_NO_DATA, ECPG_SQLSTATE_NULL_VALUE_NO_INDICATOR_PARAMETER, ECPG_TIMESTAMP_FORMAT, ecpg_type_name(), ECPG_UINT_FORMAT, ECPG_UNSUPPORTED, ECPGget_sqlca(), ECPGset_noind_null(), ECPGt_bool, ECPGt_bytea, ECPGt_char, ECPGt_date, ECPGt_decimal, ECPGt_double, ECPGt_float, ECPGt_int, ECPGt_interval, ECPGt_long, ECPGt_long_long, ECPGt_NO_INDICATOR, ECPGt_numeric, ECPGt_short, ECPGt_string, ECPGt_timestamp, ECPGt_unsigned_char, ECPGt_unsigned_int, ECPGt_unsigned_long, ECPGt_unsigned_long_long, ECPGt_unsigned_short, ECPGt_varchar, false, force_indicator, free, garbage_left(), hex_decode(), INFORMIX_MODE, ORACLE_MODE, PGTYPESdate_from_asc(), PGTYPESinterval_copy(), PGTYPESinterval_from_asc(), PGTYPESnumeric_copy(), PGTYPESnumeric_free(), PGTYPESnumeric_from_asc(), PGTYPESnumeric_new(), PGTYPESnumeric_to_decimal(), PGTYPEStimestamp_from_asc(), PQfformat(), PQgetisnull(), PQgetlength(), PQgetvalue(), res, size, sqlca, str, and type.
Referenced by ecpg_set_compat_sqlda(), ecpg_set_native_sqlda(), and ecpg_store_result().
unsigned ecpg_hex_dec_len | ( | unsigned | srclen | ) |
Definition at line 134 of file data.c.
Referenced by ecpg_get_data().
unsigned ecpg_hex_enc_len | ( | unsigned | srclen | ) |
Definition at line 128 of file data.c.
Referenced by convert_bytea_to_string(), ecpg_get_data(), and print_param_value().
unsigned ecpg_hex_encode | ( | const char * | src, |
unsigned | len, | ||
char * | dst | ||
) |
Definition at line 191 of file data.c.
Referenced by convert_bytea_to_string(), and print_param_value().
|
static |
Definition at line 46 of file data.c.
References array_boundary(), array_delimiter(), compat, ECPG_ARRAY_NONE, ECPG_IS_ARRAY, and INFORMIX_MODE.
Referenced by ecpg_get_data().
|
static |
|
static |
|
inlinestatic |
|
static |
Definition at line 161 of file data.c.
References get_hex(), and len.
Referenced by ecpg_get_data().