postgresql/src/include/nodes
Robert Haas c65bc2e1d1 Make it possible for loadable modules to add EXPLAIN options.
Modules can use RegisterExtensionExplainOption to register new
EXPLAIN options, and GetExplainExtensionId, GetExplainExtensionState,
and SetExplainExtensionState to store related state inside the
ExplainState object.

Since this substantially increases the amount of code that needs
to handle ExplainState-related tasks, move a few bits of existing
code to a new file explain_state.c and add the rest of this
infrastructure there.

See the comments at the top of explain_state.c for further
explanation of how this mechanism works.

This does not yet provide a way for such such options to do anything
useful. The intention is that we'll add hooks for that purpose in a
separate commit.

Discussion: http://postgr.es/m/CA+TgmoYSzg58hPuBmei46o8D3SKX+SZoO4K_aGQGwiRzvRApLg@mail.gmail.com
Reviewed-by: Srinath Reddy <srinath2133@gmail.com>
Reviewed-by: Andrei Lepikhov <lepihov@gmail.com>
Reviewed-by: Tom Lane <tgl@sss.pgh.pa.us>
Reviewed-by: Sami Imseih <samimseih@gmail.com>
2025-03-18 08:41:12 -04:00
..
.gitignore Automatically generate node support functions 2022-07-09 08:53:59 +02:00
bitmapset.h Update copyright for 2025 2025-01-01 11:21:55 -05:00
execnodes.h BitmapHeapScan uses the read stream API 2025-03-15 10:34:42 -04:00
extensible.h Make it possible for loadable modules to add EXPLAIN options. 2025-03-18 08:41:12 -04:00
lockoptions.h Update copyright for 2025 2025-01-01 11:21:55 -05:00
makefuncs.h Update copyright for 2025 2025-01-01 11:21:55 -05:00
memnodes.h Update copyright for 2025 2025-01-01 11:21:55 -05:00
meson.build Move CompareType to separate header file 2025-02-02 08:11:57 +01:00
miscnodes.h Update copyright for 2025 2025-01-01 11:21:55 -05:00
multibitmapset.h Update copyright for 2025 2025-01-01 11:21:55 -05:00
nodeFuncs.h Update copyright for 2025 2025-01-01 11:21:55 -05:00
nodes.h Update copyright for 2025 2025-01-01 11:21:55 -05:00
params.h Update copyright for 2025 2025-01-01 11:21:55 -05:00
parsenodes.h Add ALTER TABLE ... ALTER CONSTRAINT ... SET [NO] INHERIT 2025-03-05 13:50:22 +01:00
pathnodes.h Implement Self-Join Elimination 2025-02-17 12:44:12 +02:00
pg_list.h Swap order of extern/static and pg_nodiscard 2025-03-14 07:18:07 +01:00
plannodes.h Improve EXPLAIN's display of window functions. 2025-03-11 11:19:54 -04:00
primnodes.h Expand virtual generated columns in the planner 2025-02-25 16:10:25 +09:00
print.h Update copyright for 2025 2025-01-01 11:21:55 -05:00
queryjumble.h Update copyright for 2025 2025-01-01 11:21:55 -05:00
readfuncs.h Update copyright for 2025 2025-01-01 11:21:55 -05:00
replnodes.h Update copyright for 2025 2025-01-01 11:21:55 -05:00
subscripting.h Update copyright for 2025 2025-01-01 11:21:55 -05:00
supportnodes.h Allow extension functions to participate in in-place updates. 2025-02-11 12:49:34 -05:00
tidbitmap.h Separate TBM[Shared|Private]Iterator and TBMIterateResult 2025-03-15 10:11:19 -04:00
value.h Update copyright for 2025 2025-01-01 11:21:55 -05:00