X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=src%2Fphp_pq_misc.h;h=b25f871fdfcc38e49e91da186685080017a914cf;hb=baafbf6c24c8f272b714d3829857eca3833bca3e;hp=3ce172d666d20083e08f79facd6e60409f9f0ed6;hpb=fad4fe6a60c56ad5d5752e10abd1085884cc09c2;p=m6w6%2Fext-pq diff --git a/src/php_pq_misc.h b/src/php_pq_misc.h index 3ce172d..b25f871 100644 --- a/src/php_pq_misc.h +++ b/src/php_pq_misc.h @@ -16,24 +16,47 @@ #include -typedef int STATUS; /* SUCCESS/FAILURE */ +#if PHP_VERSION_ID < 50500 +#undef SUCCESS +#undef FAILURE +typedef enum { + SUCCESS = 0, + FAILURE = -1 +} ZEND_RESULT_CODE; +#endif + +#include "php_pqres.h" + +#define z_is_true zend_is_true +#define smart_str_s(ss) (ss)->s +#define smart_str_v(ss) (ss)->s->val +#define smart_str_l(ss) (ss)->s->len /* trim LF from EOL */ -char *rtrim(char *e); +extern char *php_pq_rtrim(char *e); /* R, W, RW */ -const char *strmode(long mode); +extern const char *php_pq_strmode(long mode); /* compare array index */ -int compare_index(const void *lptr, const void *rptr TSRMLS_DC); +extern int php_pq_compare_index(const void *lptr, const void *rptr); + +/* free zval ptr values (as hash dtor) */ +extern void php_pq_hash_ptr_dtor(zval *p); + +#define PHP_PQerrorMessage(c) php_pq_rtrim(PQerrorMessage((c))) +#define PHP_PQresultErrorMessage(r) php_pq_rtrim(PQresultErrorMessage((r))) + +extern zend_class_entry *php_pqdt_class_entry; +extern zval *php_pqdt_from_string(zval *zv, char *input_fmt, char *dt_str, size_t dt_len, char *output_fmt, zval *ztimezone); +extern zend_string *php_pqdt_to_string(zval *zdt, const char *format); + +extern zend_class_entry *php_pqconv_class_entry; -#define PHP_PQerrorMessage(c) rtrim(PQerrorMessage((c))) -#define PHP_PQresultErrorMessage(r) rtrim(PQresultErrorMessage((r))) +extern HashTable *php_pq_parse_array(php_pqres_t *res, const char *val_str, size_t val_len, Oid typ); -int php_pq_types_to_array(HashTable *ht, Oid **types TSRMLS_DC); -int php_pq_params_to_array(HashTable *ht, char ***params, HashTable *zdtor TSRMLS_DC); -zval *php_pq_date_from_string(char *datetime_str, size_t datetime_len, zval *zv TSRMLS_DC); +extern PHP_MINIT_FUNCTION(pq_misc); #endif