generated from tpl/purs
Add string array OID and check for OIDs
This commit is contained in:
parent
d86e229702
commit
6fb1844d4d
6
purspgpp
6
purspgpp
@ -60,6 +60,7 @@ my Str:D %types{Int:D} =
|
|||||||
25 => 'String',
|
25 => 'String',
|
||||||
701 => 'Number',
|
701 => 'Number',
|
||||||
2950 => 'UUID',
|
2950 => 'UUID',
|
||||||
|
2951 => 'List String',
|
||||||
;
|
;
|
||||||
|
|
||||||
sub process-module(libpq::Connection:D $conn, Str:D $segment --> Str:D) {
|
sub process-module(libpq::Connection:D $conn, Str:D $segment --> Str:D) {
|
||||||
@ -69,7 +70,10 @@ sub process-module(libpq::Connection:D $conn, Str:D $segment --> Str:D) {
|
|||||||
sub process-query(libpq::Connection:D $conn, Str:D $source --> Str:D) {
|
sub process-query(libpq::Connection:D $conn, Str:D $source --> Str:D) {
|
||||||
$conn.prepare('', $source);
|
$conn.prepare('', $source);
|
||||||
my $description = $conn.describe-prepared('');
|
my $description = $conn.describe-prepared('');
|
||||||
my &convert-types = { ($_.map({%types{$_}}), "Unit").flat.join(" × "); };
|
my &convert-types = {
|
||||||
|
die "unknown oid: $_" unless %types{$_}:exists for $_;
|
||||||
|
($_.map({%types{$_}}), "Unit").flat.join(" × ");
|
||||||
|
};
|
||||||
my $parameters = &convert-types($description.parameters);
|
my $parameters = &convert-types($description.parameters);
|
||||||
my $fields = &convert-types($description.fields);
|
my $fields = &convert-types($description.fields);
|
||||||
"(Query \"\"\"$source\"\"\" :: Query ($parameters) ($fields))";
|
"(Query \"\"\"$source\"\"\" :: Query ($parameters) ($fields))";
|
||||||
|
Loading…
Reference in New Issue
Block a user