/src/duckdb/src/planner/operator/logical_window.cpp
Line | Count | Source (jump to first uncovered line) |
1 | | #include "duckdb/planner/operator/logical_window.hpp" |
2 | | |
3 | | #include "duckdb/main/config.hpp" |
4 | | |
5 | | namespace duckdb { |
6 | | |
7 | 344 | vector<ColumnBinding> LogicalWindow::GetColumnBindings() { |
8 | 344 | auto child_bindings = children[0]->GetColumnBindings(); |
9 | 741 | for (idx_t i = 0; i < expressions.size(); i++) { |
10 | 397 | child_bindings.emplace_back(window_index, i); |
11 | 397 | } |
12 | 344 | return child_bindings; |
13 | 344 | } |
14 | | |
15 | 165 | void LogicalWindow::ResolveTypes() { |
16 | 165 | types.insert(types.end(), children[0]->types.begin(), children[0]->types.end()); |
17 | 188 | for (auto &expr : expressions) { |
18 | 188 | types.push_back(expr->return_type); |
19 | 188 | } |
20 | 165 | } |
21 | | |
22 | 0 | vector<idx_t> LogicalWindow::GetTableIndex() const { |
23 | 0 | return vector<idx_t> {window_index}; |
24 | 0 | } |
25 | | |
26 | 12 | string LogicalWindow::GetName() const { |
27 | | #ifdef DEBUG |
28 | | if (DBConfigOptions::debug_print_bindings) { |
29 | | return LogicalOperator::GetName() + StringUtil::Format(" #%llu", window_index); |
30 | | } |
31 | | #endif |
32 | 12 | return LogicalOperator::GetName(); |
33 | 12 | } |
34 | | |
35 | | } // namespace duckdb |