Lines Matching refs:iface

1330 static inline void do_implement_interface(zend_class_entry *ce, zend_class_entry *iface) /* {{{ */  in do_implement_interface()  argument
1332 …ce->ce_flags & ZEND_ACC_INTERFACE) && iface->interface_gets_implemented && iface->interface_gets_i… in do_implement_interface()
1333 …t implement interface %s", zend_get_object_type_uc(ce), ZSTR_VAL(ce->name), ZSTR_VAL(iface->name)); in do_implement_interface()
1336 ZEND_ASSERT(ce != iface); in do_implement_interface()
1340 static void zend_do_inherit_interfaces(zend_class_entry *ce, const zend_class_entry *iface) /* {{{ … in zend_do_inherit_interfaces() argument
1343 uint32_t i, ce_num, if_num = iface->num_interfaces; in zend_do_inherit_interfaces()
1356 entry = iface->interfaces[if_num]; in zend_do_inherit_interfaces()
1706 …zend_string *name, zend_class_constant *c, zend_class_entry *ce, zend_class_entry *iface) /* {{{ */ in do_inherit_iface_constant() argument
1713 if (iface->ce_flags & ZEND_ACC_IMMUTABLE) { in do_inherit_iface_constant()
1730 static void do_interface_implementation(zend_class_entry *ce, zend_class_entry *iface) /* {{{ */ in do_interface_implementation() argument
1743 ZEND_HASH_MAP_FOREACH_STR_KEY_PTR(&iface->constants_table, key, c) { in do_interface_implementation()
1744 do_inherit_iface_constant(key, c, ce, iface); in do_interface_implementation()
1747 ZEND_HASH_MAP_FOREACH_STR_KEY_PTR(&iface->function_table, key, func) { in do_interface_implementation()
1751 do_implement_interface(ce, iface); in do_interface_implementation()
1752 if (iface->num_interfaces) { in do_interface_implementation()
1753 zend_do_inherit_interfaces(ce, iface); in do_interface_implementation()
1758 ZEND_API void zend_do_implement_interface(zend_class_entry *ce, zend_class_entry *iface) /* {{{ */ in zend_do_implement_interface() argument
1772 } else if (ce->interfaces[i] == iface) { in zend_do_implement_interface()
1776 … cannot implement previously implemented interface %s", ZSTR_VAL(ce->name), ZSTR_VAL(iface->name)); in zend_do_implement_interface()
1782 ZEND_HASH_MAP_FOREACH_STR_KEY_PTR(&iface->constants_table, key, c) { in zend_do_implement_interface()
1793 ce->interfaces[ce->num_interfaces++] = iface; in zend_do_implement_interface()
1795 do_interface_implementation(ce, iface); in zend_do_implement_interface()
1802 zend_class_entry *iface; in zend_do_implement_interfaces() local
1810 iface = interfaces[num_parent_interfaces + i]; in zend_do_implement_interfaces()
1811 if (!(iface->ce_flags & ZEND_ACC_LINKED)) { in zend_do_implement_interfaces()
1812 add_dependency_obligation(ce, iface); in zend_do_implement_interfaces()
1814 if (UNEXPECTED(!(iface->ce_flags & ZEND_ACC_INTERFACE))) { in zend_do_implement_interfaces()
1816 …ROR, "%s cannot implement %s - it is not an interface", ZSTR_VAL(ce->name), ZSTR_VAL(iface->name)); in zend_do_implement_interfaces()
1820 if (interfaces[j] == iface) { in zend_do_implement_interfaces()
1826 ZSTR_VAL(iface->name)); in zend_do_implement_interfaces()
1830 ZEND_HASH_MAP_FOREACH_STR_KEY_PTR(&iface->constants_table, key, c) { in zend_do_implement_interfaces()
1834 iface = NULL; in zend_do_implement_interfaces()
1838 if (iface) { in zend_do_implement_interfaces()
1839 interfaces[num_interfaces] = iface; in zend_do_implement_interfaces()
2920 zend_class_entry *iface = zend_fetch_class_by_name( in zend_do_link_class() local
2924 if (!iface) { in zend_do_link_class()
2929 traits_and_interfaces[ce->num_traits + i] = iface; in zend_do_link_class()
2930 if (iface) { in zend_do_link_class()
2931 UPDATE_IS_CACHEABLE(iface); in zend_do_link_class()