X-Git-Url: https://git.stderr.nl/gitweb?a=blobdiff_plain;f=docs%2Freference%2Fbuild-selector-table.pl.in;fp=docs%2Freference%2Fbuild-selector-table.pl.in;h=80e8a4806fb6c513475af225be88dff7797c3cd4;hb=ee81c9edf038fbd02460c512e64504bdf994d91e;hp=0000000000000000000000000000000000000000;hpb=7637a8d2987f253973b1f1e0eac52e49490254db;p=rodin%2Fchimara.git diff --git a/docs/reference/build-selector-table.pl.in b/docs/reference/build-selector-table.pl.in new file mode 100644 index 0000000..80e8a48 --- /dev/null +++ b/docs/reference/build-selector-table.pl.in @@ -0,0 +1,32 @@ +#!@PERL@ -w +# +# Automatically builds section 11.1.6, "Table of Selectors", from the C code +# in gi_dispa.c. + +my $in_list = 0; + +print "\n"; + +while (<>) { + chomp; + if (/function_table\s*\[\]\s*=\s*{\s*$/) { + $in_list = 1; + next; + } + if ($in_list) { + next if /^#/; + last if /^};/; + /{\s*(0x[0-9a-fA-F]{4}),\s*(\w*).*/; + print "\n"; + print " $1\n"; + my $functionname = $2; + my $linkname = '"' . $2 . '"'; + $linkname =~ s/_/-/g; + print " \n"; + print " $functionname()\n"; + print " \n"; + print "\n"; + } +} + +print "\n";