/// Pushes a new row to the matrix. If the row starts with an or-pattern, this expands it.
Pushes a new row to the matrix. If the row starts with an or-pattern, this expands it.
Pushes a new row to the matrix . If the row starts with an or - pattern this expands it .
fn push(&mut self, row: PatStack<'p, 'tcx>) {
        if let Some(rows) = row.expand_or_pat() {
            for row in rows {
                // We recursively expand the or-patterns of the new rows.
                // This is necessary as we might have `0 | (1 | 2)` or e.g., `x @ 0 | x @ (1 | 2)`.
                self.push(row)
            }
        } else {
            self.patterns.push(row);
        }
    }
fn push ( & mut self , row : PatStack < ' p , ' tcx > ) { if let Some ( rows ) = row . expand_or_pat ( ) { for row in rows { // We recursively expand the or-patterns of the new rows. // This is necessary as we might have `0 | (1 | 2)` or e.g., `x @ 0 | x @ (1 | 2)`. self . push ( row ) } } else { self . patterns . push ( row ) ; } }
Pushes a new row to the matrix.
Pushes a new row to the matrix .
&mut self
row
PatStack<'p, 'tcx>