44#include " textplot_sparkline.hpp"
55#include " textplot_qr.hpp"
66#include " duckdb.hpp"
7- #include " duckdb/main/extension_util.hpp"
87#include " duckdb/function/scalar_function.hpp"
98
109namespace duckdb {
1110
12- static void LoadInternal (DatabaseInstance &instance ) {
11+ static void LoadInternal (ExtensionLoader &loader ) {
1312 auto bar_function = ScalarFunction (" tp_bar" , {LogicalType::DOUBLE}, LogicalType::VARCHAR, TextplotBar,
1413 TextplotBarBind, nullptr , nullptr , nullptr , LogicalType (LogicalTypeId::ANY));
15- ExtensionUtil:: RegisterFunction (instance, bar_function);
14+ loader. RegisterFunction (bar_function);
1615
1716 auto qr_function = ScalarFunction (" tp_qr" , {LogicalType::VARCHAR}, LogicalType::VARCHAR, TextplotQR, TextplotQRBind,
1817 nullptr , nullptr , nullptr , LogicalType (LogicalTypeId::ANY));
19- ExtensionUtil:: RegisterFunction (instance, qr_function);
18+ loader. RegisterFunction (qr_function);
2019
2120 // Lets register a density function.
2221 auto density_function =
2322 ScalarFunction (" tp_density" , {LogicalType::LIST (LogicalType::DOUBLE)}, LogicalType::VARCHAR, TextplotDensity,
2423 TextplotDensityBind, nullptr , nullptr , nullptr , LogicalType (LogicalTypeId::ANY));
25- ExtensionUtil:: RegisterFunction (instance, density_function);
24+ loader. RegisterFunction (density_function);
2625
2726 auto sparkline_function = ScalarFunction (" tp_sparkline" , {LogicalType::LIST (LogicalType::DOUBLE)},
2827 LogicalType::VARCHAR, TextplotSparkline, TextplotSparklineBind, nullptr ,
2928 nullptr , nullptr , LogicalType (LogicalTypeId::ANY));
30- ExtensionUtil::RegisterFunction (instance, sparkline_function);
31-
32- // Now lets register some macros to make tp_bar easier to use.
29+ loader.RegisterFunction (sparkline_function);
3330}
3431
35- void TextplotExtension::Load (DuckDB &db ) {
36- LoadInternal (*db. instance );
32+ void TextplotExtension::Load (ExtensionLoader &loader ) {
33+ LoadInternal (loader );
3734}
3835
3936std::string TextplotExtension::Name () {
@@ -51,13 +48,7 @@ std::string TextplotExtension::Version() const {
5148} // namespace duckdb
5249
5350extern " C" {
54-
55- DUCKDB_EXTENSION_API void textplot_init (duckdb::DatabaseInstance &db) {
56- duckdb::DuckDB db_wrapper (db);
57- db_wrapper.LoadExtension <duckdb::TextplotExtension>();
58- }
59-
60- DUCKDB_EXTENSION_API const char *textplot_version () {
61- return duckdb::DuckDB::LibraryVersion ();
51+ DUCKDB_CPP_EXTENSION_ENTRY (textplot, loader) {
52+ duckdb::LoadInternal (loader);
6253}
6354}
0 commit comments