Constructs `imax x y` (impredicative max).
(x: Level, y: Level)
| 425 | let mut n: u64 = 0; |
| 426 | while let LevelData::Succ(inner, _) = cur.as_data() { |
| 427 | n += 1; |
| 428 | cur = inner.clone(); |
| 429 | } |
| 430 | (cur, n) |
| 431 | } |
| 432 | /// If this level is an explicit numeral `Succ^n(Zero)`, returns |
| 433 | /// `Some((Zero, n))`. Otherwise returns `None`. |
| 434 | pub fn explicit_offset(&self) -> Option<(Level, u64)> { |
| 435 | let (base, n) = self.peel_succ(); |
| 436 | if matches!(base.as_data(), LevelData::Zero(_)) { |