( a: &num_bigint::BigUint, b: &num_bigint::BigUint, )
| 2887 | let is_int_dec_le = addr == p.int_dec_le.addr; |
| 2888 | let is_int_dec_eq = addr == p.int_dec_eq.addr; |
| 2889 | let is_int_dec_lt = addr == p.int_dec_lt.addr; |
| 2890 | if is_int_dec_le || is_int_dec_eq || is_int_dec_lt { |
| 2891 | return self.try_normalize_int_decidable(&addr, &args); |
| 2892 | } |
| 2893 | if !is_dec_le && !is_dec_eq && !is_dec_lt { |
| 2894 | return Ok(None); |
| 2895 | } |
| 2896 | if args.len() < 2 { |
| 2897 | return Ok(None); |
| 2898 | } |
| 2899 | |
| 2900 | let wa = self.whnf(&args[0])?; |
| 2901 | let wb = self.whnf(&args[1])?; |
| 2902 | let a_val = match extract_nat_value(&wa, &self.prims) { |
| 2903 | Some(v) => v, |
| 2904 | None => return Ok(None), |
no test coverage detected