If the following code (and in the >= case) the || operator is always going to return the cXSBoolean object returned by the first call, since it it not a fall like value.
if (fXSAnyAtomicType_isNumeric(oLeft)) {
if (fXSAnyAtomicType_isNumeric(oRight))
return hStaticContext_operators["numeric-less-than"].call(oContext, oLeft, oRight) || hStaticContext_operators["numeric-equal"].call(oContext, oLeft, oRight);
}
Suggest changing it to
if (fXSAnyAtomicType_isNumeric(oLeft)) {
if (fXSAnyAtomicType_isNumeric(oRight))
sOperator = "numeric-greater-than";
}
If the following code (and in the >= case) the || operator is always going to return the cXSBoolean object returned by the first call, since it it not a fall like value.
Suggest changing it to
and letting it fall through like the other cases