Lines Matching refs:intern

85 static inline HashTable **spl_array_get_hash_table_ptr(spl_array_object* intern) { /* {{{ */  in spl_array_get_hash_table_ptr()  argument
87 if (intern->ar_flags & SPL_ARRAY_IS_SELF) { in spl_array_get_hash_table_ptr()
88 if (!intern->std.properties) { in spl_array_get_hash_table_ptr()
89 rebuild_object_properties(&intern->std); in spl_array_get_hash_table_ptr()
91 return &intern->std.properties; in spl_array_get_hash_table_ptr()
92 } else if (intern->ar_flags & SPL_ARRAY_USE_OTHER) { in spl_array_get_hash_table_ptr()
93 spl_array_object *other = Z_SPLARRAY_P(&intern->array); in spl_array_get_hash_table_ptr()
95 } else if (Z_TYPE(intern->array) == IS_ARRAY) { in spl_array_get_hash_table_ptr()
96 return &Z_ARRVAL(intern->array); in spl_array_get_hash_table_ptr()
98 zend_object *obj = Z_OBJ(intern->array); in spl_array_get_hash_table_ptr()
112 static inline HashTable *spl_array_get_hash_table(spl_array_object* intern) { /* {{{ */ in spl_array_get_hash_table() argument
113 return *spl_array_get_hash_table_ptr(intern); in spl_array_get_hash_table()
117 static inline void spl_array_replace_hash_table(spl_array_object* intern, HashTable *ht) { /* {{{ */ in spl_array_replace_hash_table() argument
118 HashTable **ht_ptr = spl_array_get_hash_table_ptr(intern); in spl_array_replace_hash_table()
124 static inline zend_bool spl_array_is_object(spl_array_object *intern) /* {{{ */ in spl_array_is_object() argument
126 while (intern->ar_flags & SPL_ARRAY_USE_OTHER) { in spl_array_is_object()
127 intern = Z_SPLARRAY_P(&intern->array); in spl_array_is_object()
129 return (intern->ar_flags & SPL_ARRAY_IS_SELF) || Z_TYPE(intern->array) == IS_OBJECT; in spl_array_is_object()
133 static int spl_array_skip_protected(spl_array_object *intern, HashTable *aht);
135 static zend_never_inline void spl_array_create_ht_iter(HashTable *ht, spl_array_object* intern) /* … in spl_array_create_ht_iter() argument
137 intern->ht_iter = zend_hash_iterator_add(ht, ht->nInternalPointer); in spl_array_create_ht_iter()
138 zend_hash_internal_pointer_reset_ex(ht, &EG(ht_iterators)[intern->ht_iter].pos); in spl_array_create_ht_iter()
139 spl_array_skip_protected(intern, ht); in spl_array_create_ht_iter()
143 static zend_always_inline uint32_t *spl_array_get_pos_ptr(HashTable *ht, spl_array_object* intern) … in spl_array_get_pos_ptr() argument
145 if (UNEXPECTED(intern->ht_iter == (uint32_t)-1)) { in spl_array_get_pos_ptr()
146 spl_array_create_ht_iter(ht, intern); in spl_array_get_pos_ptr()
148 return &EG(ht_iterators)[intern->ht_iter].pos; in spl_array_get_pos_ptr()
155 spl_array_object *intern = spl_array_from_obj(object); in spl_array_object_free_storage() local
157 if (intern->ht_iter != (uint32_t) -1) { in spl_array_object_free_storage()
158 zend_hash_iterator_del(intern->ht_iter); in spl_array_object_free_storage()
161 zend_object_std_dtor(&intern->std); in spl_array_object_free_storage()
163 zval_ptr_dtor(&intern->array); in spl_array_object_free_storage()
172 spl_array_object *intern; in spl_array_object_new_ex() local
176 intern = ecalloc(1, sizeof(spl_array_object) + zend_object_properties_size(parent)); in spl_array_object_new_ex()
178 zend_object_std_init(&intern->std, class_type); in spl_array_object_new_ex()
179 object_properties_init(&intern->std, class_type); in spl_array_object_new_ex()
181 intern->ar_flags = 0; in spl_array_object_new_ex()
182 intern->ce_get_iterator = spl_ce_ArrayIterator; in spl_array_object_new_ex()
186 intern->ar_flags &= ~ SPL_ARRAY_CLONE_MASK; in spl_array_object_new_ex()
187 intern->ar_flags |= (other->ar_flags & SPL_ARRAY_CLONE_MASK); in spl_array_object_new_ex()
188 intern->ce_get_iterator = other->ce_get_iterator; in spl_array_object_new_ex()
191 ZVAL_UNDEF(&intern->array); in spl_array_object_new_ex()
193 ZVAL_ARR(&intern->array, in spl_array_object_new_ex()
197 ZVAL_COPY(&intern->array, orig); in spl_array_object_new_ex()
198 intern->ar_flags |= SPL_ARRAY_USE_OTHER; in spl_array_object_new_ex()
201 ZVAL_COPY(&intern->array, orig); in spl_array_object_new_ex()
202 intern->ar_flags |= SPL_ARRAY_USE_OTHER; in spl_array_object_new_ex()
205 array_init(&intern->array); in spl_array_object_new_ex()
210 intern->std.handlers = &spl_handler_ArrayIterator; in spl_array_object_new_ex()
214 intern->std.handlers = &spl_handler_ArrayObject; in spl_array_object_new_ex()
224intern->fptr_offset_get = zend_hash_str_find_ptr(&class_type->function_table, "offsetget", sizeof(… in spl_array_object_new_ex()
225 if (intern->fptr_offset_get->common.scope == parent) { in spl_array_object_new_ex()
226 intern->fptr_offset_get = NULL; in spl_array_object_new_ex()
228intern->fptr_offset_set = zend_hash_str_find_ptr(&class_type->function_table, "offsetset", sizeof(… in spl_array_object_new_ex()
229 if (intern->fptr_offset_set->common.scope == parent) { in spl_array_object_new_ex()
230 intern->fptr_offset_set = NULL; in spl_array_object_new_ex()
232intern->fptr_offset_has = zend_hash_str_find_ptr(&class_type->function_table, "offsetexists", size… in spl_array_object_new_ex()
233 if (intern->fptr_offset_has->common.scope == parent) { in spl_array_object_new_ex()
234 intern->fptr_offset_has = NULL; in spl_array_object_new_ex()
236intern->fptr_offset_del = zend_hash_str_find_ptr(&class_type->function_table, "offsetunset", size… in spl_array_object_new_ex()
237 if (intern->fptr_offset_del->common.scope == parent) { in spl_array_object_new_ex()
238 intern->fptr_offset_del = NULL; in spl_array_object_new_ex()
240intern->fptr_count = zend_hash_str_find_ptr(&class_type->function_table, "count", sizeof("count") … in spl_array_object_new_ex()
241 if (intern->fptr_count->common.scope == parent) { in spl_array_object_new_ex()
242 intern->fptr_count = NULL; in spl_array_object_new_ex()
247 if (intern->std.handlers == &spl_handler_ArrayIterator) { in spl_array_object_new_ex()
256 …if (class_type->iterator_funcs.zf_rewind->common.scope != parent) intern->ar_flags |= SPL_ARRAY_O… in spl_array_object_new_ex()
257 …if (class_type->iterator_funcs.zf_valid->common.scope != parent) intern->ar_flags |= SPL_ARRAY_O… in spl_array_object_new_ex()
258 …if (class_type->iterator_funcs.zf_key->common.scope != parent) intern->ar_flags |= SPL_ARRAY_O… in spl_array_object_new_ex()
259 …if (class_type->iterator_funcs.zf_current->common.scope != parent) intern->ar_flags |= SPL_ARRAY_O… in spl_array_object_new_ex()
260 …if (class_type->iterator_funcs.zf_next->common.scope != parent) intern->ar_flags |= SPL_ARRAY_O… in spl_array_object_new_ex()
264 intern->ht_iter = (uint32_t)-1; in spl_array_object_new_ex()
265 return &intern->std; in spl_array_object_new_ex()
291 static zval *spl_array_get_dimension_ptr(int check_inherited, spl_array_object *intern, zval *offse… in spl_array_get_dimension_ptr() argument
296 HashTable *ht = spl_array_get_hash_table(intern); in spl_array_get_dimension_ptr()
302 if ((type == BP_VAR_W || type == BP_VAR_RW) && intern->nApplyCount > 0) { in spl_array_get_dimension_ptr()
401 spl_array_object *intern = Z_SPLARRAY_P(object); in spl_array_read_dimension_ex() local
405 (intern->fptr_offset_get || (type == BP_VAR_IS && intern->fptr_offset_has))) { in spl_array_read_dimension_ex()
412 if (intern->fptr_offset_get) { in spl_array_read_dimension_ex()
420 …zend_call_method_with_1_params(object, Z_OBJCE_P(object), &intern->fptr_offset_get, "offsetGet", r… in spl_array_read_dimension_ex()
430 ret = spl_array_get_dimension_ptr(check_inherited, intern, offset, type); in spl_array_read_dimension_ex()
453 spl_array_object *intern = Z_SPLARRAY_P(object); in spl_array_write_dimension_ex() local
457 if (check_inherited && intern->fptr_offset_set) { in spl_array_write_dimension_ex()
466 …zend_call_method_with_2_params(object, Z_OBJCE_P(object), &intern->fptr_offset_set, "offsetSet", N… in spl_array_write_dimension_ex()
471 if (intern->nApplyCount > 0) { in spl_array_write_dimension_ex()
481 ht = spl_array_get_hash_table(intern); in spl_array_write_dimension_ex()
489 ht = spl_array_get_hash_table(intern); in spl_array_write_dimension_ex()
507 ht = spl_array_get_hash_table(intern); in spl_array_write_dimension_ex()
511 ht = spl_array_get_hash_table(intern); in spl_array_write_dimension_ex()
533 spl_array_object *intern = Z_SPLARRAY_P(object); in spl_array_unset_dimension_ex() local
535 if (check_inherited && intern->fptr_offset_del) { in spl_array_unset_dimension_ex()
537 …zend_call_method_with_1_params(object, Z_OBJCE_P(object), &intern->fptr_offset_del, "offsetUnset",… in spl_array_unset_dimension_ex()
542 if (intern->nApplyCount > 0) { in spl_array_unset_dimension_ex()
550 ht = spl_array_get_hash_table(intern); in spl_array_unset_dimension_ex()
567 zend_hash_move_forward_ex(ht, spl_array_get_pos_ptr(ht, intern)); in spl_array_unset_dimension_ex()
568 if (spl_array_is_object(intern)) { in spl_array_unset_dimension_ex()
569 spl_array_skip_protected(intern, ht); in spl_array_unset_dimension_ex()
595 ht = spl_array_get_hash_table(intern); in spl_array_unset_dimension_ex()
616 spl_array_object *intern = Z_SPLARRAY_P(object); in spl_array_has_dimension_ex() local
620 if (check_inherited && intern->fptr_offset_has) { in spl_array_has_dimension_ex()
622 …zend_call_method_with_1_params(object, Z_OBJCE_P(object), &intern->fptr_offset_has, "offsetExists"… in spl_array_has_dimension_ex()
629 } else if (intern->fptr_offset_get) { in spl_array_has_dimension_ex()
639 HashTable *ht = spl_array_get_hash_table(intern); in spl_array_has_dimension_ex()
684 if (check_empty && check_inherited && intern->fptr_offset_get) { in spl_array_has_dimension_ex()
764 spl_array_object *intern = Z_SPLARRAY_P(object); in spl_array_iterator_append() local
765 HashTable *aht = spl_array_get_hash_table(intern); in spl_array_iterator_append()
772 if (spl_array_is_object(intern)) { in spl_array_iterator_append()
811 spl_array_object *intern = Z_SPLARRAY_P(object); in SPL_METHOD() local
813 RETURN_ARR(zend_array_dup(spl_array_get_hash_table(intern))); in SPL_METHOD()
818 spl_array_object *intern = Z_SPLARRAY_P(object); in spl_array_get_properties() local
820 if (intern->ar_flags & SPL_ARRAY_STD_PROP_LIST) { in spl_array_get_properties()
821 if (!intern->std.properties) { in spl_array_get_properties()
822 rebuild_object_properties(&intern->std); in spl_array_get_properties()
824 return intern->std.properties; in spl_array_get_properties()
827 return spl_array_get_hash_table(intern); in spl_array_get_properties()
835 spl_array_object *intern = Z_SPLARRAY_P(obj); in spl_array_get_debug_info() local
837 if (!intern->std.properties) { in spl_array_get_debug_info()
838 rebuild_object_properties(&intern->std); in spl_array_get_debug_info()
841 if (intern->ar_flags & SPL_ARRAY_IS_SELF) { in spl_array_get_debug_info()
843 return intern->std.properties; in spl_array_get_debug_info()
849 ZEND_INIT_SYMTABLE_EX(debug_info, zend_hash_num_elements(intern->std.properties) + 1, 0); in spl_array_get_debug_info()
850 zend_hash_copy(debug_info, intern->std.properties, (copy_ctor_func_t) zval_add_ref); in spl_array_get_debug_info()
852 storage = &intern->array; in spl_array_get_debug_info()
868 spl_array_object *intern = Z_SPLARRAY_P(obj); in spl_array_get_gc() local
869 *gc_data = &intern->array; in spl_array_get_gc()
877 spl_array_object *intern = Z_SPLARRAY_P(object); in spl_array_read_property() local
879 if ((intern->ar_flags & SPL_ARRAY_ARRAY_AS_PROPS) != 0 in spl_array_read_property()
888 spl_array_object *intern = Z_SPLARRAY_P(object); in spl_array_write_property() local
890 if ((intern->ar_flags & SPL_ARRAY_ARRAY_AS_PROPS) != 0 in spl_array_write_property()
900 spl_array_object *intern = Z_SPLARRAY_P(object); in spl_array_get_property_ptr_ptr() local
902 if ((intern->ar_flags & SPL_ARRAY_ARRAY_AS_PROPS) != 0 in spl_array_get_property_ptr_ptr()
906 if (intern->fptr_offset_get) { in spl_array_get_property_ptr_ptr()
909 return spl_array_get_dimension_ptr(1, intern, member, type); in spl_array_get_property_ptr_ptr()
916 spl_array_object *intern = Z_SPLARRAY_P(object); in spl_array_has_property() local
918 if ((intern->ar_flags & SPL_ARRAY_ARRAY_AS_PROPS) != 0 in spl_array_has_property()
927 spl_array_object *intern = Z_SPLARRAY_P(object); in spl_array_unset_property() local
929 if ((intern->ar_flags & SPL_ARRAY_ARRAY_AS_PROPS) != 0 in spl_array_unset_property()
959 static int spl_array_skip_protected(spl_array_object *intern, HashTable *aht) /* {{{ */ in spl_array_skip_protected() argument
965 if (spl_array_is_object(intern)) { in spl_array_skip_protected()
966 uint32_t *pos_ptr = spl_array_get_pos_ptr(aht, intern); in spl_array_skip_protected()
989 static int spl_array_next_ex(spl_array_object *intern, HashTable *aht) /* {{{ */ in spl_array_next_ex() argument
991 uint32_t *pos_ptr = spl_array_get_pos_ptr(aht, intern); in spl_array_next_ex()
994 if (spl_array_is_object(intern)) { in spl_array_next_ex()
995 return spl_array_skip_protected(intern, aht); in spl_array_next_ex()
1001 static int spl_array_next(spl_array_object *intern) /* {{{ */ in spl_array_next() argument
1003 HashTable *aht = spl_array_get_hash_table(intern); in spl_array_next()
1005 return spl_array_next_ex(intern, aht); in spl_array_next()
1086 static void spl_array_rewind(spl_array_object *intern) /* {{{ */ in spl_array_rewind() argument
1088 HashTable *aht = spl_array_get_hash_table(intern); in spl_array_rewind()
1095 if (intern->ht_iter == (uint32_t)-1) { in spl_array_rewind()
1096 spl_array_get_pos_ptr(aht, intern); in spl_array_rewind()
1098 zend_hash_internal_pointer_reset_ex(aht, spl_array_get_pos_ptr(aht, intern)); in spl_array_rewind()
1099 spl_array_skip_protected(intern, aht); in spl_array_rewind()
1118 static void spl_array_set_array(zval *object, spl_array_object *intern, zval *array, zend_long ar_f… in spl_array_set_array() argument
1126 zval_ptr_dtor(&intern->array); in spl_array_set_array()
1127 ZVAL_DUP(&intern->array, array); in spl_array_set_array()
1130 zval_ptr_dtor(&intern->array); in spl_array_set_array()
1137 ZVAL_UNDEF(&intern->array); in spl_array_set_array()
1140 ZVAL_COPY(&intern->array, array); in spl_array_set_array()
1147 ZSTR_VAL(Z_OBJCE_P(array)->name), ZSTR_VAL(intern->std.ce->name)); in spl_array_set_array()
1150 zval_ptr_dtor(&intern->array); in spl_array_set_array()
1151 ZVAL_COPY(&intern->array, array); in spl_array_set_array()
1155 intern->ar_flags &= ~SPL_ARRAY_IS_SELF & ~SPL_ARRAY_USE_OTHER; in spl_array_set_array()
1156 intern->ar_flags |= ar_flags; in spl_array_set_array()
1157 intern->ht_iter = (uint32_t)-1; in spl_array_set_array()
1200 spl_array_object *intern; in SPL_METHOD() local
1213 intern = Z_SPLARRAY_P(object); in SPL_METHOD()
1216 intern->ce_get_iterator = ce_get_iterator; in SPL_METHOD()
1221 spl_array_set_array(object, intern, array, ar_flags, ZEND_NUM_ARGS() == 1); in SPL_METHOD()
1230 spl_array_object *intern = Z_SPLARRAY_P(object); in SPL_METHOD() local
1237 intern->ce_get_iterator = ce_get_iterator; in SPL_METHOD()
1246 spl_array_object *intern = Z_SPLARRAY_P(object); in SPL_METHOD() local
1252 zend_string_addref(intern->ce_get_iterator->name); in SPL_METHOD()
1253 RETURN_STR(intern->ce_get_iterator->name); in SPL_METHOD()
1262 spl_array_object *intern = Z_SPLARRAY_P(object); in SPL_METHOD() local
1268 RETURN_LONG(intern->ar_flags & ~SPL_ARRAY_INT_MASK); in SPL_METHOD()
1277 spl_array_object *intern = Z_SPLARRAY_P(object); in SPL_METHOD() local
1284 intern->ar_flags = (intern->ar_flags & SPL_ARRAY_INT_MASK) | (ar_flags & ~SPL_ARRAY_INT_MASK); in SPL_METHOD()
1293 spl_array_object *intern = Z_SPLARRAY_P(object); in SPL_METHOD() local
1299 if (intern->nApplyCount > 0) { in SPL_METHOD()
1304 RETVAL_ARR(zend_array_dup(spl_array_get_hash_table(intern))); in SPL_METHOD()
1305 spl_array_set_array(object, intern, array, 0L, 1); in SPL_METHOD()
1314 spl_array_object *intern = Z_SPLARRAY_P(object); in SPL_METHOD() local
1315 HashTable *aht = spl_array_get_hash_table(intern); in SPL_METHOD()
1326 ZVAL_OBJ(return_value, spl_array_object_new_ex(intern->ce_get_iterator, object, 0)); in SPL_METHOD()
1335 spl_array_object *intern = Z_SPLARRAY_P(object); in SPL_METHOD() local
1341 spl_array_rewind(intern); in SPL_METHOD()
1351 spl_array_object *intern = Z_SPLARRAY_P(object); in SPL_METHOD() local
1352 HashTable *aht = spl_array_get_hash_table(intern); in SPL_METHOD()
1367 spl_array_rewind(intern); in SPL_METHOD()
1370 while (position-- > 0 && (result = spl_array_next(intern)) == SUCCESS); in SPL_METHOD()
1372 …if (result == SUCCESS && zend_hash_has_more_elements_ex(aht, spl_array_get_pos_ptr(aht, intern)) =… in SPL_METHOD()
1379 static int spl_array_object_count_elements_helper(spl_array_object *intern, zend_long *count) /* {{… in spl_array_object_count_elements_helper() argument
1381 HashTable *aht = spl_array_get_hash_table(intern); in spl_array_object_count_elements_helper()
1390 if (spl_array_is_object(intern)) { in spl_array_object_count_elements_helper()
1393 pos_ptr = spl_array_get_pos_ptr(aht, intern); in spl_array_object_count_elements_helper()
1396 spl_array_rewind(intern); in spl_array_object_count_elements_helper()
1397 while (*pos_ptr != HT_INVALID_IDX && spl_array_next(intern) == SUCCESS) { in spl_array_object_count_elements_helper()
1410 spl_array_object *intern = Z_SPLARRAY_P(object); in spl_array_object_count_elements() local
1412 if (intern->fptr_count) { in spl_array_object_count_elements()
1414 zend_call_method_with_0_params(object, intern->std.ce, &intern->fptr_count, "count", &rv); in spl_array_object_count_elements()
1423 return spl_array_object_count_elements_helper(intern, count); in spl_array_object_count_elements()
1432 spl_array_object *intern = Z_SPLARRAY_P(getThis()); in SPL_METHOD() local
1438 spl_array_object_count_elements_helper(intern, &count); in SPL_METHOD()
1445 spl_array_object *intern = Z_SPLARRAY_P(getThis()); in spl_array_method() local
1446 HashTable *aht = spl_array_get_hash_table(intern); in spl_array_method()
1456 intern->nApplyCount++; in spl_array_method()
1458 intern->nApplyCount--; in spl_array_method()
1467 intern->nApplyCount++; in spl_array_method()
1469 intern->nApplyCount--; in spl_array_method()
1476 intern->nApplyCount++; in spl_array_method()
1478 intern->nApplyCount--; in spl_array_method()
1485 spl_array_replace_hash_table(intern, new_ht); in spl_array_method()
1535 spl_array_object *intern = Z_SPLARRAY_P(object); in SPL_ARRAY_METHOD() local
1537 HashTable *aht = spl_array_get_hash_table(intern); in SPL_ARRAY_METHOD()
1543 if (spl_array_object_verify_pos(intern, aht) == FAILURE) { in SPL_ARRAY_METHOD()
1547 if ((entry = zend_hash_get_current_data_ex(aht, spl_array_get_pos_ptr(aht, intern))) == NULL) { in SPL_ARRAY_METHOD()
1574 spl_array_object *intern = Z_SPLARRAY_P(object); in spl_array_iterator_key() local
1575 HashTable *aht = spl_array_get_hash_table(intern); in spl_array_iterator_key()
1577 if (spl_array_object_verify_pos(intern, aht) == FAILURE) { in spl_array_iterator_key()
1581 zend_hash_get_current_key_zval_ex(aht, return_value, spl_array_get_pos_ptr(aht, intern)); in spl_array_iterator_key()
1590 spl_array_object *intern = Z_SPLARRAY_P(object); in SPL_METHOD() local
1591 HashTable *aht = spl_array_get_hash_table(intern); in SPL_METHOD()
1597 if (spl_array_object_verify_pos(intern, aht) == FAILURE) { in SPL_METHOD()
1601 spl_array_next_ex(intern, aht); in SPL_METHOD()
1610 spl_array_object *intern = Z_SPLARRAY_P(object); in SPL_METHOD() local
1611 HashTable *aht = spl_array_get_hash_table(intern); in SPL_METHOD()
1617 if (spl_array_object_verify_pos(intern, aht) == FAILURE) { in SPL_METHOD()
1620 RETURN_BOOL(zend_hash_has_more_elements_ex(aht, spl_array_get_pos_ptr(aht, intern)) == SUCCESS); in SPL_METHOD()
1630 spl_array_object *intern = Z_SPLARRAY_P(object); in SPL_METHOD() local
1631 HashTable *aht = spl_array_get_hash_table(intern); in SPL_METHOD()
1637 if (spl_array_object_verify_pos(intern, aht) == FAILURE) { in SPL_METHOD()
1641 if ((entry = zend_hash_get_current_data_ex(aht, spl_array_get_pos_ptr(aht, intern))) == NULL) { in SPL_METHOD()
1650 …RETURN_BOOL(Z_TYPE_P(entry) == IS_ARRAY || (Z_TYPE_P(entry) == IS_OBJECT && (intern->ar_flags & SP… in SPL_METHOD()
1659 spl_array_object *intern = Z_SPLARRAY_P(object); in SPL_METHOD() local
1660 HashTable *aht = spl_array_get_hash_table(intern); in SPL_METHOD()
1666 if (spl_array_object_verify_pos(intern, aht) == FAILURE) { in SPL_METHOD()
1670 if ((entry = zend_hash_get_current_data_ex(aht, spl_array_get_pos_ptr(aht, intern))) == NULL) { in SPL_METHOD()
1680 if ((intern->ar_flags & SPL_ARRAY_CHILD_ARRAYS_ONLY) != 0) { in SPL_METHOD()
1690 ZVAL_LONG(&flags, intern->ar_flags); in SPL_METHOD()
1700 spl_array_object *intern = Z_SPLARRAY_P(object); in SPL_METHOD() local
1701 HashTable *aht = spl_array_get_hash_table(intern); in SPL_METHOD()
1717 ZVAL_LONG(&flags, (intern->ar_flags & SPL_ARRAY_CLONE_MASK)); in SPL_METHOD()
1723 if (!(intern->ar_flags & SPL_ARRAY_IS_SELF)) { in SPL_METHOD()
1724 php_var_serialize(&buf, &intern->array, &var_hash); in SPL_METHOD()
1730 if (!intern->std.properties) { in SPL_METHOD()
1731 rebuild_object_properties(&intern->std); in SPL_METHOD()
1734 ZVAL_ARR(&members, intern->std.properties); in SPL_METHOD()
1754 spl_array_object *intern = Z_SPLARRAY_P(object); in SPL_METHOD() local
1771 if (intern->nApplyCount > 0) { in SPL_METHOD()
1804 intern->ar_flags &= ~SPL_ARRAY_CLONE_MASK; in SPL_METHOD()
1805 intern->ar_flags |= flags & SPL_ARRAY_CLONE_MASK; in SPL_METHOD()
1806 zval_ptr_dtor(&intern->array); in SPL_METHOD()
1807 ZVAL_UNDEF(&intern->array); in SPL_METHOD()
1819 intern->ar_flags &= ~SPL_ARRAY_CLONE_MASK; in SPL_METHOD()
1820 intern->ar_flags |= flags & SPL_ARRAY_CLONE_MASK; in SPL_METHOD()
1823 zval_ptr_dtor(&intern->array); in SPL_METHOD()
1824 ZVAL_COPY(&intern->array, array); in SPL_METHOD()
1826 spl_array_set_array(object, intern, array, 0L, 1); in SPL_METHOD()
1847 object_properties_load(&intern->std, Z_ARRVAL_P(members)); in SPL_METHOD()