This is probably a leftover from the PHP 5 implementation, where
the iterator was embedded directly in the generator.
static void zend_generator_iterator_dtor(zend_object_iterator *iterator) /* {{{ */
{
- zend_generator *generator = (zend_generator*)Z_OBJ(iterator->data);
- generator->iterator = NULL;
zval_ptr_dtor(&iterator->data);
}
/* }}} */
return NULL;
}
- iterator = generator->iterator = emalloc(sizeof(zend_object_iterator));
-
+ iterator = emalloc(sizeof(zend_object_iterator));
zend_iterator_init(iterator);
iterator->funcs = &zend_generator_iterator_functions;
struct _zend_generator {
zend_object std;
- zend_object_iterator *iterator;
-
/* The suspended execution context. */
zend_execute_data *execute_data;