Fallible visitor for the [`MirScalarExpr`]s directly owned by this relation expression. The `f` visitor should not recursively descend into owned [`MirRelationExpr`]s.
(&mut self, f: &mut F)
| 1687 | /// |
| 1688 | /// The `f` visitor should not recursively descend into owned [`MirRelationExpr`]s. |
| 1689 | pub fn try_visit_scalars_mut1<F, E>(&mut self, f: &mut F) -> Result<(), E> |
| 1690 | where |
| 1691 | F: FnMut(&mut MirScalarExpr) -> Result<(), E>, |
| 1692 | { |
| 1693 | use MirRelationExpr::*; |
| 1694 | match self { |
| 1695 | Map { scalars, .. } => { |
| 1696 | for s in scalars { |
| 1697 | f(s)?; |
| 1698 | } |
| 1699 | } |
| 1700 | Filter { predicates, .. } => { |
| 1701 | for p in predicates { |
| 1702 | f(p)?; |
| 1703 | } |
| 1704 | } |
| 1705 | FlatMap { exprs, .. } => { |
| 1706 | for expr in exprs { |
| 1707 | f(expr)?; |
| 1708 | } |
| 1709 | } |
| 1710 | Join { |
| 1711 | inputs: _, |
| 1712 | equivalences, |
| 1713 | implementation, |
| 1714 | } => { |
| 1715 | for equivalence in equivalences { |
| 1716 | for expr in equivalence { |
| 1717 | f(expr)?; |
| 1718 | } |
| 1719 | } |
| 1720 | match implementation { |
| 1721 | JoinImplementation::Differential((_, start_key, _), order) => { |
| 1722 | if let Some(start_key) = start_key { |
| 1723 | for k in start_key { |
| 1724 | f(k)?; |
| 1725 | } |
| 1726 | } |
| 1727 | for (_, lookup_key, _) in order { |
| 1728 | for k in lookup_key { |
| 1729 | f(k)?; |
| 1730 | } |
| 1731 | } |
| 1732 | } |
| 1733 | JoinImplementation::DeltaQuery(paths) => { |
| 1734 | for path in paths { |
| 1735 | for (_, lookup_key, _) in path { |
| 1736 | for k in lookup_key { |
| 1737 | f(k)?; |
| 1738 | } |
| 1739 | } |
| 1740 | } |
| 1741 | } |
| 1742 | JoinImplementation::IndexedFilter(_coll_id, _idx_id, index_key, _) => { |
| 1743 | for k in index_key { |
| 1744 | f(k)?; |
| 1745 | } |
| 1746 | } |
no outgoing calls
no test coverage detected