From dddc12423a46e4383a00ca9dcb93c999f4ad0062 Mon Sep 17 00:00:00 2001 From: Kenichi Ishigaki Date: Mon, 31 May 2021 08:31:22 +0900 Subject: [PATCH] Make DBD_SQLITE_STRING_MODE_ constants exportable --- lib/DBD/SQLite/Constants.pm | 31 ++++++++++++++++++++++++++++++- util/constants.pl | 14 ++++++++++++-- 2 files changed, 42 insertions(+), 3 deletions(-) diff --git a/lib/DBD/SQLite/Constants.pm b/lib/DBD/SQLite/Constants.pm index fbf7763..b2bd2f0 100644 --- a/lib/DBD/SQLite/Constants.pm +++ b/lib/DBD/SQLite/Constants.pm @@ -319,6 +319,11 @@ our %EXPORT_TAGS = ( SQLITE_DBCONFIG_TRIGGER_EQP SQLITE_DBCONFIG_TRUSTED_SCHEMA SQLITE_DBCONFIG_WRITABLE_SCHEMA + DBD_SQLITE_STRING_MODE_BYTES + DBD_SQLITE_STRING_MODE_PV + DBD_SQLITE_STRING_MODE_UNICODE_FALLBACK + DBD_SQLITE_STRING_MODE_UNICODE_NAIVE + DBD_SQLITE_STRING_MODE_UNICODE_STRICT SQLITE_DELETE SQLITE_DENY SQLITE_DETACH @@ -525,6 +530,14 @@ our %EXPORT_TAGS = ( SQLITE_DBCONFIG_WRITABLE_SCHEMA /], + dbd_sqlite_string_mode => [qw/ + DBD_SQLITE_STRING_MODE_BYTES + DBD_SQLITE_STRING_MODE_PV + DBD_SQLITE_STRING_MODE_UNICODE_FALLBACK + DBD_SQLITE_STRING_MODE_UNICODE_NAIVE + DBD_SQLITE_STRING_MODE_UNICODE_STRICT + /], + extended_result_codes => [qw/ SQLITE_ABORT_ROLLBACK SQLITE_AUTH_USER @@ -699,7 +712,7 @@ DBD::SQLite::Constants - common SQLite constants =head1 DESCRIPTION -You can import necessary SQLite constants from this module. Available tags are C, C, C, C, C (C), C, C, C (C), C, C (C), C, C. See L for the complete list of constants. +You can import necessary SQLite constants from this module. Available tags are C, C, C, C, C (C), C, C, C, C (C), C, C (C), C, C. See L for the complete list of constants. This module does not export anything by default. @@ -853,6 +866,22 @@ This module does not export anything by default. =back +=head2 dbd_sqlite_string_mode + +=over 4 + +=item DBD_SQLITE_STRING_MODE_PV + +=item DBD_SQLITE_STRING_MODE_BYTES + +=item DBD_SQLITE_STRING_MODE_UNICODE_NAIVE + +=item DBD_SQLITE_STRING_MODE_UNICODE_FALLBACK + +=item DBD_SQLITE_STRING_MODE_UNICODE_STRICT + +=back + =head2 extended_result_codes =over 4 diff --git a/util/constants.pl b/util/constants.pl index b2ac327..ea2d2a5 100644 --- a/util/constants.pl +++ b/util/constants.pl @@ -189,11 +189,14 @@ END my %seen; $constants{all} = [sort grep {!$seen{$_}++} map {@$_} values %constants]; + push @{$constants{all}}, @dbd_sqlite_constants; + $constants{dbd_sqlite_string_mode} = [grep /^DBD_SQLITE_STRING_MODE_/, @dbd_sqlite_constants]; + my $sp = ' ' x 6; for my $tag (sort keys %constants) { print $fh <<"END"; $tag => [qw/ -@{[join "\n", map {" SQLITE_$_"} sort @{$constants{$tag}}]} +@{[join "\n", map { /^DBD_SQLITE_/ ? "$sp$_" : "${sp}SQLITE_$_"} sort @{$constants{$tag}}]} /], END @@ -244,10 +247,17 @@ END END for my $const (@{$constants{$tag}}) { - print $fh <<"END"; + if ($const =~ /^DBD_SQLITE_/) { + print $fh <<"END"; +\=item $const + +END + } else { + print $fh <<"END"; \=item SQLITE_$const END + } } print $fh <<"END"; \=back