(
&'a self,
datums: &'b mut Vec<Datum<'a>>,
arena: &'a RowArena,
)
| 1659 | /// datums without packing and then unpacking a row. |
| 1660 | #[inline(always)] |
| 1661 | pub fn evaluate_iter<'b, 'a: 'b>( |
| 1662 | &'a self, |
| 1663 | datums: &'b mut Vec<Datum<'a>>, |
| 1664 | arena: &'a RowArena, |
| 1665 | ) -> Result<Option<impl Iterator<Item = Datum<'a>> + 'b>, EvalError> { |
| 1666 | let passed_predicates = self.evaluate_inner(datums, arena)?; |
| 1667 | if !passed_predicates { |
| 1668 | Ok(None) |
| 1669 | } else { |
| 1670 | Ok(Some(self.mfp.projection.iter().map(move |i| datums[*i]))) |
| 1671 | } |
| 1672 | } |
| 1673 | |
| 1674 | /// Populates `datums` with `self.expressions` and tests `self.predicates`. |
| 1675 | /// |
no test coverage detected