File:  [ELWIX - Embedded LightWeight unIX -] / embedaddon / php / ext / pdo / php_pdo_int.h
Revision 1.1.1.3 (vendor branch): download - view: text, annotated - select for diffs - revision graph
Mon Jul 22 01:31:55 2013 UTC (10 years, 11 months ago) by misho
Branches: php, MAIN
CVS tags: v5_4_29p0, v5_4_20p0, v5_4_20, v5_4_17, HEAD
5.4.17

    1: /*
    2:   +----------------------------------------------------------------------+
    3:   | PHP Version 5                                                        |
    4:   +----------------------------------------------------------------------+
    5:   | Copyright (c) 1997-2013 The PHP Group                                |
    6:   +----------------------------------------------------------------------+
    7:   | This source file is subject to version 3.01 of the PHP license,      |
    8:   | that is bundled with this package in the file LICENSE, and is        |
    9:   | available through the world-wide-web at the following url:           |
   10:   | http://www.php.net/license/3_01.txt                                  |
   11:   | If you did not receive a copy of the PHP license and are unable to   |
   12:   | obtain it through the world-wide-web, please send a note to          |
   13:   | license@php.net so we can mail you a copy immediately.               |
   14:   +----------------------------------------------------------------------+
   15:   | Author: Wez Furlong <wez@php.net>                                    |
   16:   |         Marcus Boerger <helly@php.net>                               |
   17:   |         Sterling Hughes <sterling@php.net>                           |
   18:   +----------------------------------------------------------------------+
   19: */
   20: 
   21: /* $Id: php_pdo_int.h,v 1.1.1.3 2013/07/22 01:31:55 misho Exp $ */
   22: 
   23: /* Stuff private to the PDO extension and not for consumption by PDO drivers
   24:  * */
   25: 
   26: extern HashTable pdo_driver_hash;
   27: extern zend_class_entry *pdo_exception_ce;
   28: PDO_API zend_class_entry *php_pdo_get_exception_base(int root TSRMLS_DC);
   29: int php_pdo_list_entry(void);
   30: 
   31: void pdo_dbh_init(TSRMLS_D);
   32: void pdo_stmt_init(TSRMLS_D);
   33: 
   34: extern zend_object_value pdo_dbh_new(zend_class_entry *ce TSRMLS_DC);
   35: extern const zend_function_entry pdo_dbh_functions[];
   36: extern zend_class_entry *pdo_dbh_ce;
   37: extern ZEND_RSRC_DTOR_FUNC(php_pdo_pdbh_dtor);
   38: 
   39: extern zend_object_value pdo_dbstmt_new(zend_class_entry *ce TSRMLS_DC);
   40: extern const zend_function_entry pdo_dbstmt_functions[];
   41: extern zend_class_entry *pdo_dbstmt_ce;
   42: void pdo_dbstmt_free_storage(pdo_stmt_t *stmt TSRMLS_DC);
   43: zend_object_iterator *pdo_stmt_iter_get(zend_class_entry *ce, zval *object, int by_ref TSRMLS_DC);
   44: extern zend_object_handlers pdo_dbstmt_object_handlers;
   45: int pdo_stmt_describe_columns(pdo_stmt_t *stmt TSRMLS_DC);
   46: int pdo_stmt_setup_fetch_mode(INTERNAL_FUNCTION_PARAMETERS, pdo_stmt_t *stmt, int skip_first_arg);
   47: 
   48: extern zend_object_value pdo_row_new(zend_class_entry *ce TSRMLS_DC);
   49: extern const zend_function_entry pdo_row_functions[];
   50: extern zend_class_entry *pdo_row_ce;
   51: void pdo_row_free_storage(pdo_stmt_t *stmt TSRMLS_DC);
   52: extern zend_object_handlers pdo_row_object_handlers;
   53: 
   54: zend_object_iterator *php_pdo_dbstmt_iter_get(zend_class_entry *ce, zval *object TSRMLS_DC);
   55: 
   56: extern pdo_driver_t *pdo_find_driver(const char *name, int namelen);
   57: 
   58: extern void pdo_handle_error(pdo_dbh_t *dbh, pdo_stmt_t *stmt TSRMLS_DC);
   59: 
   60: #define PDO_DBH_CLEAR_ERR()		do { \
   61: 	strncpy(dbh->error_code, PDO_ERR_NONE, sizeof(PDO_ERR_NONE)); \
   62: 	if (dbh->query_stmt) { \
   63: 		dbh->query_stmt = NULL; \
   64: 		zend_objects_store_del_ref(&dbh->query_stmt_zval TSRMLS_CC); \
   65: 	} \
   66: } while (0)
   67: #define PDO_STMT_CLEAR_ERR()	strcpy(stmt->error_code, PDO_ERR_NONE)
   68: #define PDO_HANDLE_DBH_ERR()	if (strcmp(dbh->error_code, PDO_ERR_NONE)) { pdo_handle_error(dbh, NULL TSRMLS_CC); }
   69: #define PDO_HANDLE_STMT_ERR()	if (strcmp(stmt->error_code, PDO_ERR_NONE)) { pdo_handle_error(stmt->dbh, stmt TSRMLS_CC); }
   70: 
   71: int pdo_sqlstate_init_error_table(void);
   72: void pdo_sqlstate_fini_error_table(void);
   73: const char *pdo_sqlstate_state_to_description(char *state);
   74: int pdo_hash_methods(pdo_dbh_t *dbh, int kind TSRMLS_DC);
   75: 
   76: 
   77: /*
   78:  * Local variables:
   79:  * tab-width: 4
   80:  * c-basic-offset: 4
   81:  * End:
   82:  * vim600: noet sw=4 ts=4 fdm=marker
   83:  * vim<600: noet sw=4 ts=4
   84:  */

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>