Annotation of embedaddon/php/ext/pdo_sqlite/php_pdo_sqlite_int.h, revision 1.1.1.3
1.1 misho 1: /*
2: +----------------------------------------------------------------------+
3: | PHP Version 5 |
4: +----------------------------------------------------------------------+
1.1.1.3 ! misho 5: | Copyright (c) 1997-2013 The PHP Group |
1.1 misho 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: +----------------------------------------------------------------------+
17: */
18:
1.1.1.2 misho 19: /* $Id$ */
1.1 misho 20:
21: #ifndef PHP_PDO_SQLITE_INT_H
22: #define PHP_PDO_SQLITE_INT_H
23:
24: #include <sqlite3.h>
25:
26: typedef struct {
27: const char *file;
28: int line;
29: unsigned int errcode;
30: char *errmsg;
31: } pdo_sqlite_error_info;
32:
33: struct pdo_sqlite_fci {
34: zend_fcall_info fci;
35: zend_fcall_info_cache fcc;
36: };
37:
38: struct pdo_sqlite_func {
39: struct pdo_sqlite_func *next;
40:
41: zval *func, *step, *fini;
42: int argc;
43: const char *funcname;
44:
45: /* accelerated callback references */
46: struct pdo_sqlite_fci afunc, astep, afini;
47: };
48:
1.1.1.2 misho 49: struct pdo_sqlite_collation {
50: struct pdo_sqlite_collation *next;
51:
52: const char *name;
53: zval *callback;
54: struct pdo_sqlite_fci fc;
55: };
56:
1.1 misho 57: typedef struct {
58: sqlite3 *db;
59: pdo_sqlite_error_info einfo;
60: struct pdo_sqlite_func *funcs;
1.1.1.2 misho 61: struct pdo_sqlite_collation *collations;
1.1 misho 62: } pdo_sqlite_db_handle;
63:
64: typedef struct {
65: pdo_sqlite_db_handle *H;
66: sqlite3_stmt *stmt;
67: unsigned pre_fetched:1;
68: unsigned done:1;
69: } pdo_sqlite_stmt;
70:
71: extern pdo_driver_t pdo_sqlite_driver;
72:
73: extern int _pdo_sqlite_error(pdo_dbh_t *dbh, pdo_stmt_t *stmt, const char *file, int line TSRMLS_DC);
74: #define pdo_sqlite_error(s) _pdo_sqlite_error(s, NULL, __FILE__, __LINE__ TSRMLS_CC)
75: #define pdo_sqlite_error_stmt(s) _pdo_sqlite_error(stmt->dbh, stmt, __FILE__, __LINE__ TSRMLS_CC)
76:
77: extern struct pdo_stmt_methods sqlite_stmt_methods;
78: #endif
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>