in src/internal/BinaryUtils.ts [492:512]
static checkTypesComatibility(expectedType, actualTypeCode) {
if (expectedType === null) {
return;
}
const expectedTypeCode = BinaryUtils.getTypeCode(expectedType);
if (actualTypeCode === BinaryUtils.TYPE_CODE.NULL) {
return;
}
else if (expectedTypeCode === BinaryUtils.TYPE_CODE.BINARY_OBJECT ||
actualTypeCode === BinaryUtils.TYPE_CODE.BINARY_OBJECT &&
expectedTypeCode === BinaryUtils.TYPE_CODE.COMPLEX_OBJECT) {
return;
}
else if (expectedTypeCode === BinaryUtils.TYPE_CODE.ENUM &&
actualTypeCode === BinaryUtils.TYPE_CODE.BINARY_ENUM) {
return;
}
else if (actualTypeCode !== expectedTypeCode) {
throw IgniteClientError.typeCastError(actualTypeCode, expectedTypeCode);
}
}