Structs§
- A column of patterns in a match, where a column is the intuitive notion of “subpatterns that inspect the same subvalue/place”. This is used to traverse patterns column-by-column for lints. Despite similarities with the algorithm in
crate::usefulness
, this does a different traversal. Notably this is linear in the depth of patterns, whereascompute_exhaustiveness_and_usefulness
is worst-case exponential (exhaustiveness is NP-complete). The core difference is that we treat sub-columns separately.