1 | //===----------------------------------------------------------------------===// |
2 | // DuckDB |
3 | // |
4 | // duckdb/function/table/system_functions.hpp |
5 | // |
6 | // |
7 | //===----------------------------------------------------------------------===// |
8 | |
9 | #pragma once |
10 | |
11 | #include "duckdb/function/table_function.hpp" |
12 | #include "duckdb/function/built_in_functions.hpp" |
13 | |
14 | namespace duckdb { |
15 | |
16 | struct PragmaCollations { |
17 | static void RegisterFunction(BuiltinFunctions &set); |
18 | }; |
19 | |
20 | struct PragmaTableInfo { |
21 | static void RegisterFunction(BuiltinFunctions &set); |
22 | }; |
23 | |
24 | struct PragmaStorageInfo { |
25 | static void RegisterFunction(BuiltinFunctions &set); |
26 | }; |
27 | |
28 | struct PragmaLastProfilingOutput { |
29 | static void RegisterFunction(BuiltinFunctions &set); |
30 | }; |
31 | |
32 | struct PragmaDetailedProfilingOutput { |
33 | static void RegisterFunction(BuiltinFunctions &set); |
34 | }; |
35 | |
36 | struct PragmaVersion { |
37 | static void RegisterFunction(BuiltinFunctions &set); |
38 | }; |
39 | |
40 | struct PragmaDatabaseSize { |
41 | static void RegisterFunction(BuiltinFunctions &set); |
42 | }; |
43 | |
44 | struct DuckDBSchemasFun { |
45 | static void RegisterFunction(BuiltinFunctions &set); |
46 | }; |
47 | |
48 | struct DuckDBColumnsFun { |
49 | static void RegisterFunction(BuiltinFunctions &set); |
50 | }; |
51 | |
52 | struct DuckDBConstraintsFun { |
53 | static void RegisterFunction(BuiltinFunctions &set); |
54 | }; |
55 | |
56 | struct DuckDBDatabasesFun { |
57 | static void RegisterFunction(BuiltinFunctions &set); |
58 | }; |
59 | |
60 | struct DuckDBDependenciesFun { |
61 | static void RegisterFunction(BuiltinFunctions &set); |
62 | }; |
63 | |
64 | struct DuckDBExtensionsFun { |
65 | static void RegisterFunction(BuiltinFunctions &set); |
66 | }; |
67 | |
68 | struct DuckDBFunctionsFun { |
69 | static void RegisterFunction(BuiltinFunctions &set); |
70 | }; |
71 | |
72 | struct DuckDBKeywordsFun { |
73 | static void RegisterFunction(BuiltinFunctions &set); |
74 | }; |
75 | |
76 | struct DuckDBIndexesFun { |
77 | static void RegisterFunction(BuiltinFunctions &set); |
78 | }; |
79 | |
80 | struct DuckDBSequencesFun { |
81 | static void RegisterFunction(BuiltinFunctions &set); |
82 | }; |
83 | |
84 | struct DuckDBSettingsFun { |
85 | static void RegisterFunction(BuiltinFunctions &set); |
86 | }; |
87 | |
88 | struct DuckDBTablesFun { |
89 | static void RegisterFunction(BuiltinFunctions &set); |
90 | }; |
91 | |
92 | struct DuckDBTemporaryFilesFun { |
93 | static void RegisterFunction(BuiltinFunctions &set); |
94 | }; |
95 | |
96 | struct DuckDBTypesFun { |
97 | static void RegisterFunction(BuiltinFunctions &set); |
98 | }; |
99 | |
100 | struct DuckDBViewsFun { |
101 | static void RegisterFunction(BuiltinFunctions &set); |
102 | }; |
103 | |
104 | struct TestType { |
105 | TestType(LogicalType type_p, string name_p) |
106 | : type(std::move(type_p)), name(std::move(name_p)), min_value(Value::MinimumValue(type)), |
107 | max_value(Value::MaximumValue(type)) { |
108 | } |
109 | TestType(LogicalType type_p, string name_p, Value min, Value max) |
110 | : type(std::move(type_p)), name(std::move(name_p)), min_value(std::move(min)), max_value(std::move(max)) { |
111 | } |
112 | |
113 | LogicalType type; |
114 | string name; |
115 | Value min_value; |
116 | Value max_value; |
117 | }; |
118 | |
119 | struct TestAllTypesFun { |
120 | static void RegisterFunction(BuiltinFunctions &set); |
121 | static vector<TestType> GetTestTypes(); |
122 | }; |
123 | |
124 | struct TestVectorTypesFun { |
125 | static void RegisterFunction(BuiltinFunctions &set); |
126 | }; |
127 | |
128 | } // namespace duckdb |
129 | |