postgresql/src/tools
Tom Lane bd1276a3c9 Prepare tab-complete.c for preprocessing.
Separate out psql_completion's giant else-if chain of *Matches
tests into a new function.  Add the infrastructure needed for
table-driven checking of the initial match of each completion
rule.  As-is, however, the code continues to operate as it did.
The new behavior applies only if SWITCH_CONVERSION_APPLIED
is #defined, which it is not here.  (The preprocessor added
in the next patch will add a #define for that.)

The first and last couple of bits of psql_completion are not
based on HeadMatches/TailMatches/Matches tests, so they stay
where they are; they won't become part of the switch.

This patch also fixes up a couple of if-conditions that didn't meet
the conditions enumerated in the comment for match_previous_words().
Those restrictions exist to simplify the preprocessor.

Discussion: https://postgr.es/m/2208466.1720729502@sss.pgh.pa.us
2024-10-07 12:19:12 -04:00
..
ci ci: Upgrade MacPorts version to 2.10.1. 2024-08-19 11:47:37 +12:00
editors Make Emacs perl-mode indent more like perltidy. 2019-01-13 11:32:31 -08:00
ifaddrs Use printf's %m format instead of strerror(errno) in more places 2024-03-12 10:02:54 +09:00
perlcheck Activate perlcritic InputOutput::RequireCheckedSyscalls and fix resulting warnings 2024-03-19 07:09:31 +01:00
pg_bsd_indent Add -Wmissing-variable-declarations to the standard compilation flags 2024-08-03 11:51:02 +02:00
pginclude Add further excludes to headerscheck 2024-09-24 20:41:47 +02:00
pgindent Prepare tab-complete.c for preprocessing. 2024-10-07 12:19:12 -04:00
add_commit_links.pl Improve Perl script which adds commit links to release notes 2024-09-19 08:45:33 -04:00
ccsym tools/ccsym: update for modern versions of gcc 2015-01-20 13:02:58 -05:00
check_bison_recursion.pl Update copyright for 2024 2024-01-03 20:49:05 -05:00
codelines Fix remaining stray references to CVS. 2010-09-22 19:51:39 -04:00
copyright.pl Perl scripts: revert 43ce181059 2024-09-15 21:25:24 -04:00
darwin_sysroot Move darwin sysroot determination into separate file 2022-09-01 16:54:19 -07:00
find_badmacros Remove cvs keywords from all files. 2010-09-20 22:08:53 +02:00
find_meson meson: Add initial version of meson based build system 2022-09-21 22:37:17 -07:00
find_static Fix trap in a few shell scripts 2022-09-20 18:50:16 +02:00
find_typedef Refer to OS X as "macOS", except for the port name which is still "darwin". 2016-09-25 15:40:57 -04:00
fix-old-flex-code.pl Update copyright for 2024 2024-01-03 20:49:05 -05:00
gen_export.pl Perl scripts: revert 43ce181059 2024-09-15 21:25:24 -04:00
gen_keywordlist.pl Perl scripts: revert 43ce181059 2024-09-15 21:25:24 -04:00
git-external-diff Preserve information on use of git-external-diff 2018-05-24 23:45:31 +09:30
git_changelog Stamp HEAD as 18devel. 2024-07-01 07:56:10 +09:00
install_files meson: make install_test_files more generic, rename to install_files 2023-03-23 21:20:18 -07:00
make_ctags Fix make_etags breakage on certain platforms. 2023-06-14 11:02:50 +09:00
make_etags Fix make_etags failure on Mac. 2023-02-15 09:52:42 +09:00
make_mkid Add another pgdefine path check, and a cvs-git change. 2011-08-26 21:52:35 -04:00
mark_pgdllimport.pl Update copyright for 2024 2024-01-03 20:49:05 -05:00
msvc_gendef.pl Perl scripts: revert 43ce181059 2024-09-15 21:25:24 -04:00
PerfectHash.pm Update copyright for 2024 2024-01-03 20:49:05 -05:00
pgflex meson: Add initial version of meson based build system 2022-09-21 22:37:17 -07:00
pgtest pgtest: fix spacing 2023-08-14 14:03:29 -04:00
rcgen meson: Add windows resource files 2022-10-05 09:56:05 -07:00
RELEASE_CHANGES scripts: add Perl script to add links to release notes 2024-09-16 13:26:37 -04:00
testint128.c Update copyright for 2024 2024-01-03 20:49:05 -05:00
testwrap Make TAP todo_start effects the same under Meson and prove_check. 2024-06-27 19:21:04 -07:00
valgrind.supp Record dependencies of a cast on other casts that it requires. 2022-10-17 14:02:05 -04:00
version_stamp.pl Perl scripts: revert 43ce181059 2024-09-15 21:25:24 -04:00
win32tzlist.pl Perl scripts: revert 43ce181059 2024-09-15 21:25:24 -04:00