| 9 | namespace processor { |
| 10 | |
| 11 | std::unique_ptr<PhysicalOperator> PlanMapper::mapFilter(const LogicalOperator* logicalOperator) { |
| 12 | auto& logicalFilter = logicalOperator->constCast<LogicalFilter>(); |
| 13 | auto inSchema = logicalFilter.getChild(0)->getSchema(); |
| 14 | auto prevOperator = mapOperator(logicalOperator->getChild(0).get()); |
| 15 | auto exprMapper = ExpressionMapper(inSchema); |
| 16 | auto physicalRootExpr = exprMapper.getEvaluator(logicalFilter.getPredicate()); |
| 17 | auto printInfo = std::make_unique<FilterPrintInfo>(logicalFilter.getPredicate()); |
| 18 | return make_unique<Filter>(std::move(physicalRootExpr), logicalFilter.getGroupPosToSelect(), |
| 19 | std::move(prevOperator), getOperatorID(), std::move(printInfo)); |
| 20 | } |
| 21 | |
| 22 | } // namespace processor |
| 23 | } // namespace lbug |
nothing calls this directly
no test coverage detected