| 14 | namespace processor { |
| 15 | |
| 16 | std::unique_ptr<NodeOffsetMaskMap> createNodeOffsetMaskMap(const Expression& expr, |
| 17 | PlanMapper* mapper) { |
| 18 | auto& node = expr.constCast<NodeExpression>(); |
| 19 | auto maskMap = std::make_unique<NodeOffsetMaskMap>(); |
| 20 | for (auto tableID : node.getTableIDs()) { |
| 21 | maskMap->addMask(tableID, mapper->createSemiMask(tableID)); |
| 22 | } |
| 23 | return maskMap; |
| 24 | } |
| 25 | |
| 26 | std::unique_ptr<PhysicalOperator> PlanMapper::mapRecursiveExtend( |
| 27 | const LogicalOperator* logicalOperator) { |
no test coverage detected