Total physical row count including sentinel (Tombstone / GdprErased) rows. Use this as the upper bound when iterating over rows; check [`row_kind`](Self::row_kind) inside the loop and skip non-Live rows when reading attribute columns. The attribute column vectors are indexed by the **live-row index** (incremented only for Live rows), not by the iteration index — confusing the two yields incorrect
(&self)
| 171 | /// not by the iteration index — confusing the two yields incorrect or |
| 172 | /// out-of-bounds reads. |
| 173 | pub fn row_count(&self) -> usize { |
| 174 | self.surrogates.len() |
| 175 | } |
| 176 | |
| 177 | /// Decode the `RowKind` for the given row index. |
| 178 | /// |
no test coverage detected