Typehinting merge #50

Merged
belliash merged 298 commits from typehinting into master 2019-04-17 11:27:52 +02:00
1 changed files with 29 additions and 25 deletions
Showing only changes of commit 550107235c - Show all commits

View File

@ -890,41 +890,45 @@ PH7_PRIVATE sxi32 PH7_ClassInstanceDump(SyBlob *pOut, ph7_class_instance *pThis,
if(!ShowType) { if(!ShowType) {
SyBlobAppend(&(*pOut), "Object(", sizeof("Object(") - 1); SyBlobAppend(&(*pOut), "Object(", sizeof("Object(") - 1);
} }
/* Append class name */ if(pThis) {
SyBlobFormat(&(*pOut), "%z) {", &pThis->pClass->sName); /* Append class name */
SyBlobFormat(&(*pOut), "%z) {", &pThis->pClass->sName);
#ifdef __WINNT__ #ifdef __WINNT__
SyBlobAppend(&(*pOut), "\r\n", sizeof("\r\n") - 1); SyBlobAppend(&(*pOut), "\r\n", sizeof("\r\n") - 1);
#else #else
SyBlobAppend(&(*pOut), "\n", sizeof(char)); SyBlobAppend(&(*pOut), "\n", sizeof(char));
#endif #endif
/* Dump object attributes */ /* Dump object attributes */
SyHashResetLoopCursor(&pThis->hAttr); SyHashResetLoopCursor(&pThis->hAttr);
while((pEntry = SyHashGetNextEntry(&pThis->hAttr)) != 0) { while((pEntry = SyHashGetNextEntry(&pThis->hAttr)) != 0) {
VmClassAttr *pVmAttr = (VmClassAttr *)pEntry->pUserData; VmClassAttr *pVmAttr = (VmClassAttr *)pEntry->pUserData;
if((pVmAttr->pAttr->iFlags & (PH7_CLASS_ATTR_CONSTANT | PH7_CLASS_ATTR_STATIC)) == 0) { if((pVmAttr->pAttr->iFlags & (PH7_CLASS_ATTR_CONSTANT | PH7_CLASS_ATTR_STATIC)) == 0) {
/* Dump non-static/constant attribute only */ /* Dump non-static/constant attribute only */
for(i = 0 ; i < nTab ; i++) { for(i = 0 ; i < nTab ; i++) {
SyBlobAppend(&(*pOut), " ", sizeof(char)); SyBlobAppend(&(*pOut), " ", sizeof(char));
} }
pValue = ExtractClassAttrValue(pThis->pVm, pVmAttr); pValue = ExtractClassAttrValue(pThis->pVm, pVmAttr);
if(pValue) { if(pValue) {
SyBlobFormat(&(*pOut), "['%z'] =>", &pVmAttr->pAttr->sName); SyBlobFormat(&(*pOut), "['%z'] =>", &pVmAttr->pAttr->sName);
#ifdef __WINNT__ #ifdef __WINNT__
SyBlobAppend(&(*pOut), "\r\n", sizeof("\r\n") - 1); SyBlobAppend(&(*pOut), "\r\n", sizeof("\r\n") - 1);
#else #else
SyBlobAppend(&(*pOut), "\n", sizeof(char)); SyBlobAppend(&(*pOut), "\n", sizeof(char));
#endif #endif
rc = PH7_MemObjDump(&(*pOut), pValue, ShowType, nTab + 1, nDepth, 0); rc = PH7_MemObjDump(&(*pOut), pValue, ShowType, nTab + 1, nDepth, 0);
if(rc == SXERR_LIMIT) { if(rc == SXERR_LIMIT) {
break; break;
}
} }
} }
} }
for(i = 0 ; i < nTab ; i++) {
SyBlobAppend(&(*pOut), " ", sizeof(char));
}
SyBlobAppend(&(*pOut), "}", sizeof(char));
} else {
SyBlobAppend(&(*pOut), ")", sizeof(char));
} }
for(i = 0 ; i < nTab ; i++) {
SyBlobAppend(&(*pOut), " ", sizeof(char));
}
SyBlobAppend(&(*pOut), "}", sizeof(char));
return rc; return rc;
} }
/* /*