This commit is contained in:
parent
f3f1723104
commit
9ab896c2e2
|
@ -359,6 +359,24 @@ static ph7_real MemObjCharValue(ph7_value *pObj) {
|
||||||
/* NOT REACHED */
|
/* NOT REACHED */
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
/*
|
||||||
|
* Checks a ph7_value variable compatibility with nType data type.
|
||||||
|
*/
|
||||||
|
PH7_PRIVATE sxi32 PH7_CheckVarCompat(ph7_value *pObj, int nType) {
|
||||||
|
if(nType == MEMOBJ_REAL && (pObj->iFlags & MEMOBJ_INT)) {
|
||||||
|
return SXRET_OK;
|
||||||
|
} else if(nType == MEMOBJ_CHAR && (pObj->iFlags & MEMOBJ_INT)) {
|
||||||
|
return SXRET_OK;
|
||||||
|
} else if(nType == MEMOBJ_CHAR && (pObj->iFlags & MEMOBJ_STRING)) {
|
||||||
|
int len = SyBlobLength(&pObj->sBlob);
|
||||||
|
if(len == 0 || len == 1) {
|
||||||
|
return SXRET_OK;
|
||||||
|
}
|
||||||
|
} else if(nType == MEMOBJ_CALL && (pObj->iFlags & MEMOBJ_STRING)) {
|
||||||
|
return SXRET_OK;
|
||||||
|
}
|
||||||
|
return SXERR_NOMATCH;
|
||||||
|
}
|
||||||
/*
|
/*
|
||||||
* Convert a ph7_value to type integer.Invalidate any prior representations.
|
* Convert a ph7_value to type integer.Invalidate any prior representations.
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1659,6 +1659,7 @@ PH7_PRIVATE sxi32 PH7_MemObjToNull(ph7_value *pObj);
|
||||||
PH7_PRIVATE sxi32 PH7_MemObjToReal(ph7_value *pObj);
|
PH7_PRIVATE sxi32 PH7_MemObjToReal(ph7_value *pObj);
|
||||||
PH7_PRIVATE sxi32 PH7_MemObjToInteger(ph7_value *pObj);
|
PH7_PRIVATE sxi32 PH7_MemObjToInteger(ph7_value *pObj);
|
||||||
PH7_PRIVATE sxi32 PH7_MemObjToBool(ph7_value *pObj);
|
PH7_PRIVATE sxi32 PH7_MemObjToBool(ph7_value *pObj);
|
||||||
|
PH7_PRIVATE sxi32 PH7_CheckVarCompat(ph7_value *pObj, int nType);
|
||||||
PH7_PRIVATE sxi64 PH7_TokenValueToInt64(SyString *pData);
|
PH7_PRIVATE sxi64 PH7_TokenValueToInt64(SyString *pData);
|
||||||
/* lex.c function prototypes */
|
/* lex.c function prototypes */
|
||||||
PH7_PRIVATE sxi32 PH7_TokenizeRawText(const char *zInput, sxu32 nLen, SySet *pOut);
|
PH7_PRIVATE sxi32 PH7_TokenizeRawText(const char *zInput, sxu32 nLen, SySet *pOut);
|
||||||
|
|
Loading…
Reference in New Issue
Block a user