]> granicus.if.org Git - postgresql/commit
Get rid of explicit argument-count markings in tab-complete.c.
authorTom Lane <tgl@sss.pgh.pa.us>
Sat, 22 Sep 2018 00:50:18 +0000 (20:50 -0400)
committerTom Lane <tgl@sss.pgh.pa.us>
Sat, 22 Sep 2018 00:50:41 +0000 (20:50 -0400)
commit4f3b38fe2bde72d59b7eab593ff72e0cebd9ecc6
tree165c7c100f1a96f62c49bf72ba5e1d9670b5f329
parent1f7fc7670c7e0051b47bb4a4d6b41ff9e8af53fa
Get rid of explicit argument-count markings in tab-complete.c.

This replaces the "TailMatchesN" macros with just "TailMatches",
and likewise "HeadMatchesN" becomes "HeadMatches" and "MatchesN"
becomes "Matches".  The various COMPLETE_WITH_LISTn macros are
reduced to COMPLETE_WITH, and the single-item COMPLETE_WITH_CONST
also gets folded into that.  This eliminates a lot of minor
annoyance in writing tab-completion rules.  Usefully, the compiled
code also gets a bit smaller (10% or so, on my machine).

The implementation depends on variadic macros, so we couldn't have
done this before we required C99.

Andres Freund and Thomas Munro; some cosmetic cleanup by me.

Discussion: https://postgr.es/m/d8jo9djvm7h.fsf@dalvik.ping.uio.no
src/bin/psql/tab-complete.c
src/include/c.h