duckdb 0.8.2-dev1968.0 → 0.8.2-dev2044.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/src/duckdb/src/catalog/catalog.cpp +1 -1
- package/src/duckdb/src/catalog/catalog_entry/index_catalog_entry.cpp +17 -41
- package/src/duckdb/src/catalog/catalog_entry/macro_catalog_entry.cpp +2 -10
- package/src/duckdb/src/catalog/catalog_entry/schema_catalog_entry.cpp +4 -14
- package/src/duckdb/src/catalog/catalog_entry/sequence_catalog_entry.cpp +11 -28
- package/src/duckdb/src/catalog/catalog_entry/table_catalog_entry.cpp +11 -38
- package/src/duckdb/src/catalog/catalog_entry/view_catalog_entry.cpp +11 -27
- package/src/duckdb/src/catalog/catalog_entry.cpp +25 -1
- package/src/duckdb/src/common/enum_util.cpp +159 -0
- package/src/duckdb/src/common/extra_type_info.cpp +1 -2
- package/src/duckdb/src/common/serializer/binary_deserializer.cpp +3 -0
- package/src/duckdb/src/common/serializer/binary_serializer.cpp +4 -4
- package/src/duckdb/src/common/types/column/column_data_collection.cpp +43 -0
- package/src/duckdb/src/common/types/vector.cpp +1 -1
- package/src/duckdb/src/common/types.cpp +0 -12
- package/src/duckdb/src/execution/physical_plan/plan_comparison_join.cpp +1 -1
- package/src/duckdb/src/function/table/version/pragma_version.cpp +2 -2
- package/src/duckdb/src/include/duckdb/catalog/catalog_entry/index_catalog_entry.hpp +1 -2
- package/src/duckdb/src/include/duckdb/catalog/catalog_entry/macro_catalog_entry.hpp +1 -4
- package/src/duckdb/src/include/duckdb/catalog/catalog_entry/schema_catalog_entry.hpp +2 -5
- package/src/duckdb/src/include/duckdb/catalog/catalog_entry/sequence_catalog_entry.hpp +1 -6
- package/src/duckdb/src/include/duckdb/catalog/catalog_entry/table_catalog_entry.hpp +2 -11
- package/src/duckdb/src/include/duckdb/catalog/catalog_entry/view_catalog_entry.hpp +2 -5
- package/src/duckdb/src/include/duckdb/catalog/catalog_entry.hpp +14 -0
- package/src/duckdb/src/include/duckdb/common/constants.hpp +2 -0
- package/src/duckdb/src/include/duckdb/common/enum_util.hpp +32 -0
- package/src/duckdb/src/include/duckdb/common/enums/index_type.hpp +1 -1
- package/src/duckdb/src/include/duckdb/common/index_vector.hpp +12 -0
- package/src/duckdb/src/include/duckdb/common/serializer/binary_deserializer.hpp +28 -4
- package/src/duckdb/src/include/duckdb/common/serializer/binary_serializer.hpp +12 -5
- package/src/duckdb/src/include/duckdb/common/serializer/deserialization_data.hpp +110 -0
- package/src/duckdb/src/include/duckdb/common/serializer/format_deserializer.hpp +46 -1
- package/src/duckdb/src/include/duckdb/common/serializer/format_serializer.hpp +23 -21
- package/src/duckdb/src/include/duckdb/common/serializer/serialization_traits.hpp +12 -4
- package/src/duckdb/src/include/duckdb/common/types/column/column_data_collection.hpp +3 -0
- package/src/duckdb/src/include/duckdb/function/macro_function.hpp +3 -0
- package/src/duckdb/src/include/duckdb/function/scalar_macro_function.hpp +3 -0
- package/src/duckdb/src/include/duckdb/function/table_macro_function.hpp +3 -0
- package/src/duckdb/src/include/duckdb/parser/column_definition.hpp +6 -5
- package/src/duckdb/src/include/duckdb/parser/column_list.hpp +4 -0
- package/src/duckdb/src/include/duckdb/parser/constraint.hpp +5 -0
- package/src/duckdb/src/include/duckdb/parser/constraints/check_constraint.hpp +3 -0
- package/src/duckdb/src/include/duckdb/parser/constraints/foreign_key_constraint.hpp +6 -0
- package/src/duckdb/src/include/duckdb/parser/constraints/not_null_constraint.hpp +3 -0
- package/src/duckdb/src/include/duckdb/parser/constraints/unique_constraint.hpp +6 -0
- package/src/duckdb/src/include/duckdb/parser/expression/between_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/expression/case_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/expression/cast_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/expression/collate_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/expression/columnref_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/expression/comparison_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/expression/conjunction_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/expression/constant_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/expression/default_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/expression/function_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/expression/lambda_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/expression/operator_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/expression/parameter_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/expression/positional_reference_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/expression/star_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/expression/subquery_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/expression/window_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/parsed_data/alter_info.hpp +12 -1
- package/src/duckdb/src/include/duckdb/parser/parsed_data/alter_table_info.hpp +66 -2
- package/src/duckdb/src/include/duckdb/parser/parsed_data/attach_info.hpp +8 -1
- package/src/duckdb/src/include/duckdb/parser/parsed_data/copy_info.hpp +8 -1
- package/src/duckdb/src/include/duckdb/parser/parsed_data/create_index_info.hpp +4 -1
- package/src/duckdb/src/include/duckdb/parser/parsed_data/create_info.hpp +9 -2
- package/src/duckdb/src/include/duckdb/parser/parsed_data/create_macro_info.hpp +3 -0
- package/src/duckdb/src/include/duckdb/parser/parsed_data/create_schema_info.hpp +3 -0
- package/src/duckdb/src/include/duckdb/parser/parsed_data/create_sequence_info.hpp +3 -0
- package/src/duckdb/src/include/duckdb/parser/parsed_data/create_table_info.hpp +3 -0
- package/src/duckdb/src/include/duckdb/parser/parsed_data/create_type_info.hpp +3 -0
- package/src/duckdb/src/include/duckdb/parser/parsed_data/create_view_info.hpp +3 -0
- package/src/duckdb/src/include/duckdb/parser/parsed_data/detach_info.hpp +7 -0
- package/src/duckdb/src/include/duckdb/parser/parsed_data/drop_info.hpp +7 -0
- package/src/duckdb/src/include/duckdb/parser/parsed_data/exported_table_data.hpp +7 -0
- package/src/duckdb/src/include/duckdb/parser/parsed_data/load_info.hpp +13 -3
- package/src/duckdb/src/include/duckdb/parser/parsed_data/parse_info.hpp +22 -0
- package/src/duckdb/src/include/duckdb/parser/parsed_data/pragma_info.hpp +10 -0
- package/src/duckdb/src/include/duckdb/parser/parsed_data/show_select_info.hpp +7 -0
- package/src/duckdb/src/include/duckdb/parser/parsed_data/transaction_info.hpp +10 -0
- package/src/duckdb/src/include/duckdb/parser/parsed_data/vacuum_info.hpp +10 -0
- package/src/duckdb/src/include/duckdb/planner/bound_constraint.hpp +0 -8
- package/src/duckdb/src/include/duckdb/planner/bound_result_modifier.hpp +6 -0
- package/src/duckdb/src/include/duckdb/planner/column_binding.hpp +5 -0
- package/src/duckdb/src/include/duckdb/planner/expression/bound_between_expression.hpp +6 -0
- package/src/duckdb/src/include/duckdb/planner/expression/bound_case_expression.hpp +6 -0
- package/src/duckdb/src/include/duckdb/planner/expression/bound_cast_expression.hpp +6 -0
- package/src/duckdb/src/include/duckdb/planner/expression/bound_columnref_expression.hpp +3 -0
- package/src/duckdb/src/include/duckdb/planner/expression/bound_comparison_expression.hpp +3 -0
- package/src/duckdb/src/include/duckdb/planner/expression/bound_conjunction_expression.hpp +3 -0
- package/src/duckdb/src/include/duckdb/planner/expression/bound_constant_expression.hpp +3 -0
- package/src/duckdb/src/include/duckdb/planner/expression/bound_default_expression.hpp +3 -0
- package/src/duckdb/src/include/duckdb/planner/expression/bound_lambda_expression.hpp +3 -1
- package/src/duckdb/src/include/duckdb/planner/expression/bound_lambdaref_expression.hpp +3 -0
- package/src/duckdb/src/include/duckdb/planner/expression/bound_operator_expression.hpp +3 -0
- package/src/duckdb/src/include/duckdb/planner/expression/bound_parameter_data.hpp +5 -2
- package/src/duckdb/src/include/duckdb/planner/expression/bound_parameter_expression.hpp +7 -0
- package/src/duckdb/src/include/duckdb/planner/expression/bound_reference_expression.hpp +3 -0
- package/src/duckdb/src/include/duckdb/planner/expression/bound_unnest_expression.hpp +3 -0
- package/src/duckdb/src/include/duckdb/planner/expression/list.hpp +1 -0
- package/src/duckdb/src/include/duckdb/planner/expression.hpp +3 -0
- package/src/duckdb/src/include/duckdb/planner/joinside.hpp +3 -0
- package/src/duckdb/src/include/duckdb/planner/logical_operator.hpp +3 -0
- package/src/duckdb/src/include/duckdb/planner/operator/logical_aggregate.hpp +3 -0
- package/src/duckdb/src/include/duckdb/planner/operator/logical_any_join.hpp +3 -0
- package/src/duckdb/src/include/duckdb/planner/operator/logical_column_data_get.hpp +4 -0
- package/src/duckdb/src/include/duckdb/planner/operator/logical_comparison_join.hpp +9 -2
- package/src/duckdb/src/include/duckdb/planner/operator/logical_create.hpp +9 -6
- package/src/duckdb/src/include/duckdb/planner/operator/logical_create_index.hpp +2 -16
- package/src/duckdb/src/include/duckdb/planner/operator/logical_create_table.hpp +10 -6
- package/src/duckdb/src/include/duckdb/planner/operator/logical_cross_product.hpp +3 -0
- package/src/duckdb/src/include/duckdb/planner/operator/logical_cteref.hpp +2 -0
- package/src/duckdb/src/include/duckdb/planner/operator/logical_delete.hpp +7 -0
- package/src/duckdb/src/include/duckdb/planner/operator/logical_delim_get.hpp +3 -0
- package/src/duckdb/src/include/duckdb/planner/operator/logical_distinct.hpp +6 -10
- package/src/duckdb/src/include/duckdb/planner/operator/logical_dummy_scan.hpp +2 -0
- package/src/duckdb/src/include/duckdb/planner/operator/logical_empty_result.hpp +2 -0
- package/src/duckdb/src/include/duckdb/planner/operator/logical_explain.hpp +4 -0
- package/src/duckdb/src/include/duckdb/planner/operator/logical_expression_get.hpp +3 -0
- package/src/duckdb/src/include/duckdb/planner/operator/logical_filter.hpp +3 -0
- package/src/duckdb/src/include/duckdb/planner/operator/logical_insert.hpp +6 -0
- package/src/duckdb/src/include/duckdb/planner/operator/logical_limit.hpp +3 -0
- package/src/duckdb/src/include/duckdb/planner/operator/logical_limit_percent.hpp +3 -0
- package/src/duckdb/src/include/duckdb/planner/operator/logical_materialized_cte.hpp +5 -2
- package/src/duckdb/src/include/duckdb/planner/operator/logical_order.hpp +7 -35
- package/src/duckdb/src/include/duckdb/planner/operator/logical_pivot.hpp +6 -0
- package/src/duckdb/src/include/duckdb/planner/operator/logical_positional_join.hpp +3 -0
- package/src/duckdb/src/include/duckdb/planner/operator/logical_projection.hpp +3 -0
- package/src/duckdb/src/include/duckdb/planner/operator/logical_recursive_cte.hpp +5 -3
- package/src/duckdb/src/include/duckdb/planner/operator/logical_reset.hpp +4 -0
- package/src/duckdb/src/include/duckdb/planner/operator/logical_sample.hpp +6 -0
- package/src/duckdb/src/include/duckdb/planner/operator/logical_set.hpp +4 -0
- package/src/duckdb/src/include/duckdb/planner/operator/logical_set_operation.hpp +4 -0
- package/src/duckdb/src/include/duckdb/planner/operator/logical_show.hpp +3 -0
- package/src/duckdb/src/include/duckdb/planner/operator/logical_simple.hpp +3 -0
- package/src/duckdb/src/include/duckdb/planner/operator/logical_top_n.hpp +4 -0
- package/src/duckdb/src/include/duckdb/planner/operator/logical_unnest.hpp +2 -0
- package/src/duckdb/src/include/duckdb/planner/operator/logical_update.hpp +6 -0
- package/src/duckdb/src/include/duckdb/planner/operator/logical_window.hpp +3 -0
- package/src/duckdb/src/include/duckdb/planner/tableref/bound_pivotref.hpp +3 -0
- package/src/duckdb/src/optimizer/deliminator.cpp +5 -3
- package/src/duckdb/src/parser/column_definition.cpp +20 -32
- package/src/duckdb/src/parser/column_list.cpp +8 -0
- package/src/duckdb/src/parser/constraints/foreign_key_constraint.cpp +3 -0
- package/src/duckdb/src/parser/constraints/unique_constraint.cpp +3 -0
- package/src/duckdb/src/parser/expression/case_expression.cpp +0 -12
- package/src/duckdb/src/parser/parsed_data/alter_info.cpp +5 -2
- package/src/duckdb/src/parser/parsed_data/alter_table_info.cpp +38 -0
- package/src/duckdb/src/parser/parsed_data/create_index_info.cpp +3 -1
- package/src/duckdb/src/parser/parsed_data/create_sequence_info.cpp +2 -0
- package/src/duckdb/src/parser/parsed_data/detach_info.cpp +1 -1
- package/src/duckdb/src/parser/parsed_data/drop_info.cpp +1 -1
- package/src/duckdb/src/parser/parsed_data/sample_options.cpp +0 -18
- package/src/duckdb/src/parser/parsed_data/transaction_info.cpp +4 -1
- package/src/duckdb/src/parser/parsed_data/vacuum_info.cpp +1 -1
- package/src/duckdb/src/parser/query_node.cpp +0 -10
- package/src/duckdb/src/parser/result_modifier.cpp +0 -13
- package/src/duckdb/src/parser/statement/select_statement.cpp +0 -10
- package/src/duckdb/src/parser/tableref/pivotref.cpp +0 -16
- package/src/duckdb/src/parser/transform/statement/transform_create_index.cpp +5 -4
- package/src/duckdb/src/planner/binder/query_node/plan_subquery.cpp +1 -1
- package/src/duckdb/src/planner/binder/statement/bind_create.cpp +6 -1
- package/src/duckdb/src/planner/expression/bound_between_expression.cpp +4 -0
- package/src/duckdb/src/planner/expression/bound_cast_expression.cpp +13 -6
- package/src/duckdb/src/planner/expression/bound_parameter_expression.cpp +20 -12
- package/src/duckdb/src/planner/logical_operator.cpp +13 -1
- package/src/duckdb/src/planner/operator/logical_comparison_join.cpp +16 -2
- package/src/duckdb/src/planner/operator/logical_create.cpp +14 -0
- package/src/duckdb/src/planner/operator/logical_create_index.cpp +20 -0
- package/src/duckdb/src/planner/operator/logical_create_table.cpp +16 -0
- package/src/duckdb/src/planner/operator/logical_delete.cpp +9 -2
- package/src/duckdb/src/planner/operator/logical_delim_join.cpp +2 -4
- package/src/duckdb/src/planner/operator/logical_distinct.cpp +13 -0
- package/src/duckdb/src/planner/operator/logical_explain.cpp +1 -1
- package/src/duckdb/src/planner/operator/logical_insert.cpp +8 -2
- package/src/duckdb/src/planner/operator/logical_materialized_cte.cpp +3 -2
- package/src/duckdb/src/planner/operator/logical_order.cpp +39 -0
- package/src/duckdb/src/planner/operator/logical_pivot.cpp +3 -0
- package/src/duckdb/src/planner/operator/logical_recursive_cte.cpp +5 -5
- package/src/duckdb/src/planner/operator/logical_sample.cpp +3 -0
- package/src/duckdb/src/planner/operator/logical_update.cpp +8 -2
- package/src/duckdb/src/planner/parsed_data/bound_create_table_info.cpp +4 -2
- package/src/duckdb/src/planner/planner.cpp +11 -0
- package/src/duckdb/src/storage/checkpoint_manager.cpp +23 -23
- package/src/duckdb/src/storage/serialization/serialize_constraint.cpp +98 -0
- package/src/duckdb/src/storage/serialization/serialize_create_info.cpp +188 -0
- package/src/duckdb/src/storage/serialization/serialize_expression.cpp +274 -0
- package/src/duckdb/src/storage/serialization/serialize_logical_operator.cpp +729 -0
- package/src/duckdb/src/storage/serialization/serialize_macro_function.cpp +62 -0
- package/src/duckdb/src/storage/serialization/serialize_nodes.cpp +242 -0
- package/src/duckdb/src/storage/serialization/serialize_parse_info.cpp +419 -0
- package/src/duckdb/src/storage/serialization/serialize_parsed_expression.cpp +40 -38
- package/src/duckdb/src/storage/serialization/serialize_query_node.cpp +36 -36
- package/src/duckdb/src/storage/serialization/serialize_result_modifier.cpp +25 -14
- package/src/duckdb/src/storage/serialization/serialize_statement.cpp +22 -0
- package/src/duckdb/src/storage/serialization/serialize_tableref.cpp +47 -47
- package/src/duckdb/src/storage/serialization/serialize_types.cpp +25 -25
- package/src/duckdb/src/storage/storage_info.cpp +3 -2
- package/src/duckdb/src/storage/wal_replay.cpp +20 -19
- package/src/duckdb/ub_src_parser.cpp +0 -2
- package/src/duckdb/ub_src_storage_serialization.cpp +16 -0
- package/src/duckdb/src/parser/common_table_expression_info.cpp +0 -21
@@ -15,7 +15,7 @@
|
|
15
15
|
|
16
16
|
namespace duckdb {
|
17
17
|
|
18
|
-
enum AlterForeignKeyType : uint8_t { AFT_ADD = 0, AFT_DELETE = 1 };
|
18
|
+
enum class AlterForeignKeyType : uint8_t { AFT_ADD = 0, AFT_DELETE = 1 };
|
19
19
|
|
20
20
|
//===--------------------------------------------------------------------===//
|
21
21
|
// Change Ownership
|
@@ -65,6 +65,12 @@ public:
|
|
65
65
|
void Serialize(FieldWriter &writer) const override;
|
66
66
|
virtual void SerializeAlterTable(FieldWriter &writer) const = 0;
|
67
67
|
static unique_ptr<AlterInfo> Deserialize(FieldReader &reader);
|
68
|
+
|
69
|
+
void FormatSerialize(FormatSerializer &serializer) const override;
|
70
|
+
static unique_ptr<AlterInfo> FormatDeserialize(FormatDeserializer &deserializer);
|
71
|
+
|
72
|
+
protected:
|
73
|
+
AlterTableInfo(AlterTableType type);
|
68
74
|
};
|
69
75
|
|
70
76
|
//===--------------------------------------------------------------------===//
|
@@ -83,6 +89,12 @@ public:
|
|
83
89
|
unique_ptr<AlterInfo> Copy() const override;
|
84
90
|
void SerializeAlterTable(FieldWriter &writer) const override;
|
85
91
|
static unique_ptr<AlterInfo> Deserialize(FieldReader &reader, AlterEntryData data);
|
92
|
+
|
93
|
+
void FormatSerialize(FormatSerializer &serializer) const override;
|
94
|
+
static unique_ptr<AlterTableInfo> FormatDeserialize(FormatDeserializer &deserializer);
|
95
|
+
|
96
|
+
private:
|
97
|
+
RenameColumnInfo();
|
86
98
|
};
|
87
99
|
|
88
100
|
//===--------------------------------------------------------------------===//
|
@@ -99,6 +111,12 @@ public:
|
|
99
111
|
unique_ptr<AlterInfo> Copy() const override;
|
100
112
|
void SerializeAlterTable(FieldWriter &writer) const override;
|
101
113
|
static unique_ptr<AlterInfo> Deserialize(FieldReader &reader, AlterEntryData data);
|
114
|
+
|
115
|
+
void FormatSerialize(FormatSerializer &serializer) const override;
|
116
|
+
static unique_ptr<AlterTableInfo> FormatDeserialize(FormatDeserializer &deserializer);
|
117
|
+
|
118
|
+
private:
|
119
|
+
RenameTableInfo();
|
102
120
|
};
|
103
121
|
|
104
122
|
//===--------------------------------------------------------------------===//
|
@@ -117,6 +135,12 @@ public:
|
|
117
135
|
unique_ptr<AlterInfo> Copy() const override;
|
118
136
|
void SerializeAlterTable(FieldWriter &writer) const override;
|
119
137
|
static unique_ptr<AlterInfo> Deserialize(FieldReader &reader, AlterEntryData data);
|
138
|
+
|
139
|
+
void FormatSerialize(FormatSerializer &serializer) const override;
|
140
|
+
static unique_ptr<AlterTableInfo> FormatDeserialize(FormatDeserializer &deserializer);
|
141
|
+
|
142
|
+
private:
|
143
|
+
explicit AddColumnInfo(ColumnDefinition new_column);
|
120
144
|
};
|
121
145
|
|
122
146
|
//===--------------------------------------------------------------------===//
|
@@ -137,9 +161,14 @@ public:
|
|
137
161
|
unique_ptr<AlterInfo> Copy() const override;
|
138
162
|
void SerializeAlterTable(FieldWriter &writer) const override;
|
139
163
|
static unique_ptr<AlterInfo> Deserialize(FieldReader &reader, AlterEntryData data);
|
164
|
+
void FormatSerialize(FormatSerializer &serializer) const override;
|
165
|
+
static unique_ptr<AlterTableInfo> FormatDeserialize(FormatDeserializer &deserializer);
|
140
166
|
string GetColumnName() const override {
|
141
167
|
return removed_column;
|
142
|
-
}
|
168
|
+
}
|
169
|
+
|
170
|
+
private:
|
171
|
+
RemoveColumnInfo();
|
143
172
|
};
|
144
173
|
|
145
174
|
//===--------------------------------------------------------------------===//
|
@@ -161,9 +190,14 @@ public:
|
|
161
190
|
unique_ptr<AlterInfo> Copy() const override;
|
162
191
|
void SerializeAlterTable(FieldWriter &writer) const override;
|
163
192
|
static unique_ptr<AlterInfo> Deserialize(FieldReader &reader, AlterEntryData data);
|
193
|
+
void FormatSerialize(FormatSerializer &serializer) const override;
|
194
|
+
static unique_ptr<AlterTableInfo> FormatDeserialize(FormatDeserializer &deserializer);
|
164
195
|
string GetColumnName() const override {
|
165
196
|
return column_name;
|
166
197
|
};
|
198
|
+
|
199
|
+
private:
|
200
|
+
ChangeColumnTypeInfo();
|
167
201
|
};
|
168
202
|
|
169
203
|
//===--------------------------------------------------------------------===//
|
@@ -182,6 +216,11 @@ public:
|
|
182
216
|
unique_ptr<AlterInfo> Copy() const override;
|
183
217
|
void SerializeAlterTable(FieldWriter &writer) const override;
|
184
218
|
static unique_ptr<AlterInfo> Deserialize(FieldReader &reader, AlterEntryData data);
|
219
|
+
void FormatSerialize(FormatSerializer &serializer) const override;
|
220
|
+
static unique_ptr<AlterTableInfo> FormatDeserialize(FormatDeserializer &deserializer);
|
221
|
+
|
222
|
+
private:
|
223
|
+
SetDefaultInfo();
|
185
224
|
};
|
186
225
|
|
187
226
|
//===--------------------------------------------------------------------===//
|
@@ -203,6 +242,11 @@ public:
|
|
203
242
|
unique_ptr<AlterInfo> Copy() const override;
|
204
243
|
void SerializeAlterTable(FieldWriter &writer) const override;
|
205
244
|
static unique_ptr<AlterInfo> Deserialize(FieldReader &reader, AlterEntryData data);
|
245
|
+
void FormatSerialize(FormatSerializer &serializer) const override;
|
246
|
+
static unique_ptr<AlterTableInfo> FormatDeserialize(FormatDeserializer &deserializer);
|
247
|
+
|
248
|
+
private:
|
249
|
+
AlterForeignKeyInfo();
|
206
250
|
};
|
207
251
|
|
208
252
|
//===--------------------------------------------------------------------===//
|
@@ -219,6 +263,11 @@ public:
|
|
219
263
|
unique_ptr<AlterInfo> Copy() const override;
|
220
264
|
void SerializeAlterTable(FieldWriter &writer) const override;
|
221
265
|
static unique_ptr<AlterInfo> Deserialize(FieldReader &reader, AlterEntryData data);
|
266
|
+
void FormatSerialize(FormatSerializer &serializer) const override;
|
267
|
+
static unique_ptr<AlterTableInfo> FormatDeserialize(FormatDeserializer &deserializer);
|
268
|
+
|
269
|
+
private:
|
270
|
+
SetNotNullInfo();
|
222
271
|
};
|
223
272
|
|
224
273
|
//===--------------------------------------------------------------------===//
|
@@ -235,6 +284,11 @@ public:
|
|
235
284
|
unique_ptr<AlterInfo> Copy() const override;
|
236
285
|
void SerializeAlterTable(FieldWriter &writer) const override;
|
237
286
|
static unique_ptr<AlterInfo> Deserialize(FieldReader &reader, AlterEntryData data);
|
287
|
+
void FormatSerialize(FormatSerializer &serializer) const override;
|
288
|
+
static unique_ptr<AlterTableInfo> FormatDeserialize(FormatDeserializer &deserializer);
|
289
|
+
|
290
|
+
private:
|
291
|
+
DropNotNullInfo();
|
238
292
|
};
|
239
293
|
|
240
294
|
//===--------------------------------------------------------------------===//
|
@@ -253,6 +307,11 @@ public:
|
|
253
307
|
void Serialize(FieldWriter &writer) const override;
|
254
308
|
virtual void SerializeAlterView(FieldWriter &writer) const = 0;
|
255
309
|
static unique_ptr<AlterInfo> Deserialize(FieldReader &reader);
|
310
|
+
void FormatSerialize(FormatSerializer &serializer) const override;
|
311
|
+
static unique_ptr<AlterInfo> FormatDeserialize(FormatDeserializer &deserializer);
|
312
|
+
|
313
|
+
protected:
|
314
|
+
AlterViewInfo(AlterViewType type);
|
256
315
|
};
|
257
316
|
|
258
317
|
//===--------------------------------------------------------------------===//
|
@@ -269,6 +328,11 @@ public:
|
|
269
328
|
unique_ptr<AlterInfo> Copy() const override;
|
270
329
|
void SerializeAlterView(FieldWriter &writer) const override;
|
271
330
|
static unique_ptr<AlterInfo> Deserialize(FieldReader &reader, AlterEntryData data);
|
331
|
+
void FormatSerialize(FormatSerializer &serializer) const override;
|
332
|
+
static unique_ptr<AlterViewInfo> FormatDeserialize(FormatDeserializer &deserializer);
|
333
|
+
|
334
|
+
private:
|
335
|
+
RenameViewInfo();
|
272
336
|
};
|
273
337
|
|
274
338
|
} // namespace duckdb
|
@@ -16,7 +16,11 @@
|
|
16
16
|
namespace duckdb {
|
17
17
|
|
18
18
|
struct AttachInfo : public ParseInfo {
|
19
|
-
|
19
|
+
public:
|
20
|
+
static constexpr const ParseInfoType TYPE = ParseInfoType::ATTACH_INFO;
|
21
|
+
|
22
|
+
public:
|
23
|
+
AttachInfo() : ParseInfo(TYPE) {
|
20
24
|
}
|
21
25
|
|
22
26
|
//! The alias of the attached database
|
@@ -31,6 +35,9 @@ public:
|
|
31
35
|
|
32
36
|
void Serialize(Serializer &serializer) const;
|
33
37
|
static unique_ptr<ParseInfo> Deserialize(Deserializer &deserializer);
|
38
|
+
|
39
|
+
void FormatSerialize(FormatSerializer &serializer) const override;
|
40
|
+
static unique_ptr<ParseInfo> FormatDeserialize(FormatDeserializer &deserializer);
|
34
41
|
};
|
35
42
|
|
36
43
|
} // namespace duckdb
|
@@ -17,7 +17,11 @@
|
|
17
17
|
namespace duckdb {
|
18
18
|
|
19
19
|
struct CopyInfo : public ParseInfo {
|
20
|
-
|
20
|
+
public:
|
21
|
+
static constexpr const ParseInfoType TYPE = ParseInfoType::COPY_INFO;
|
22
|
+
|
23
|
+
public:
|
24
|
+
CopyInfo() : ParseInfo(TYPE), catalog(INVALID_CATALOG), schema(DEFAULT_SCHEMA) {
|
21
25
|
}
|
22
26
|
|
23
27
|
//! The catalog name to copy to/from
|
@@ -50,6 +54,9 @@ public:
|
|
50
54
|
result->options = options;
|
51
55
|
return result;
|
52
56
|
}
|
57
|
+
|
58
|
+
void FormatSerialize(FormatSerializer &serializer) const override;
|
59
|
+
static unique_ptr<ParseInfo> FormatDeserialize(FormatDeserializer &deserializer);
|
53
60
|
};
|
54
61
|
|
55
62
|
} // namespace duckdb
|
@@ -28,7 +28,7 @@ struct CreateIndexInfo : public CreateInfo {
|
|
28
28
|
//! Index Constraint Type
|
29
29
|
IndexConstraintType constraint_type;
|
30
30
|
//! The table to create the index on
|
31
|
-
|
31
|
+
string table;
|
32
32
|
//! Set of expressions to index by
|
33
33
|
vector<unique_ptr<ParsedExpression>> expressions;
|
34
34
|
vector<unique_ptr<ParsedExpression>> parsed_expressions;
|
@@ -47,6 +47,9 @@ public:
|
|
47
47
|
DUCKDB_API unique_ptr<CreateInfo> Copy() const override;
|
48
48
|
|
49
49
|
static unique_ptr<CreateIndexInfo> Deserialize(Deserializer &deserializer);
|
50
|
+
|
51
|
+
void FormatSerialize(FormatSerializer &serializer) const override;
|
52
|
+
static unique_ptr<CreateInfo> FormatDeserialize(FormatDeserializer &deserializer);
|
50
53
|
};
|
51
54
|
|
52
55
|
} // namespace duckdb
|
@@ -28,9 +28,13 @@ enum class OnCreateConflict : uint8_t {
|
|
28
28
|
};
|
29
29
|
|
30
30
|
struct CreateInfo : public ParseInfo {
|
31
|
+
public:
|
32
|
+
static constexpr const ParseInfoType TYPE = ParseInfoType::CREATE_INFO;
|
33
|
+
|
34
|
+
public:
|
31
35
|
explicit CreateInfo(CatalogType type, string schema = DEFAULT_SCHEMA, string catalog_p = INVALID_CATALOG)
|
32
|
-
: type(type), catalog(std::move(catalog_p)), schema(schema),
|
33
|
-
temporary(false), internal(false) {
|
36
|
+
: ParseInfo(TYPE), type(type), catalog(std::move(catalog_p)), schema(schema),
|
37
|
+
on_conflict(OnCreateConflict::ERROR_ON_CONFLICT), temporary(false), internal(false) {
|
34
38
|
}
|
35
39
|
~CreateInfo() override {
|
36
40
|
}
|
@@ -61,6 +65,9 @@ public:
|
|
61
65
|
static unique_ptr<CreateInfo> Deserialize(Deserializer &deserializer);
|
62
66
|
static unique_ptr<CreateInfo> Deserialize(Deserializer &deserializer, PlanDeserializationState &state);
|
63
67
|
|
68
|
+
void FormatSerialize(FormatSerializer &serializer) const override;
|
69
|
+
static unique_ptr<CreateInfo> FormatDeserialize(FormatDeserializer &deserializer);
|
70
|
+
|
64
71
|
virtual unique_ptr<CreateInfo> Copy() const = 0;
|
65
72
|
|
66
73
|
DUCKDB_API void CopyProperties(CreateInfo &other) const;
|
@@ -24,6 +24,9 @@ public:
|
|
24
24
|
|
25
25
|
DUCKDB_API static unique_ptr<CreateMacroInfo> Deserialize(Deserializer &deserializer);
|
26
26
|
|
27
|
+
DUCKDB_API void FormatSerialize(FormatSerializer &serializer) const override;
|
28
|
+
DUCKDB_API static unique_ptr<CreateInfo> FormatDeserialize(FormatDeserializer &deserializer);
|
29
|
+
|
27
30
|
protected:
|
28
31
|
void SerializeInternal(Serializer &) const override;
|
29
32
|
};
|
@@ -29,6 +29,9 @@ public:
|
|
29
29
|
return result;
|
30
30
|
}
|
31
31
|
|
32
|
+
DUCKDB_API void FormatSerialize(FormatSerializer &serializer) const override;
|
33
|
+
DUCKDB_API static unique_ptr<CreateInfo> FormatDeserialize(FormatDeserializer &deserializer);
|
34
|
+
|
32
35
|
protected:
|
33
36
|
void SerializeInternal(Serializer &) const override {
|
34
37
|
}
|
@@ -52,6 +52,9 @@ public:
|
|
52
52
|
public:
|
53
53
|
DUCKDB_API static unique_ptr<CreateSequenceInfo> Deserialize(Deserializer &deserializer);
|
54
54
|
|
55
|
+
DUCKDB_API void FormatSerialize(FormatSerializer &serializer) const override;
|
56
|
+
DUCKDB_API static unique_ptr<CreateInfo> FormatDeserialize(FormatDeserializer &deserializer);
|
57
|
+
|
55
58
|
protected:
|
56
59
|
void SerializeInternal(Serializer &) const override;
|
57
60
|
};
|
@@ -40,6 +40,9 @@ public:
|
|
40
40
|
DUCKDB_API static unique_ptr<CreateTableInfo> Deserialize(Deserializer &deserializer);
|
41
41
|
|
42
42
|
DUCKDB_API unique_ptr<CreateInfo> Copy() const override;
|
43
|
+
|
44
|
+
DUCKDB_API void FormatSerialize(FormatSerializer &serializer) const override;
|
45
|
+
DUCKDB_API static unique_ptr<CreateInfo> FormatDeserialize(FormatDeserializer &deserializer);
|
43
46
|
};
|
44
47
|
|
45
48
|
} // namespace duckdb
|
@@ -31,6 +31,9 @@ public:
|
|
31
31
|
|
32
32
|
DUCKDB_API static unique_ptr<CreateTypeInfo> Deserialize(Deserializer &deserializer);
|
33
33
|
|
34
|
+
DUCKDB_API void FormatSerialize(FormatSerializer &serializer) const override;
|
35
|
+
DUCKDB_API static unique_ptr<CreateInfo> FormatDeserialize(FormatDeserializer &deserializer);
|
36
|
+
|
34
37
|
protected:
|
35
38
|
void SerializeInternal(Serializer &) const override;
|
36
39
|
};
|
@@ -38,6 +38,9 @@ public:
|
|
38
38
|
//! Gets a bound CreateViewInfo object from a CREATE VIEW statement
|
39
39
|
DUCKDB_API static unique_ptr<CreateViewInfo> FromCreateView(ClientContext &context, const string &sql);
|
40
40
|
|
41
|
+
DUCKDB_API void FormatSerialize(FormatSerializer &serializer) const override;
|
42
|
+
DUCKDB_API static unique_ptr<CreateInfo> FormatDeserialize(FormatDeserializer &deserializer);
|
43
|
+
|
41
44
|
protected:
|
42
45
|
void SerializeInternal(Serializer &serializer) const override;
|
43
46
|
};
|
@@ -14,6 +14,10 @@
|
|
14
14
|
namespace duckdb {
|
15
15
|
|
16
16
|
struct DetachInfo : public ParseInfo {
|
17
|
+
public:
|
18
|
+
static constexpr const ParseInfoType TYPE = ParseInfoType::DETACH_INFO;
|
19
|
+
|
20
|
+
public:
|
17
21
|
DetachInfo();
|
18
22
|
|
19
23
|
//! The alias of the attached database
|
@@ -25,5 +29,8 @@ public:
|
|
25
29
|
unique_ptr<DetachInfo> Copy() const;
|
26
30
|
void Serialize(Serializer &serializer) const;
|
27
31
|
static unique_ptr<ParseInfo> Deserialize(Deserializer &deserializer);
|
32
|
+
|
33
|
+
void FormatSerialize(FormatSerializer &serializer) const override;
|
34
|
+
static unique_ptr<ParseInfo> FormatDeserialize(FormatDeserializer &deserializer);
|
28
35
|
};
|
29
36
|
} // namespace duckdb
|
@@ -15,6 +15,10 @@
|
|
15
15
|
namespace duckdb {
|
16
16
|
|
17
17
|
struct DropInfo : public ParseInfo {
|
18
|
+
public:
|
19
|
+
static constexpr const ParseInfoType TYPE = ParseInfoType::DROP_INFO;
|
20
|
+
|
21
|
+
public:
|
18
22
|
DropInfo();
|
19
23
|
|
20
24
|
//! The catalog type to drop
|
@@ -38,6 +42,9 @@ public:
|
|
38
42
|
|
39
43
|
void Serialize(Serializer &serializer) const;
|
40
44
|
static unique_ptr<ParseInfo> Deserialize(Deserializer &deserializer);
|
45
|
+
|
46
|
+
void FormatSerialize(FormatSerializer &serializer) const override;
|
47
|
+
static unique_ptr<ParseInfo> FormatDeserialize(FormatDeserializer &deserializer);
|
41
48
|
};
|
42
49
|
|
43
50
|
} // namespace duckdb
|
@@ -38,6 +38,13 @@ struct ExportedTableInfo {
|
|
38
38
|
};
|
39
39
|
|
40
40
|
struct BoundExportData : public ParseInfo {
|
41
|
+
public:
|
42
|
+
static constexpr const ParseInfoType TYPE = ParseInfoType::BOUND_EXPORT_DATA;
|
43
|
+
|
44
|
+
public:
|
45
|
+
BoundExportData() : ParseInfo(TYPE) {
|
46
|
+
}
|
47
|
+
|
41
48
|
vector<ExportedTableInfo> data;
|
42
49
|
};
|
43
50
|
|
@@ -1,7 +1,7 @@
|
|
1
1
|
//===----------------------------------------------------------------------===//
|
2
2
|
// DuckDB
|
3
3
|
//
|
4
|
-
// duckdb/parser/parsed_data/
|
4
|
+
// duckdb/parser/parsed_data/load_info.hpp
|
5
5
|
//
|
6
6
|
//
|
7
7
|
//===----------------------------------------------------------------------===//
|
@@ -13,10 +13,17 @@
|
|
13
13
|
|
14
14
|
namespace duckdb {
|
15
15
|
|
16
|
-
enum class LoadType { LOAD, INSTALL, FORCE_INSTALL };
|
16
|
+
enum class LoadType : uint8_t { LOAD, INSTALL, FORCE_INSTALL };
|
17
17
|
|
18
18
|
struct LoadInfo : public ParseInfo {
|
19
|
-
|
19
|
+
public:
|
20
|
+
static constexpr const ParseInfoType TYPE = ParseInfoType::LOAD_INFO;
|
21
|
+
|
22
|
+
public:
|
23
|
+
LoadInfo() : ParseInfo(TYPE) {
|
24
|
+
}
|
25
|
+
|
26
|
+
string filename;
|
20
27
|
LoadType load_type;
|
21
28
|
|
22
29
|
public:
|
@@ -42,6 +49,9 @@ public:
|
|
42
49
|
reader.Finalize();
|
43
50
|
return std::move(load_info);
|
44
51
|
}
|
52
|
+
|
53
|
+
void FormatSerialize(FormatSerializer &serializer) const override;
|
54
|
+
static unique_ptr<ParseInfo> FormatDeserialize(FormatDeserializer &deserializer);
|
45
55
|
};
|
46
56
|
|
47
57
|
} // namespace duckdb
|
@@ -12,10 +12,29 @@
|
|
12
12
|
|
13
13
|
namespace duckdb {
|
14
14
|
|
15
|
+
enum class ParseInfoType : uint8_t {
|
16
|
+
ALTER_INFO,
|
17
|
+
ATTACH_INFO,
|
18
|
+
COPY_INFO,
|
19
|
+
CREATE_INFO,
|
20
|
+
DETACH_INFO,
|
21
|
+
DROP_INFO,
|
22
|
+
BOUND_EXPORT_DATA,
|
23
|
+
LOAD_INFO,
|
24
|
+
PRAGMA_INFO,
|
25
|
+
SHOW_SELECT_INFO,
|
26
|
+
TRANSACTION_INFO,
|
27
|
+
VACUUM_INFO
|
28
|
+
};
|
29
|
+
|
15
30
|
struct ParseInfo {
|
31
|
+
explicit ParseInfo(ParseInfoType info_type) : info_type(info_type) {
|
32
|
+
}
|
16
33
|
virtual ~ParseInfo() {
|
17
34
|
}
|
18
35
|
|
36
|
+
ParseInfoType info_type;
|
37
|
+
|
19
38
|
public:
|
20
39
|
template <class TARGET>
|
21
40
|
TARGET &Cast() {
|
@@ -28,6 +47,9 @@ public:
|
|
28
47
|
D_ASSERT(dynamic_cast<const TARGET *>(this));
|
29
48
|
return reinterpret_cast<const TARGET &>(*this);
|
30
49
|
}
|
50
|
+
|
51
|
+
virtual void FormatSerialize(FormatSerializer &serializer) const;
|
52
|
+
static unique_ptr<ParseInfo> FormatDeserialize(FormatDeserializer &deserializer);
|
31
53
|
};
|
32
54
|
|
33
55
|
} // namespace duckdb
|
@@ -18,6 +18,13 @@ namespace duckdb {
|
|
18
18
|
enum class PragmaType : uint8_t { PRAGMA_STATEMENT, PRAGMA_CALL };
|
19
19
|
|
20
20
|
struct PragmaInfo : public ParseInfo {
|
21
|
+
public:
|
22
|
+
static constexpr const ParseInfoType TYPE = ParseInfoType::PRAGMA_INFO;
|
23
|
+
|
24
|
+
public:
|
25
|
+
PragmaInfo() : ParseInfo(TYPE) {
|
26
|
+
}
|
27
|
+
|
21
28
|
//! Name of the PRAGMA statement
|
22
29
|
string name;
|
23
30
|
//! Parameter list (if any)
|
@@ -33,6 +40,9 @@ public:
|
|
33
40
|
result->named_parameters = named_parameters;
|
34
41
|
return result;
|
35
42
|
}
|
43
|
+
|
44
|
+
void FormatSerialize(FormatSerializer &serializer) const override;
|
45
|
+
static unique_ptr<ParseInfo> FormatDeserialize(FormatDeserializer &deserializer);
|
36
46
|
};
|
37
47
|
|
38
48
|
} // namespace duckdb
|
@@ -14,6 +14,13 @@
|
|
14
14
|
namespace duckdb {
|
15
15
|
|
16
16
|
struct ShowSelectInfo : public ParseInfo {
|
17
|
+
public:
|
18
|
+
static constexpr const ParseInfoType TYPE = ParseInfoType::SHOW_SELECT_INFO;
|
19
|
+
|
20
|
+
public:
|
21
|
+
ShowSelectInfo() : ParseInfo(TYPE) {
|
22
|
+
}
|
23
|
+
|
17
24
|
//! Types of projected columns
|
18
25
|
vector<LogicalType> types;
|
19
26
|
//! The QueryNode of select query
|
@@ -15,6 +15,10 @@ namespace duckdb {
|
|
15
15
|
enum class TransactionType : uint8_t { INVALID, BEGIN_TRANSACTION, COMMIT, ROLLBACK };
|
16
16
|
|
17
17
|
struct TransactionInfo : public ParseInfo {
|
18
|
+
public:
|
19
|
+
static constexpr const ParseInfoType TYPE = ParseInfoType::TRANSACTION_INFO;
|
20
|
+
|
21
|
+
public:
|
18
22
|
explicit TransactionInfo(TransactionType type);
|
19
23
|
|
20
24
|
//! The type of transaction statement
|
@@ -23,6 +27,12 @@ struct TransactionInfo : public ParseInfo {
|
|
23
27
|
public:
|
24
28
|
void Serialize(Serializer &serializer) const;
|
25
29
|
static unique_ptr<ParseInfo> Deserialize(Deserializer &deserializer);
|
30
|
+
|
31
|
+
void FormatSerialize(FormatSerializer &serializer) const override;
|
32
|
+
static unique_ptr<ParseInfo> FormatDeserialize(FormatDeserializer &deserializer);
|
33
|
+
|
34
|
+
private:
|
35
|
+
TransactionInfo();
|
26
36
|
};
|
27
37
|
|
28
38
|
} // namespace duckdb
|
@@ -15,6 +15,8 @@
|
|
15
15
|
#include "duckdb/common/optional_ptr.hpp"
|
16
16
|
|
17
17
|
namespace duckdb {
|
18
|
+
class FormatSerializer;
|
19
|
+
class FormatDeserializer;
|
18
20
|
|
19
21
|
struct VacuumOptions {
|
20
22
|
VacuumOptions() : vacuum(false), analyze(false) {
|
@@ -22,9 +24,15 @@ struct VacuumOptions {
|
|
22
24
|
|
23
25
|
bool vacuum;
|
24
26
|
bool analyze;
|
27
|
+
|
28
|
+
void FormatSerialize(FormatSerializer &serializer) const;
|
29
|
+
static VacuumOptions FormatDeserialize(FormatDeserializer &deserializer);
|
25
30
|
};
|
26
31
|
|
27
32
|
struct VacuumInfo : public ParseInfo {
|
33
|
+
public:
|
34
|
+
static constexpr const ParseInfoType TYPE = ParseInfoType::VACUUM_INFO;
|
35
|
+
|
28
36
|
public:
|
29
37
|
explicit VacuumInfo(VacuumOptions options);
|
30
38
|
|
@@ -42,6 +50,8 @@ public:
|
|
42
50
|
|
43
51
|
void Serialize(Serializer &serializer) const;
|
44
52
|
static unique_ptr<ParseInfo> Deserialize(Deserializer &deserializer);
|
53
|
+
void FormatSerialize(FormatSerializer &serializer) const override;
|
54
|
+
static unique_ptr<ParseInfo> FormatDeserialize(FormatDeserializer &deserializer);
|
45
55
|
};
|
46
56
|
|
47
57
|
} // namespace duckdb
|
@@ -21,14 +21,6 @@ public:
|
|
21
21
|
virtual ~BoundConstraint() {
|
22
22
|
}
|
23
23
|
|
24
|
-
void Serialize(Serializer &serializer) const {
|
25
|
-
serializer.Write(type);
|
26
|
-
}
|
27
|
-
|
28
|
-
static unique_ptr<BoundConstraint> Deserialize(Deserializer &source) {
|
29
|
-
return make_uniq<BoundConstraint>(source.Read<ConstraintType>());
|
30
|
-
}
|
31
|
-
|
32
24
|
ConstraintType type;
|
33
25
|
|
34
26
|
public:
|
@@ -63,6 +63,9 @@ public:
|
|
63
63
|
|
64
64
|
void Serialize(Serializer &serializer) const;
|
65
65
|
static BoundOrderByNode Deserialize(Deserializer &source, PlanDeserializationState &state);
|
66
|
+
|
67
|
+
void FormatSerialize(FormatSerializer &serializer) const;
|
68
|
+
static BoundOrderByNode FormatDeserialize(FormatDeserializer &deserializer);
|
66
69
|
};
|
67
70
|
|
68
71
|
class BoundLimitModifier : public BoundResultModifier {
|
@@ -98,6 +101,9 @@ public:
|
|
98
101
|
|
99
102
|
void Serialize(Serializer &serializer) const;
|
100
103
|
static unique_ptr<BoundOrderModifier> Deserialize(Deserializer &source, PlanDeserializationState &state);
|
104
|
+
|
105
|
+
void FormatSerialize(FormatSerializer &serializer) const;
|
106
|
+
static unique_ptr<BoundOrderModifier> FormatDeserialize(FormatDeserializer &deserializer);
|
101
107
|
};
|
102
108
|
|
103
109
|
enum class DistinctType : uint8_t { DISTINCT = 0, DISTINCT_ON = 1 };
|
@@ -14,6 +14,8 @@
|
|
14
14
|
#include <functional>
|
15
15
|
|
16
16
|
namespace duckdb {
|
17
|
+
class FormatSerializer;
|
18
|
+
class FormatDeserializer;
|
17
19
|
|
18
20
|
struct ColumnBinding {
|
19
21
|
idx_t table_index;
|
@@ -36,6 +38,9 @@ struct ColumnBinding {
|
|
36
38
|
bool operator!=(const ColumnBinding &rhs) const {
|
37
39
|
return !(*this == rhs);
|
38
40
|
}
|
41
|
+
|
42
|
+
void FormatSerialize(FormatSerializer &serializer) const;
|
43
|
+
static ColumnBinding FormatDeserialize(FormatDeserializer &deserializer);
|
39
44
|
};
|
40
45
|
|
41
46
|
} // namespace duckdb
|
@@ -35,6 +35,9 @@ public:
|
|
35
35
|
void Serialize(FieldWriter &writer) const override;
|
36
36
|
static unique_ptr<Expression> Deserialize(ExpressionDeserializationState &state, FieldReader &reader);
|
37
37
|
|
38
|
+
void FormatSerialize(FormatSerializer &serializer) const override;
|
39
|
+
static unique_ptr<Expression> FormatDeserialize(FormatDeserializer &deserializer);
|
40
|
+
|
38
41
|
public:
|
39
42
|
ExpressionType LowerComparisonType() {
|
40
43
|
return lower_inclusive ? ExpressionType::COMPARE_GREATERTHANOREQUALTO : ExpressionType::COMPARE_GREATERTHAN;
|
@@ -42,5 +45,8 @@ public:
|
|
42
45
|
ExpressionType UpperComparisonType() {
|
43
46
|
return upper_inclusive ? ExpressionType::COMPARE_LESSTHANOREQUALTO : ExpressionType::COMPARE_LESSTHAN;
|
44
47
|
}
|
48
|
+
|
49
|
+
private:
|
50
|
+
BoundBetweenExpression();
|
45
51
|
};
|
46
52
|
} // namespace duckdb
|
@@ -18,6 +18,9 @@ struct BoundCaseCheck {
|
|
18
18
|
|
19
19
|
void Serialize(Serializer &serializer) const;
|
20
20
|
static BoundCaseCheck Deserialize(Deserializer &source, PlanDeserializationState &state);
|
21
|
+
|
22
|
+
void FormatSerialize(FormatSerializer &serializer) const;
|
23
|
+
static BoundCaseCheck FormatDeserialize(FormatDeserializer &deserializer);
|
21
24
|
};
|
22
25
|
|
23
26
|
class BoundCaseExpression : public Expression {
|
@@ -41,5 +44,8 @@ public:
|
|
41
44
|
|
42
45
|
void Serialize(FieldWriter &writer) const override;
|
43
46
|
static unique_ptr<Expression> Deserialize(ExpressionDeserializationState &state, FieldReader &reader);
|
47
|
+
|
48
|
+
void FormatSerialize(FormatSerializer &serializer) const override;
|
49
|
+
static unique_ptr<Expression> FormatDeserialize(FormatDeserializer &deserializer);
|
44
50
|
};
|
45
51
|
} // namespace duckdb
|
@@ -52,5 +52,11 @@ public:
|
|
52
52
|
|
53
53
|
void Serialize(FieldWriter &writer) const override;
|
54
54
|
static unique_ptr<Expression> Deserialize(ExpressionDeserializationState &state, FieldReader &reader);
|
55
|
+
|
56
|
+
void FormatSerialize(FormatSerializer &serializer) const override;
|
57
|
+
static unique_ptr<Expression> FormatDeserialize(FormatDeserializer &deserializer);
|
58
|
+
|
59
|
+
private:
|
60
|
+
BoundCastExpression(ClientContext &context, unique_ptr<Expression> child, LogicalType target_type);
|
55
61
|
};
|
56
62
|
} // namespace duckdb
|
@@ -51,5 +51,8 @@ public:
|
|
51
51
|
|
52
52
|
void Serialize(FieldWriter &writer) const override;
|
53
53
|
static unique_ptr<Expression> Deserialize(ExpressionDeserializationState &state, FieldReader &reader);
|
54
|
+
|
55
|
+
void FormatSerialize(FormatSerializer &serializer) const override;
|
56
|
+
static unique_ptr<Expression> FormatDeserialize(FormatDeserializer &deserializer);
|
54
57
|
};
|
55
58
|
} // namespace duckdb
|