parent_ce        2538 Zend/zend_API.c ZEND_API zend_class_entry *zend_register_internal_class_ex(zend_class_entry *class_entry, zend_class_entry *parent_ce, char *parent_name TSRMLS_DC) /* {{{ */
parent_ce        2542 Zend/zend_API.c 	if (!parent_ce && parent_name) {
parent_ce        2547 Zend/zend_API.c 			parent_ce = *pce;
parent_ce        2553 Zend/zend_API.c 	if (parent_ce) {
parent_ce        2554 Zend/zend_API.c 		zend_do_inheritance(register_class, parent_ce TSRMLS_CC);
parent_ce         280 Zend/zend_API.h ZEND_API zend_class_entry *zend_register_internal_class_ex(zend_class_entry *class_entry, zend_class_entry *parent_ce, char *parent_name TSRMLS_DC);
parent_ce        3639 Zend/zend_compile.c 	zend_class_entry *parent_ce = ce->parent;
parent_ce        3660 Zend/zend_compile.c 				(parent_info->flags & ZEND_ACC_STATIC) ? "static " : "non static ", parent_ce->name, hash_key->arKey,
parent_ce        3670 Zend/zend_compile.c 			zend_error_noreturn(E_COMPILE_ERROR, "Access level to %s::$%s must be %s (as in class %s)%s", ce->name, hash_key->arKey, zend_visibility_string(parent_info->flags), parent_ce->name, (parent_info->flags&ZEND_ACC_PUBLIC) ? "" : " or weaker");
parent_ce        3742 Zend/zend_compile.c # define zval_property_ctor(parent_ce, ce) \
parent_ce        3743 Zend/zend_compile.c 	((void (*)(void *)) (((parent_ce)->type != (ce)->type) ? zval_internal_ctor : zval_add_ref))
parent_ce        3745 Zend/zend_compile.c # define zval_property_ctor(parent_ce, ce) \
parent_ce        3749 Zend/zend_compile.c ZEND_API void zend_do_inheritance(zend_class_entry *ce, zend_class_entry *parent_ce TSRMLS_DC) /* {{{ */
parent_ce        3754 Zend/zend_compile.c 		&& !(parent_ce->ce_flags & ZEND_ACC_INTERFACE)) {
parent_ce        3755 Zend/zend_compile.c 		zend_error_noreturn(E_COMPILE_ERROR, "Interface %s may not inherit from class (%s)", ce->name, parent_ce->name);
parent_ce        3757 Zend/zend_compile.c 	if (parent_ce->ce_flags & ZEND_ACC_FINAL_CLASS) {
parent_ce        3758 Zend/zend_compile.c 		zend_error_noreturn(E_COMPILE_ERROR, "Class %s may not inherit from final class (%s)", ce->name, parent_ce->name);
parent_ce        3761 Zend/zend_compile.c 	ce->parent = parent_ce;
parent_ce        3764 Zend/zend_compile.c 		ce->serialize   = parent_ce->serialize;
parent_ce        3767 Zend/zend_compile.c 		ce->unserialize = parent_ce->unserialize;
parent_ce        3771 Zend/zend_compile.c 	zend_do_inherit_interfaces(ce, parent_ce TSRMLS_CC);
parent_ce        3774 Zend/zend_compile.c 	if (parent_ce->default_properties_count) {
parent_ce        3775 Zend/zend_compile.c 		int i = ce->default_properties_count + parent_ce->default_properties_count;
parent_ce        3779 Zend/zend_compile.c 			while (i-- > parent_ce->default_properties_count) {
parent_ce        3780 Zend/zend_compile.c 				ce->default_properties_table[i] = ce->default_properties_table[i - parent_ce->default_properties_count];
parent_ce        3783 Zend/zend_compile.c 		for (i = 0; i < parent_ce->default_properties_count; i++) {
parent_ce        3784 Zend/zend_compile.c 			ce->default_properties_table[i] = parent_ce->default_properties_table[i];
parent_ce        3787 Zend/zend_compile.c 				if (parent_ce->type != ce->type) {
parent_ce        3801 Zend/zend_compile.c 		ce->default_properties_count += parent_ce->default_properties_count;
parent_ce        3804 Zend/zend_compile.c 	if (parent_ce->type != ce->type) {
parent_ce        3806 Zend/zend_compile.c 		zend_update_class_constants(parent_ce  TSRMLS_CC);
parent_ce        3807 Zend/zend_compile.c 		if (parent_ce->default_static_members_count) {
parent_ce        3808 Zend/zend_compile.c 			int i = ce->default_static_members_count + parent_ce->default_static_members_count;
parent_ce        3812 Zend/zend_compile.c 				while (i-- > parent_ce->default_static_members_count) {
parent_ce        3813 Zend/zend_compile.c 					ce->default_static_members_table[i] = ce->default_static_members_table[i - parent_ce->default_static_members_count];
parent_ce        3816 Zend/zend_compile.c 			for (i = 0; i < parent_ce->default_static_members_count; i++) {
parent_ce        3817 Zend/zend_compile.c 				SEPARATE_ZVAL_TO_MAKE_IS_REF(&CE_STATIC_MEMBERS(parent_ce)[i]);
parent_ce        3818 Zend/zend_compile.c 				ce->default_static_members_table[i] = CE_STATIC_MEMBERS(parent_ce)[i];
parent_ce        3821 Zend/zend_compile.c 			ce->default_static_members_count += parent_ce->default_static_members_count;
parent_ce        3825 Zend/zend_compile.c 		if (parent_ce->default_static_members_count) {
parent_ce        3826 Zend/zend_compile.c 			int i = ce->default_static_members_count + parent_ce->default_static_members_count;
parent_ce        3830 Zend/zend_compile.c 				while (i-- > parent_ce->default_static_members_count) {
parent_ce        3831 Zend/zend_compile.c 					ce->default_static_members_table[i] = ce->default_static_members_table[i - parent_ce->default_static_members_count];
parent_ce        3834 Zend/zend_compile.c 			for (i = 0; i < parent_ce->default_static_members_count; i++) {
parent_ce        3835 Zend/zend_compile.c 				SEPARATE_ZVAL_TO_MAKE_IS_REF(&parent_ce->default_static_members_table[i]);
parent_ce        3836 Zend/zend_compile.c 				ce->default_static_members_table[i] = parent_ce->default_static_members_table[i];
parent_ce        3839 Zend/zend_compile.c 			ce->default_static_members_count += parent_ce->default_static_members_count;
parent_ce        3851 Zend/zend_compile.c 				property_info->offset += parent_ce->default_static_members_count;
parent_ce        3853 Zend/zend_compile.c 				property_info->offset += parent_ce->default_properties_count;
parent_ce        3858 Zend/zend_compile.c 	zend_hash_merge_ex(&ce->properties_info, &parent_ce->properties_info, (copy_ctor_func_t) (ce->type & ZEND_INTERNAL_CLASS ? zend_duplicate_property_info_internal : zend_duplicate_property_info), sizeof(zend_property_info), (merge_checker_func_t) do_inherit_property_access_check, ce);
parent_ce        3860 Zend/zend_compile.c 	zend_hash_merge(&ce->constants_table, &parent_ce->constants_table, zval_property_ctor(parent_ce, ce), NULL, sizeof(zval *), 0);
parent_ce        3861 Zend/zend_compile.c 	zend_hash_merge_ex(&ce->function_table, &parent_ce->function_table, (copy_ctor_func_t) do_inherit_method, sizeof(zend_function), (merge_checker_func_t) do_inherit_method_check, ce);
parent_ce        3870 Zend/zend_compile.c 	ce->ce_flags |= parent_ce->ce_flags & ZEND_HAS_STATIC_IN_METHODS;
parent_ce        4730 Zend/zend_compile.c ZEND_API zend_class_entry *do_bind_inherited_class(const zend_op_array *op_array, const zend_op *opline, HashTable *class_table, zend_class_entry *parent_ce, zend_bool compile_time TSRMLS_DC) /* {{{ */
parent_ce        4760 Zend/zend_compile.c 	if (parent_ce->ce_flags & ZEND_ACC_INTERFACE) {
parent_ce        4761 Zend/zend_compile.c 		zend_error_noreturn(E_COMPILE_ERROR, "Class %s cannot extend from interface %s", ce->name, parent_ce->name);
parent_ce        4762 Zend/zend_compile.c 	} else if ((parent_ce->ce_flags & ZEND_ACC_TRAIT) == ZEND_ACC_TRAIT) {
parent_ce        4763 Zend/zend_compile.c 		zend_error_noreturn(E_COMPILE_ERROR, "Class %s cannot extend from trait %s", ce->name, parent_ce->name);
parent_ce        4766 Zend/zend_compile.c 	zend_do_inheritance(ce, parent_ce TSRMLS_CC);
parent_ce         544 Zend/zend_compile.h ZEND_API zend_class_entry *do_bind_inherited_class(const zend_op_array *op_array, const zend_op *opline, HashTable *class_table, zend_class_entry *parent_ce, zend_bool compile_time TSRMLS_DC);
parent_ce         558 Zend/zend_compile.h ZEND_API void zend_do_inheritance(zend_class_entry *ce, zend_class_entry *parent_ce TSRMLS_DC);
parent_ce         129 ext/dom/php_dom.h #define REGISTER_DOM_CLASS(ce, name, parent_ce, funcs, entry) \
parent_ce         132 ext/dom/php_dom.h entry = zend_register_internal_class_ex(&ce, parent_ce, NULL TSRMLS_CC);
parent_ce          56 ext/spl/spl_functions.c PHPAPI void spl_register_sub_class(zend_class_entry ** ppce, zend_class_entry * parent_ce, char * class_name, void *obj_ctor, const zend_function_entry * function_list TSRMLS_DC)
parent_ce          61 ext/spl/spl_functions.c 	*ppce = zend_register_internal_class_ex(&ce, parent_ce, NULL TSRMLS_CC);
parent_ce          67 ext/spl/spl_functions.c 		(*ppce)->create_object = parent_ce->create_object;
parent_ce          53 ext/spl/spl_functions.h void spl_register_sub_class(zend_class_entry ** ppce, zend_class_entry * parent_ce, char * class_name, create_object_func_t ctor, const zend_function_entry * function_list TSRMLS_DC);
parent_ce          79 ext/xsl/php_xsl.h #define REGISTER_XSL_CLASS(ce, name, parent_ce, funcs, entry) \
parent_ce          82 ext/xsl/php_xsl.h entry = zend_register_internal_class_ex(&ce, parent_ce, NULL TSRMLS_CC);