| 149 | } |
| 150 | |
| 151 | fn min_values(&self, column: &Column) -> Option<ArrayRef> { |
| 152 | // The pruning predicate evaluates the bounds for multiple expressions |
| 153 | // at once, so return an array with an element for the minimum value in |
| 154 | // each file |
| 155 | match column.name.as_str() { |
| 156 | "x" => Some(i32_array(self.x_values.iter().map(|(min, _)| min))), |
| 157 | "y" => Some(i32_array(self.y_values.iter().map(|(min, _)| min))), |
| 158 | name => panic!("unknown column name: {name}"), |
| 159 | } |
| 160 | } |
| 161 | |
| 162 | fn max_values(&self, column: &Column) -> Option<ArrayRef> { |
| 163 | // similarly to min_values, return an array with an element for the |