Return to php_sqlite3_structs.h CVS log | Up to [ELWIX - Embedded LightWeight unIX -] / embedaddon / php / ext / sqlite3 |
1.1 ! misho 1: /* ! 2: +----------------------------------------------------------------------+ ! 3: | PHP Version 5 | ! 4: +----------------------------------------------------------------------+ ! 5: | Copyright (c) 1997-2012 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: | Authors: Scott MacVicar <scottmac@php.net> | ! 16: +----------------------------------------------------------------------+ ! 17: */ ! 18: ! 19: /* $Id: php_sqlite3_structs.h 321634 2012-01-01 13:15:04Z felipe $ */ ! 20: ! 21: #ifndef PHP_SQLITE_STRUCTS_H ! 22: #define PHP_SQLITE_STRUCTS_H ! 23: ! 24: #include <sqlite3.h> ! 25: ! 26: /* for backwards compatability reasons */ ! 27: #ifndef SQLITE_OPEN_READONLY ! 28: #define SQLITE_OPEN_READONLY 0x00000001 ! 29: #endif ! 30: ! 31: #ifndef SQLITE_OPEN_READWRITE ! 32: #define SQLITE_OPEN_READWRITE 0x00000002 ! 33: #endif ! 34: ! 35: #ifndef SQLITE_OPEN_CREATE ! 36: #define SQLITE_OPEN_CREATE 0x00000004 ! 37: #endif ! 38: ! 39: /* Structure for SQLite Statement Parameter. */ ! 40: struct php_sqlite3_bound_param { ! 41: long param_number; ! 42: char *name; ! 43: int name_len; ! 44: long type; ! 45: ! 46: zval *parameter; ! 47: }; ! 48: ! 49: struct php_sqlite3_fci { ! 50: zend_fcall_info fci; ! 51: zend_fcall_info_cache fcc; ! 52: }; ! 53: ! 54: /* Structure for SQLite function. */ ! 55: typedef struct _php_sqlite3_func { ! 56: struct _php_sqlite3_func *next; ! 57: ! 58: const char *func_name; ! 59: int argc; ! 60: ! 61: zval *func, *step, *fini; ! 62: struct php_sqlite3_fci afunc, astep, afini; ! 63: } php_sqlite3_func; ! 64: ! 65: /* Structure for SQLite Database object. */ ! 66: typedef struct _php_sqlite3_db_object { ! 67: zend_object zo; ! 68: int initialised; ! 69: sqlite3 *db; ! 70: php_sqlite3_func *funcs; ! 71: zend_bool exception; ! 72: ! 73: zend_llist free_list; ! 74: } php_sqlite3_db_object; ! 75: ! 76: /* Structure for SQLite Database object. */ ! 77: typedef struct _php_sqlite3_agg_context { ! 78: zval *zval_context; ! 79: long row_count; ! 80: } php_sqlite3_agg_context; ! 81: ! 82: typedef struct _php_sqlite3_stmt_object php_sqlite3_stmt; ! 83: typedef struct _php_sqlite3_result_object php_sqlite3_result; ! 84: ! 85: /* sqlite3 objects to be destroyed */ ! 86: typedef struct _php_sqlite3_free_list { ! 87: zval *stmt_obj_zval; ! 88: php_sqlite3_stmt *stmt_obj; ! 89: } php_sqlite3_free_list; ! 90: ! 91: /* Structure for SQLite Result object. */ ! 92: struct _php_sqlite3_result_object { ! 93: zend_object zo; ! 94: php_sqlite3_db_object *db_obj; ! 95: php_sqlite3_stmt *stmt_obj; ! 96: zval *stmt_obj_zval; ! 97: ! 98: int is_prepared_statement; ! 99: int complete; ! 100: }; ! 101: ! 102: /* Structure for SQLite Statement object. */ ! 103: struct _php_sqlite3_stmt_object { ! 104: zend_object zo; ! 105: sqlite3_stmt *stmt; ! 106: php_sqlite3_db_object *db_obj; ! 107: zval *db_obj_zval; ! 108: ! 109: int initialised; ! 110: ! 111: /* Keep track of the zvals for bound parameters */ ! 112: HashTable *bound_params; ! 113: }; ! 114: ! 115: #endif ! 116: ! 117: ! 118: /* ! 119: * Local variables: ! 120: * tab-width: 4 ! 121: * c-basic-offset: 4 ! 122: * indent-tabs-mode: t ! 123: * End: ! 124: */