1
0
mirror of https://github.com/postgres/postgres.git synced 2025-08-19 23:22:23 +03:00

Parse pg_proc.h with entries without OIDs.

This commit is contained in:
Magnus Hagander
2007-02-19 14:05:42 +00:00
parent 7c5e5439d2
commit bc959b7bd2
2 changed files with 16 additions and 4 deletions

View File

@@ -145,7 +145,7 @@ sub GenerateFiles {
print H "/* fmgroids.h generated for Visual C++ */\n#ifndef FMGROIDS_H\n#define FMGROIDS_H\n\n";
open(T,">src\\backend\\utils\\fmgrtab.c") || confess "Could not open fmgrtab.c";
print T "/* fmgrtab.c generated for Visual C++ */\n#include \"postgres.h\"\n#include \"utils/fmgrtab.h\"\n\n";
foreach my $s (sort {$a->{oid} <=> $b->{oid}} @fmgr) {
foreach my $s (sort {intval($a->{oid}) <=> intval($b->{oid})} @fmgr) {
next if $seenit{$s->{prosrc}};
$seenit{$s->{prosrc}} = 1;
print H "#define F_" . uc $s->{prosrc} . " $s->{oid}\n";
@@ -157,8 +157,9 @@ sub GenerateFiles {
my %bmap;
$bmap{'t'} = 'true';
$bmap{'f'} = 'false';
foreach my $s (sort {$a->{oid} <=> $b->{oid}} @fmgr) {
print T " { $s->{oid}, \"$s->{prosrc}\", $s->{nargs}, $bmap{$s->{strict}}, $bmap{$s->{retset}}, $s->{prosrc} },\n";
foreach my $s (sort {intval($a->{oid}) <=> intval($b->{oid})} @fmgr) {
my $o = intval($s->{oid});
print T " { $o, \"$s->{prosrc}\", $s->{nargs}, $bmap{$s->{strict}}, $bmap{$s->{retset}}, $s->{prosrc} },\n";
}
@@ -231,6 +232,14 @@ EOF
}
}
sub intval {
my $v = shift;
if ($v =~ /^\d+$/) {
return $v;
}
return 0;
}
sub AddProject {
my ($self, $name, $type, $folder, $initialdir) = @_;