Re: \if, \elseif, \else, \endif (was Re: PSQL commands: \quit_if, \quit_unless)
Corey Huinker <corey.huinker@gmail.com>
From: Corey Huinker <corey.huinker@gmail.com>
To: Fabien COELHO <coelho@cri.ensmp.fr>
Cc: Greg Stark <stark@mit.edu>, Erik Rijkers <er@xs4all.nl>,
Tom Lane <tgl@sss.pgh.pa.us>, Robert Haas <robertmhaas@gmail.com>, Daniel Verite <daniel@manitou-mail.org>, Jim Nasby <Jim.Nasby@bluetreble.com>,
PostgreSQL <pgsql-hackers@postgresql.org>, pgsql-hackers-owner@postgresql.org
Date: 2017-02-13T07:55:54Z
Lists: pgsql-hackers
Attachments
- 0001.if_endif.v12.diff (text/plain) patch v12
> > Maybe this can be a discussed in a follow-up patch and Corey should > proceed to finalize the if patch? In the event that we can leave prompting to a later patch, here are the v12 highlights: - created conditional.h and conditional.c which contain the functions with stack-ish push/pop/peek/poke names - now all non-test, non-doc changes are in src/bin/psql - moved conditional stack out of scan_state, stack state maintained by mainloop.c/startup.c, passed to HandleSlashCommands - documentation encourages the user to employ ON_ERROR_STOP when using conditionals
Commits
-
Support \if ... \elif ... \else ... \endif in psql scripting.
- e984ef5861df 10.0 landed
-
Add a "void *" passthrough pointer for psqlscan.l's callback functions.
- 895e36bb3f36 10.0 landed