| 63 | } |
| 64 | |
| 65 | void FunctionExpressionEvaluator::resolveResultVector(const ResultSet& /*resultSet*/, |
| 66 | MemoryManager* memoryManager) { |
| 67 | resultVector = std::make_shared<ValueVector>(expression->dataType.copy(), memoryManager); |
| 68 | std::vector<ExpressionEvaluator*> inputEvaluators; |
| 69 | inputEvaluators.reserve(children.size()); |
| 70 | for (auto& child : children) { |
| 71 | parameters.push_back(child->resultVector); |
| 72 | inputEvaluators.push_back(child.get()); |
| 73 | } |
| 74 | resolveResultStateFromChildren(inputEvaluators); |
| 75 | if (function->compileFunc != nullptr) { |
| 76 | function->compileFunc(bindData.get(), parameters, resultVector); |
| 77 | } |
| 78 | } |
| 79 | |
| 80 | } // namespace evaluator |
| 81 | } // namespace lbug |