| 307 | } |
| 308 | |
| 309 | absl::StatusOr<uint64_t> CheckedDoubleToUint64(double v) { |
| 310 | CEL_RETURN_IF_ERROR( |
| 311 | CheckRange(std::isfinite(v) && v >= 0 && v < kDoubleTwoTo64, |
| 312 | "double out of uint64 range")); |
| 313 | return static_cast<uint64_t>(v); |
| 314 | } |
| 315 | |
| 316 | absl::StatusOr<uint64_t> CheckedInt64ToUint64(int64_t v) { |
| 317 | CEL_RETURN_IF_ERROR(CheckRange(v >= 0, "int64 out of uint64 range")); |
no test coverage detected