Lines Matching refs:property_info

266 …_never_inline void zend_bad_property_access(const zend_property_info *property_info, const zend_cl…  in zend_bad_property_access()  argument
268 …zend_throw_error(NULL, "Cannot access %s property %s::$%s", zend_visibility_string(property_info->… in zend_bad_property_access()
318 zend_property_info *property_info; in zend_get_property_offset() local
344 property_info = (zend_property_info*)Z_PTR_P(zv); in zend_get_property_offset()
345 flags = property_info->flags; in zend_get_property_offset()
354 if (property_info->ce != scope) { in zend_get_property_offset()
363 property_info = p; in zend_get_property_offset()
364 flags = property_info->flags; in zend_get_property_offset()
371 if (property_info->ce != ce) { in zend_get_property_offset()
377 zend_bad_property_access(property_info, ce, member); in zend_get_property_offset()
383 if (UNEXPECTED(!is_protected_compatible_scope(property_info->ce, scope))) { in zend_get_property_offset()
398 offset = property_info->offset; in zend_get_property_offset()
399 if (EXPECTED(!ZEND_TYPE_IS_SET(property_info->type))) { in zend_get_property_offset()
400 property_info = NULL; in zend_get_property_offset()
402 *info_ptr = property_info; in zend_get_property_offset()
406 CACHE_PTR_EX(cache_slot + 2, property_info); in zend_get_property_offset()
424 zend_property_info *property_info; in zend_get_property_info() local
440 property_info = (zend_property_info*)Z_PTR_P(zv); in zend_get_property_info()
441 flags = property_info->flags; in zend_get_property_info()
449 if (property_info->ce != scope) { in zend_get_property_info()
454 property_info = p; in zend_get_property_info()
455 flags = property_info->flags; in zend_get_property_info()
462 if (property_info->ce != ce) { in zend_get_property_info()
468 zend_bad_property_access(property_info, ce, member); in zend_get_property_info()
474 if (UNEXPECTED(!is_protected_compatible_scope(property_info->ce, scope))) { in zend_get_property_info()
487 return property_info; in zend_get_property_info()
493 zend_property_info *property_info; in zend_check_property_access() local
506 property_info = zend_get_property_info(zobj->ce, member, 1); in zend_check_property_access()
508 if (property_info == NULL || property_info == ZEND_WRONG_PROPERTY_INFO) { in zend_check_property_access()
513 if (!(property_info->flags & ZEND_ACC_PRIVATE)) { in zend_check_property_access()
516 } else if (strcmp(ZSTR_VAL(prop_info_name)+1, ZSTR_VAL(property_info->name)+1)) { in zend_check_property_access()
521 ZEND_ASSERT(property_info->flags & ZEND_ACC_PROTECTED); in zend_check_property_access()
525 property_info = zend_get_property_info(zobj->ce, prop_info_name, 1); in zend_check_property_access()
526 if (property_info == NULL) { in zend_check_property_access()
529 } else if (property_info == ZEND_WRONG_PROPERTY_INFO) { in zend_check_property_access()
532 return (property_info->flags & ZEND_ACC_PUBLIC) ? SUCCESS : FAILURE; in zend_check_property_access()
1577 zend_property_info *property_info = zend_hash_find_ptr(&ce->properties_info, property_name); in zend_std_get_static_property_with_info() local
1578 *property_info_ptr = property_info; in zend_std_get_static_property_with_info()
1580 if (UNEXPECTED(property_info == NULL)) { in zend_std_get_static_property_with_info()
1584 if (!(property_info->flags & ZEND_ACC_PUBLIC)) { in zend_std_get_static_property_with_info()
1590 if (property_info->ce != scope) { in zend_std_get_static_property_with_info()
1591 if (UNEXPECTED(property_info->flags & ZEND_ACC_PRIVATE) in zend_std_get_static_property_with_info()
1592 || UNEXPECTED(!is_protected_compatible_scope(property_info->ce, scope))) { in zend_std_get_static_property_with_info()
1594 zend_bad_property_access(property_info, ce, property_name); in zend_std_get_static_property_with_info()
1601 if (UNEXPECTED((property_info->flags & ZEND_ACC_STATIC) == 0)) { in zend_std_get_static_property_with_info()
1620 ret = CE_STATIC_MEMBERS(ce) + property_info->offset; in zend_std_get_static_property_with_info()
1624 && Z_TYPE_P(ret) == IS_UNDEF && ZEND_TYPE_IS_SET(property_info->type))) { in zend_std_get_static_property_with_info()
1626 ZSTR_VAL(property_info->ce->name), ZSTR_VAL(property_name)); in zend_std_get_static_property_with_info()
1634 ZSTR_VAL(property_info->ce->name), ZSTR_VAL(property_name)); in zend_std_get_static_property_with_info()