22#define DUMP(s) php_output_write((s), sizeof((s)) - 1)
38 DUMP(
"TraversableTest::drop\n");
44 DUMP(
"TraversableTest::rewind\n");
50 DUMP(
"TraversableTest::next\n");
56 DUMP(
"TraversableTest::valid\n");
65 DUMP(
"TraversableTest::key\n");
71 DUMP(
"TraversableTest::current\n");
77 test_traversable_it_dtor,
78 test_traversable_it_valid,
79 test_traversable_it_current,
80 test_traversable_it_key,
81 test_traversable_it_next,
82 test_traversable_it_rewind,
103 iterator->
intern.
funcs = &test_traversable_it_vtable;
119 traversable_test_ce = register_class_ZendTest_Iterators_TraversableTest(
zend_ce_aggregate);
120 traversable_test_ce->get_iterator = test_traversable_get_iterator;
void zend_test_iterators_init(void)
const zend_object_iterator_funcs * funcs
zend_object_iterator intern
ZEND_API ZEND_COLD void zend_throw_error(zend_class_entry *exception_ce, const char *format,...)
#define ZEND_PARSE_PARAMETERS_NONE()
#define ZEND_METHOD(classname, name)
ZEND_API zend_class_entry * zend_ce_aggregate
ZEND_API zend_result zend_create_internal_iterator_zval(zval *return_value, zval *obj)
ZEND_API void zend_iterator_init(zend_object_iterator *iter)
struct _zend_object_iterator zend_object_iterator
struct _zend_object_iterator_funcs zend_object_iterator_funcs
struct _zend_class_entry zend_class_entry
#define ZVAL_OBJ_COPY(z, o)
ZEND_RESULT_CODE zend_result
ZEND_API void zval_ptr_dtor(zval *zval_ptr)