All methods defined in superclass can be access by $this and $parent construct. There is no need to copy private methods, as they cannot be access in $this context.
This commit is contained in:
+5
-3
@@ -282,9 +282,11 @@ PH7_PRIVATE sxi32 PH7_ClassInherit(ph7_vm *pVm, ph7_class *pSub, ph7_class *pBas
|
||||
}
|
||||
}
|
||||
/* Install the method */
|
||||
rc = SyHashInsert(&pSub->hMethod, (const void *)pName->zString, pName->nByte, pMeth);
|
||||
if(rc != SXRET_OK) {
|
||||
return rc;
|
||||
if(pMeth->iProtection != PH7_CLASS_PROT_PRIVATE) {
|
||||
rc = SyHashInsert(&pSub->hMethod, (const void *)pName->zString, pName->nByte, pMeth);
|
||||
if(rc != SXRET_OK) {
|
||||
return rc;
|
||||
}
|
||||
}
|
||||
}
|
||||
/* Mark first inherited class as direct subclass */
|
||||
|
||||
Reference in New Issue
Block a user