summaryrefslogtreecommitdiff
path: root/ext/sqlite/sqlite.c
diff options
context:
space:
mode:
authorMarcus Boerger <helly@php.net>2006-05-10 00:00:13 +0000
committerMarcus Boerger <helly@php.net>2006-05-10 00:00:13 +0000
commit77c1b56cd759b8fd819976a5aa7c40b5268a81f4 (patch)
tree068e4b951e7551359e9f8fc978fa24633f7097d8 /ext/sqlite/sqlite.c
parent11f26c2c2a3f41863347fcabddd6f1097518ce99 (diff)
downloadphp-git-77c1b56cd759b8fd819976a5aa7c40b5268a81f4.tar.gz
- Update after api changes
Diffstat (limited to 'ext/sqlite/sqlite.c')
-rw-r--r--ext/sqlite/sqlite.c91
1 files changed, 47 insertions, 44 deletions
diff --git a/ext/sqlite/sqlite.c b/ext/sqlite/sqlite.c
index c3d585857a..30db0e0d7f 100644
--- a/ext/sqlite/sqlite.c
+++ b/ext/sqlite/sqlite.c
@@ -207,61 +207,61 @@ zend_function_entry sqlite_functions[] = {
};
zend_function_entry sqlite_funcs_db[] = {
- PHP_ME_MAPPING(__construct, sqlite_open, third_arg_force_ref)
-/* PHP_ME_MAPPING(close, sqlite_close, NULL)*/
- PHP_ME_MAPPING(query, sqlite_query, third_arg_force_ref)
- PHP_ME_MAPPING(queryExec, sqlite_exec, second_arg_force_ref)
- PHP_ME_MAPPING(arrayQuery, sqlite_array_query, NULL)
- PHP_ME_MAPPING(singleQuery, sqlite_single_query, NULL)
- PHP_ME_MAPPING(unbufferedQuery, sqlite_unbuffered_query, third_arg_force_ref)
- PHP_ME_MAPPING(lastInsertRowid, sqlite_last_insert_rowid, NULL)
- PHP_ME_MAPPING(changes, sqlite_changes, NULL)
- PHP_ME_MAPPING(createAggregate, sqlite_create_aggregate, NULL)
- PHP_ME_MAPPING(createFunction, sqlite_create_function, NULL)
- PHP_ME_MAPPING(busyTimeout, sqlite_busy_timeout, NULL)
- PHP_ME_MAPPING(lastError, sqlite_last_error, NULL)
- PHP_ME_MAPPING(fetchColumnTypes, sqlite_fetch_column_types, NULL)
-/* PHP_ME_MAPPING(error_string, sqlite_error_string, NULL) static */
-/* PHP_ME_MAPPING(escape_string, sqlite_escape_string, NULL) static */
+ PHP_ME_MAPPING(__construct, sqlite_open, third_arg_force_ref, 0)
+/* PHP_ME_MAPPING(close, sqlite_close, NULL, 0)*/
+ PHP_ME_MAPPING(query, sqlite_query, third_arg_force_ref, 0)
+ PHP_ME_MAPPING(queryExec, sqlite_exec, second_arg_force_ref, 0)
+ PHP_ME_MAPPING(arrayQuery, sqlite_array_query, NULL, 0)
+ PHP_ME_MAPPING(singleQuery, sqlite_single_query, NULL, 0)
+ PHP_ME_MAPPING(unbufferedQuery, sqlite_unbuffered_query, third_arg_force_ref, 0)
+ PHP_ME_MAPPING(lastInsertRowid, sqlite_last_insert_rowid, NULL, 0)
+ PHP_ME_MAPPING(changes, sqlite_changes, NULL, 0)
+ PHP_ME_MAPPING(createAggregate, sqlite_create_aggregate, NULL, 0)
+ PHP_ME_MAPPING(createFunction, sqlite_create_function, NULL, 0)
+ PHP_ME_MAPPING(busyTimeout, sqlite_busy_timeout, NULL, 0)
+ PHP_ME_MAPPING(lastError, sqlite_last_error, NULL, 0)
+ PHP_ME_MAPPING(fetchColumnTypes, sqlite_fetch_column_types, NULL, 0)
+/* PHP_ME_MAPPING(error_string, sqlite_error_string, NULL, 0) static */
+/* PHP_ME_MAPPING(escape_string, sqlite_escape_string, NULL, 0) static */
{NULL, NULL, NULL}
};
zend_function_entry sqlite_funcs_query[] = {
- PHP_ME_MAPPING(fetch, sqlite_fetch_array, NULL)
- PHP_ME_MAPPING(fetchObject, sqlite_fetch_object, NULL)
- PHP_ME_MAPPING(fetchSingle, sqlite_fetch_single, NULL)
- PHP_ME_MAPPING(fetchAll, sqlite_fetch_all, NULL)
- PHP_ME_MAPPING(column, sqlite_column, NULL)
- PHP_ME_MAPPING(numFields, sqlite_num_fields, NULL)
- PHP_ME_MAPPING(fieldName, sqlite_field_name, NULL)
+ PHP_ME_MAPPING(fetch, sqlite_fetch_array, NULL, 0)
+ PHP_ME_MAPPING(fetchObject, sqlite_fetch_object, NULL, 0)
+ PHP_ME_MAPPING(fetchSingle, sqlite_fetch_single, NULL, 0)
+ PHP_ME_MAPPING(fetchAll, sqlite_fetch_all, NULL, 0)
+ PHP_ME_MAPPING(column, sqlite_column, NULL, 0)
+ PHP_ME_MAPPING(numFields, sqlite_num_fields, NULL, 0)
+ PHP_ME_MAPPING(fieldName, sqlite_field_name, NULL, 0)
/* iterator */
- PHP_ME_MAPPING(current, sqlite_current, NULL)
- PHP_ME_MAPPING(key, sqlite_key, NULL)
- PHP_ME_MAPPING(next, sqlite_next, NULL)
- PHP_ME_MAPPING(valid, sqlite_valid, NULL)
- PHP_ME_MAPPING(rewind, sqlite_rewind, NULL)
+ PHP_ME_MAPPING(current, sqlite_current, NULL, 0)
+ PHP_ME_MAPPING(key, sqlite_key, NULL, 0)
+ PHP_ME_MAPPING(next, sqlite_next, NULL, 0)
+ PHP_ME_MAPPING(valid, sqlite_valid, NULL, 0)
+ PHP_ME_MAPPING(rewind, sqlite_rewind, NULL, 0)
/* countable */
- PHP_ME_MAPPING(count, sqlite_num_rows, NULL)
+ PHP_ME_MAPPING(count, sqlite_num_rows, NULL, 0)
/* additional */
- PHP_ME_MAPPING(prev, sqlite_prev, NULL)
- PHP_ME_MAPPING(hasPrev, sqlite_has_prev, NULL)
- PHP_ME_MAPPING(numRows, sqlite_num_rows, NULL)
- PHP_ME_MAPPING(seek, sqlite_seek, NULL)
+ PHP_ME_MAPPING(prev, sqlite_prev, NULL, 0)
+ PHP_ME_MAPPING(hasPrev, sqlite_has_prev, NULL, 0)
+ PHP_ME_MAPPING(numRows, sqlite_num_rows, NULL, 0)
+ PHP_ME_MAPPING(seek, sqlite_seek, NULL, 0)
{NULL, NULL, NULL}
};
zend_function_entry sqlite_funcs_ub_query[] = {
- PHP_ME_MAPPING(fetch, sqlite_fetch_array, NULL)
- PHP_ME_MAPPING(fetchObject, sqlite_fetch_object, NULL)
- PHP_ME_MAPPING(fetchSingle, sqlite_fetch_single, NULL)
- PHP_ME_MAPPING(fetchAll, sqlite_fetch_all, NULL)
- PHP_ME_MAPPING(column, sqlite_column, NULL)
- PHP_ME_MAPPING(numFields, sqlite_num_fields, NULL)
- PHP_ME_MAPPING(fieldName, sqlite_field_name, NULL)
+ PHP_ME_MAPPING(fetch, sqlite_fetch_array, NULL, 0)
+ PHP_ME_MAPPING(fetchObject, sqlite_fetch_object, NULL, 0)
+ PHP_ME_MAPPING(fetchSingle, sqlite_fetch_single, NULL, 0)
+ PHP_ME_MAPPING(fetchAll, sqlite_fetch_all, NULL, 0)
+ PHP_ME_MAPPING(column, sqlite_column, NULL, 0)
+ PHP_ME_MAPPING(numFields, sqlite_num_fields, NULL, 0)
+ PHP_ME_MAPPING(fieldName, sqlite_field_name, NULL, 0)
/* iterator */
- PHP_ME_MAPPING(current, sqlite_current, NULL)
- PHP_ME_MAPPING(next, sqlite_next, NULL)
- PHP_ME_MAPPING(valid, sqlite_valid, NULL)
+ PHP_ME_MAPPING(current, sqlite_current, NULL, 0)
+ PHP_ME_MAPPING(next, sqlite_next, NULL, 0)
+ PHP_ME_MAPPING(valid, sqlite_valid, NULL, 0)
{NULL, NULL, NULL}
};
@@ -998,12 +998,15 @@ zend_object_iterator_funcs sqlite_query_iterator_funcs = {
sqlite_iterator_rewind
};
-zend_object_iterator *sqlite_get_iterator(zend_class_entry *ce, zval *object TSRMLS_DC)
+zend_object_iterator *sqlite_get_iterator(zend_class_entry *ce, zval *object, int by_ref TSRMLS_DC)
{
sqlite_object_iterator *iterator = emalloc(sizeof(sqlite_object_iterator));
sqlite_object *obj = (sqlite_object*) zend_object_store_get_object(object TSRMLS_CC);
+ if (by_ref) {
+ zend_error(E_ERROR, "An iterator cannot be used with foreach by reference");
+ }
object->refcount++;
iterator->it.data = (void*)object;
iterator->it.funcs = ce->iterator_funcs.funcs;