forked from duckdb/duckdb
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtable_macro_function.cpp
34 lines (27 loc) · 1.08 KB
/
table_macro_function.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
//===----------------------------------------------------------------------===//
// DuckDB
//
// duckdb/function/table_macro_function.hpp
//
//
//===----------------------------------------------------------------------===//
//! The SelectStatement of the view
#include "duckdb/function/table_macro_function.hpp"
#include "duckdb/parser/expression/constant_expression.hpp"
#include "duckdb/parser/query_node.hpp"
namespace duckdb {
TableMacroFunction::TableMacroFunction(unique_ptr<QueryNode> query_node)
: MacroFunction(MacroType::TABLE_MACRO), query_node(move(query_node)) {
}
TableMacroFunction::TableMacroFunction(void) : MacroFunction(MacroType::TABLE_MACRO) {
}
unique_ptr<MacroFunction> TableMacroFunction::Copy() {
auto result = make_unique<TableMacroFunction>();
result->query_node = query_node->Copy();
this->CopyProperties(*result);
return move(result);
}
string TableMacroFunction::ToSQL(const string &schema, const string &name) {
return MacroFunction::ToSQL(schema, name) + StringUtil::Format("TABLE (%s);", query_node->ToString());
}
} // namespace duckdb