Lines Matching refs:iterator

32 static void resourcebundle_iterator_read( ResourceBundle_iterator *iterator TSRMLS_DC )   in resourcebundle_iterator_read()
35 ResourceBundle_object *rb = iterator->subject; in resourcebundle_iterator_read()
37 rb->child = ures_getByIndex( rb->me, iterator->i, rb->child, &icuerror ); in resourcebundle_iterator_read()
41 if (iterator->is_table) { in resourcebundle_iterator_read()
42 iterator->currentkey = estrdup( ures_getKey( rb->child ) ); in resourcebundle_iterator_read()
44 MAKE_STD_ZVAL( iterator->current ); in resourcebundle_iterator_read()
45 resourcebundle_extract_value( iterator->current, rb TSRMLS_CC ); in resourcebundle_iterator_read()
49 iterator->current = NULL; in resourcebundle_iterator_read()
57 ResourceBundle_iterator *iterator = (ResourceBundle_iterator *) iter; in resourcebundle_iterator_invalidate() local
59 if (iterator->current) { in resourcebundle_iterator_invalidate()
60 zval_ptr_dtor( &iterator->current ); in resourcebundle_iterator_invalidate()
61 iterator->current = NULL; in resourcebundle_iterator_invalidate()
63 if (iterator->currentkey) { in resourcebundle_iterator_invalidate()
64 efree( iterator->currentkey ); in resourcebundle_iterator_invalidate()
65 iterator->currentkey = NULL; in resourcebundle_iterator_invalidate()
73 ResourceBundle_iterator *iterator = (ResourceBundle_iterator *) iter; in resourcebundle_iterator_dtor() local
74 zval *object = (zval *)iterator->intern.data; in resourcebundle_iterator_dtor()
80 efree(iterator); in resourcebundle_iterator_dtor()
87 ResourceBundle_iterator *iterator = (ResourceBundle_iterator *) iter; in resourcebundle_iterator_has_more() local
88 return (iterator->i < iterator->length) ? SUCCESS : FAILURE; in resourcebundle_iterator_has_more()
95 ResourceBundle_iterator *iterator = (ResourceBundle_iterator *) iter; in resourcebundle_iterator_current() local
96 if (!iterator->current) { in resourcebundle_iterator_current()
97 resourcebundle_iterator_read( iterator TSRMLS_CC); in resourcebundle_iterator_current()
99 *data = &iterator->current; in resourcebundle_iterator_current()
106 ResourceBundle_iterator *iterator = (ResourceBundle_iterator *) iter; in resourcebundle_iterator_key() local
108 if (!iterator->current) { in resourcebundle_iterator_key()
109 resourcebundle_iterator_read( iterator TSRMLS_CC); in resourcebundle_iterator_key()
111 if (iterator->is_table) { in resourcebundle_iterator_key()
112 *str_key = estrdup( iterator->currentkey ); in resourcebundle_iterator_key()
113 *str_key_len = strlen( iterator->currentkey ) + 1; in resourcebundle_iterator_key()
117 *int_key = iterator->i; in resourcebundle_iterator_key()
126 ResourceBundle_iterator *iterator = (ResourceBundle_iterator *) iter; in resourcebundle_iterator_step() local
128 iterator->i++; in resourcebundle_iterator_step()
136 ResourceBundle_iterator *iterator = (ResourceBundle_iterator *) iter; in resourcebundle_iterator_reset() local
138 iterator->i = 0; in resourcebundle_iterator_reset()
159 ResourceBundle_iterator *iterator = emalloc( sizeof( ResourceBundle_iterator ) ); in resourcebundle_get_iterator() local
166 iterator->intern.data = (void *) object; in resourcebundle_get_iterator()
167 iterator->intern.funcs = &resourcebundle_iterator_funcs; in resourcebundle_get_iterator()
169 iterator->subject = rb; in resourcebundle_get_iterator()
174 iterator->is_table = (ures_getType( rb->me ) == URES_TABLE); in resourcebundle_get_iterator()
175 iterator->length = ures_getSize( rb->me ); in resourcebundle_get_iterator()
177 iterator->current = NULL; in resourcebundle_get_iterator()
178 iterator->currentkey = NULL; in resourcebundle_get_iterator()
179 iterator->i = 0; in resourcebundle_get_iterator()
181 return (zend_object_iterator *) iterator; in resourcebundle_get_iterator()