Lexicographic `<` for sequences: first differing element decides; otherwise the shorter is less. Recurses through `lt_vals`, so nested sequences and mixed element types are handled (and rejected) consistently. */
(&self, xs: &[Val], ys: &[Val])
| 382 | |
| 383 | /* Lexicographic `<` for sequences: first differing element decides; otherwise the shorter is less. Recurses through `lt_vals`, so nested sequences and mixed element types are handled (and rejected) consistently. */ |
| 384 | pub fn seq_lt(&self, xs: &[Val], ys: &[Val]) -> Result<bool, VmErr> { |
| 385 | self.seq_lt_d(xs, ys, 0) |
| 386 | } |
| 387 | |
| 388 | fn seq_lt_d(&self, xs: &[Val], ys: &[Val], depth: usize) -> Result<bool, VmErr> { |
| 389 | if depth > CMP_DEPTH_MAX { return Err(cold_depth()); } |