pub fn scope_filter(
scope_cats: &[CategoryId],
rows: &[Vec<Option<String>>],
cats: &[CategoryId],
cols: &[String],
) -> Option<(Vec<String>, Vec<Vec<String>>)>Expand description
For a binding whose measure ranges over cats, read from dimension
columns cols (same order), restricted to the touched rows rows
(dimension values in scope_cats order, as Scope::from_rows takes
them): the columns of the touched categories it has, and per column the
touched values, row-aligned, each tuple once and none with a NULL. None
when it has none of the touched categories, so every row is in scope.