pg_query 2.2.0 → 6.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (895) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +86 -0
  3. data/README.md +57 -31
  4. data/Rakefile +5 -6
  5. data/ext/pg_query/ext_symbols_freebsd.sym +1 -0
  6. data/ext/pg_query/ext_symbols_freebsd_with_ruby_abi_version.sym +2 -0
  7. data/ext/pg_query/ext_symbols_openbsd.sym +1 -0
  8. data/ext/pg_query/ext_symbols_openbsd_with_ruby_abi_version.sym +2 -0
  9. data/ext/pg_query/ext_symbols_with_ruby_abi_version.sym +2 -0
  10. data/ext/pg_query/extconf.rb +33 -9
  11. data/ext/pg_query/include/pg_query.h +30 -4
  12. data/ext/pg_query/include/pg_query_enum_defs.c +839 -290
  13. data/ext/pg_query/include/pg_query_fingerprint_conds.c +638 -481
  14. data/ext/pg_query/include/pg_query_fingerprint_defs.c +6786 -4193
  15. data/ext/pg_query/include/pg_query_outfuncs_conds.c +450 -330
  16. data/ext/pg_query/include/pg_query_outfuncs_defs.c +1489 -1044
  17. data/ext/pg_query/include/pg_query_readfuncs_conds.c +157 -118
  18. data/ext/pg_query/include/pg_query_readfuncs_defs.c +1933 -1410
  19. data/ext/pg_query/include/postgres/access/amapi.h +303 -0
  20. data/ext/pg_query/include/postgres/access/attmap.h +54 -0
  21. data/ext/pg_query/include/postgres/access/attnum.h +64 -0
  22. data/ext/pg_query/include/postgres/access/brin_internal.h +116 -0
  23. data/ext/pg_query/include/postgres/access/brin_tuple.h +112 -0
  24. data/ext/pg_query/include/postgres/access/clog.h +62 -0
  25. data/ext/pg_query/include/postgres/access/commit_ts.h +73 -0
  26. data/ext/pg_query/include/postgres/access/detoast.h +82 -0
  27. data/ext/pg_query/include/postgres/access/genam.h +246 -0
  28. data/ext/pg_query/include/postgres/access/gin.h +91 -0
  29. data/ext/pg_query/include/postgres/access/htup.h +89 -0
  30. data/ext/pg_query/include/postgres/access/htup_details.h +811 -0
  31. data/ext/pg_query/include/postgres/access/itup.h +170 -0
  32. data/ext/pg_query/include/postgres/access/parallel.h +81 -0
  33. data/ext/pg_query/include/postgres/access/printtup.h +35 -0
  34. data/ext/pg_query/include/postgres/access/relation.h +28 -0
  35. data/ext/pg_query/include/postgres/access/relscan.h +191 -0
  36. data/ext/pg_query/include/postgres/access/rmgr.h +62 -0
  37. data/ext/pg_query/include/postgres/access/rmgrlist.h +49 -0
  38. data/ext/pg_query/include/postgres/access/sdir.h +67 -0
  39. data/ext/pg_query/include/postgres/access/skey.h +151 -0
  40. data/ext/pg_query/include/postgres/access/slru.h +218 -0
  41. data/ext/pg_query/include/postgres/access/stratnum.h +85 -0
  42. data/ext/pg_query/include/postgres/access/sysattr.h +29 -0
  43. data/ext/pg_query/include/postgres/access/table.h +28 -0
  44. data/ext/pg_query/include/postgres/access/tableam.h +2110 -0
  45. data/ext/pg_query/include/postgres/access/tidstore.h +50 -0
  46. data/ext/pg_query/include/postgres/access/toast_compression.h +73 -0
  47. data/ext/pg_query/include/postgres/access/transam.h +418 -0
  48. data/ext/pg_query/include/postgres/access/tsmapi.h +82 -0
  49. data/ext/pg_query/include/postgres/access/tupconvert.h +54 -0
  50. data/ext/pg_query/include/postgres/access/tupdesc.h +154 -0
  51. data/ext/pg_query/include/postgres/access/tupmacs.h +207 -0
  52. data/ext/pg_query/include/postgres/access/twophase.h +65 -0
  53. data/ext/pg_query/include/postgres/access/xact.h +530 -0
  54. data/ext/pg_query/include/postgres/access/xlog.h +310 -0
  55. data/ext/pg_query/include/postgres/access/xlog_internal.h +405 -0
  56. data/ext/pg_query/include/postgres/access/xlogbackup.h +43 -0
  57. data/ext/pg_query/include/postgres/access/xlogdefs.h +82 -0
  58. data/ext/pg_query/include/postgres/access/xlogprefetcher.h +55 -0
  59. data/ext/pg_query/include/postgres/access/xlogreader.h +444 -0
  60. data/ext/pg_query/include/postgres/access/xlogrecord.h +248 -0
  61. data/ext/pg_query/include/postgres/access/xlogrecovery.h +158 -0
  62. data/ext/pg_query/include/postgres/archive/archive_module.h +67 -0
  63. data/ext/pg_query/include/postgres/c.h +1374 -0
  64. data/ext/pg_query/include/postgres/catalog/catalog.h +47 -0
  65. data/ext/pg_query/include/postgres/catalog/catversion.h +62 -0
  66. data/ext/pg_query/include/postgres/catalog/dependency.h +228 -0
  67. data/ext/pg_query/include/postgres/catalog/genbki.h +149 -0
  68. data/ext/pg_query/include/postgres/catalog/index.h +218 -0
  69. data/ext/pg_query/include/postgres/catalog/indexing.h +54 -0
  70. data/ext/pg_query/include/postgres/catalog/namespace.h +189 -0
  71. data/ext/pg_query/include/postgres/catalog/objectaccess.h +267 -0
  72. data/ext/pg_query/include/postgres/catalog/objectaddress.h +93 -0
  73. data/ext/pg_query/include/postgres/catalog/pg_aggregate.h +182 -0
  74. data/ext/pg_query/include/postgres/catalog/pg_aggregate_d.h +78 -0
  75. data/ext/pg_query/include/postgres/catalog/pg_am.h +66 -0
  76. data/ext/pg_query/include/postgres/catalog/pg_am_d.h +47 -0
  77. data/ext/pg_query/include/postgres/catalog/pg_attribute.h +240 -0
  78. data/ext/pg_query/include/postgres/catalog/pg_attribute_d.h +62 -0
  79. data/ext/pg_query/include/postgres/catalog/pg_authid.h +66 -0
  80. data/ext/pg_query/include/postgres/catalog/pg_authid_d.h +60 -0
  81. data/ext/pg_query/include/postgres/catalog/pg_class.h +235 -0
  82. data/ext/pg_query/include/postgres/catalog/pg_class_d.h +134 -0
  83. data/ext/pg_query/include/postgres/catalog/pg_collation.h +106 -0
  84. data/ext/pg_query/include/postgres/catalog/pg_collation_d.h +66 -0
  85. data/ext/pg_query/include/postgres/catalog/pg_constraint.h +278 -0
  86. data/ext/pg_query/include/postgres/catalog/pg_constraint_d.h +74 -0
  87. data/ext/pg_query/include/postgres/catalog/pg_control.h +260 -0
  88. data/ext/pg_query/include/postgres/catalog/pg_conversion.h +79 -0
  89. data/ext/pg_query/include/postgres/catalog/pg_conversion_d.h +38 -0
  90. data/ext/pg_query/include/postgres/catalog/pg_database.h +129 -0
  91. data/ext/pg_query/include/postgres/catalog/pg_database_d.h +53 -0
  92. data/ext/pg_query/include/postgres/catalog/pg_depend.h +77 -0
  93. data/ext/pg_query/include/postgres/catalog/pg_depend_d.h +36 -0
  94. data/ext/pg_query/include/postgres/catalog/pg_event_trigger.h +60 -0
  95. data/ext/pg_query/include/postgres/catalog/pg_event_trigger_d.h +36 -0
  96. data/ext/pg_query/include/postgres/catalog/pg_index.h +92 -0
  97. data/ext/pg_query/include/postgres/catalog/pg_index_d.h +59 -0
  98. data/ext/pg_query/include/postgres/catalog/pg_language.h +75 -0
  99. data/ext/pg_query/include/postgres/catalog/pg_language_d.h +41 -0
  100. data/ext/pg_query/include/postgres/catalog/pg_namespace.h +67 -0
  101. data/ext/pg_query/include/postgres/catalog/pg_namespace_d.h +36 -0
  102. data/ext/pg_query/include/postgres/catalog/pg_opclass.h +91 -0
  103. data/ext/pg_query/include/postgres/catalog/pg_opclass_d.h +51 -0
  104. data/ext/pg_query/include/postgres/catalog/pg_operator.h +124 -0
  105. data/ext/pg_query/include/postgres/catalog/pg_operator_d.h +142 -0
  106. data/ext/pg_query/include/postgres/catalog/pg_opfamily.h +67 -0
  107. data/ext/pg_query/include/postgres/catalog/pg_opfamily_d.h +51 -0
  108. data/ext/pg_query/include/postgres/catalog/pg_partitioned_table.h +76 -0
  109. data/ext/pg_query/include/postgres/catalog/pg_partitioned_table_d.h +36 -0
  110. data/ext/pg_query/include/postgres/catalog/pg_proc.h +223 -0
  111. data/ext/pg_query/include/postgres/catalog/pg_proc_d.h +101 -0
  112. data/ext/pg_query/include/postgres/catalog/pg_publication.h +161 -0
  113. data/ext/pg_query/include/postgres/catalog/pg_publication_d.h +38 -0
  114. data/ext/pg_query/include/postgres/catalog/pg_replication_origin.h +65 -0
  115. data/ext/pg_query/include/postgres/catalog/pg_replication_origin_d.h +33 -0
  116. data/ext/pg_query/include/postgres/catalog/pg_statistic.h +288 -0
  117. data/ext/pg_query/include/postgres/catalog/pg_statistic_d.h +199 -0
  118. data/ext/pg_query/include/postgres/catalog/pg_statistic_ext.h +91 -0
  119. data/ext/pg_query/include/postgres/catalog/pg_statistic_ext_d.h +45 -0
  120. data/ext/pg_query/include/postgres/catalog/pg_transform.h +51 -0
  121. data/ext/pg_query/include/postgres/catalog/pg_transform_d.h +34 -0
  122. data/ext/pg_query/include/postgres/catalog/pg_trigger.h +153 -0
  123. data/ext/pg_query/include/postgres/catalog/pg_trigger_d.h +109 -0
  124. data/ext/pg_query/include/postgres/catalog/pg_ts_config.h +56 -0
  125. data/ext/pg_query/include/postgres/catalog/pg_ts_config_d.h +34 -0
  126. data/ext/pg_query/include/postgres/catalog/pg_ts_dict.h +62 -0
  127. data/ext/pg_query/include/postgres/catalog/pg_ts_dict_d.h +35 -0
  128. data/ext/pg_query/include/postgres/catalog/pg_ts_parser.h +63 -0
  129. data/ext/pg_query/include/postgres/catalog/pg_ts_parser_d.h +37 -0
  130. data/ext/pg_query/include/postgres/catalog/pg_ts_template.h +54 -0
  131. data/ext/pg_query/include/postgres/catalog/pg_ts_template_d.h +34 -0
  132. data/ext/pg_query/include/postgres/catalog/pg_type.h +407 -0
  133. data/ext/pg_query/include/postgres/catalog/pg_type_d.h +324 -0
  134. data/ext/pg_query/include/postgres/catalog/storage.h +50 -0
  135. data/ext/pg_query/include/postgres/catalog/syscache_ids.h +104 -0
  136. data/ext/pg_query/include/postgres/commands/async.h +49 -0
  137. data/ext/pg_query/include/postgres/commands/dbcommands.h +37 -0
  138. data/ext/pg_query/include/postgres/commands/defrem.h +161 -0
  139. data/ext/pg_query/include/postgres/commands/event_trigger.h +97 -0
  140. data/ext/pg_query/include/postgres/commands/explain.h +145 -0
  141. data/ext/pg_query/include/postgres/commands/prepare.h +61 -0
  142. data/ext/pg_query/include/postgres/commands/tablespace.h +69 -0
  143. data/ext/pg_query/include/postgres/commands/trigger.h +288 -0
  144. data/ext/pg_query/include/postgres/commands/user.h +43 -0
  145. data/ext/pg_query/include/postgres/commands/vacuum.h +388 -0
  146. data/ext/pg_query/include/postgres/common/cryptohash.h +39 -0
  147. data/ext/pg_query/include/postgres/common/file_perm.h +56 -0
  148. data/ext/pg_query/include/postgres/common/file_utils.h +65 -0
  149. data/ext/pg_query/include/postgres/common/hashfn.h +119 -0
  150. data/ext/pg_query/include/postgres/common/hashfn_unstable.h +407 -0
  151. data/ext/pg_query/include/postgres/common/int.h +512 -0
  152. data/ext/pg_query/include/postgres/common/keywords.h +29 -0
  153. data/ext/pg_query/include/postgres/common/kwlookup.h +44 -0
  154. data/ext/pg_query/include/postgres/common/pg_prng.h +62 -0
  155. data/ext/pg_query/include/postgres/common/relpath.h +97 -0
  156. data/ext/pg_query/include/postgres/common/scram-common.h +70 -0
  157. data/ext/pg_query/include/postgres/common/sha2.h +32 -0
  158. data/ext/pg_query/include/postgres/common/string.h +44 -0
  159. data/ext/pg_query/include/postgres/common/unicode_east_asian_fw_table.h +124 -0
  160. data/ext/pg_query/include/postgres/common/unicode_nonspacing_table.h +326 -0
  161. data/ext/pg_query/include/postgres/copyfuncs.funcs.c +5261 -0
  162. data/ext/pg_query/include/postgres/copyfuncs.switch.c +989 -0
  163. data/ext/pg_query/include/postgres/datatype/timestamp.h +269 -0
  164. data/ext/pg_query/include/postgres/equalfuncs.funcs.c +3310 -0
  165. data/ext/pg_query/include/postgres/equalfuncs.switch.c +836 -0
  166. data/ext/pg_query/include/postgres/executor/execdesc.h +70 -0
  167. data/ext/pg_query/include/postgres/executor/executor.h +681 -0
  168. data/ext/pg_query/include/postgres/executor/functions.h +56 -0
  169. data/ext/pg_query/include/postgres/executor/instrument.h +120 -0
  170. data/ext/pg_query/include/postgres/executor/spi.h +207 -0
  171. data/ext/pg_query/include/postgres/executor/tablefunc.h +67 -0
  172. data/ext/pg_query/include/postgres/executor/tuptable.h +523 -0
  173. data/ext/pg_query/include/postgres/fmgr.h +800 -0
  174. data/ext/pg_query/include/postgres/foreign/fdwapi.h +294 -0
  175. data/ext/pg_query/include/postgres/funcapi.h +360 -0
  176. data/ext/pg_query/include/postgres/gram.h +1168 -0
  177. data/ext/pg_query/include/postgres/gramparse.h +75 -0
  178. data/ext/pg_query/include/postgres/jit/jit.h +106 -0
  179. data/ext/pg_query/include/postgres/kwlist_d.h +1164 -0
  180. data/ext/pg_query/include/postgres/lib/dshash.h +130 -0
  181. data/ext/pg_query/include/postgres/lib/ilist.h +1159 -0
  182. data/ext/pg_query/include/postgres/lib/pairingheap.h +102 -0
  183. data/ext/pg_query/include/postgres/lib/simplehash.h +1206 -0
  184. data/ext/pg_query/include/postgres/lib/sort_template.h +445 -0
  185. data/ext/pg_query/include/postgres/lib/stringinfo.h +243 -0
  186. data/ext/pg_query/include/postgres/libpq/auth.h +37 -0
  187. data/ext/pg_query/include/postgres/libpq/crypt.h +47 -0
  188. data/ext/pg_query/include/postgres/libpq/hba.h +186 -0
  189. data/ext/pg_query/include/postgres/libpq/libpq-be.h +361 -0
  190. data/ext/pg_query/include/postgres/libpq/libpq.h +143 -0
  191. data/ext/pg_query/include/postgres/libpq/pqcomm.h +169 -0
  192. data/ext/pg_query/include/postgres/libpq/pqformat.h +209 -0
  193. data/ext/pg_query/include/postgres/libpq/pqsignal.h +54 -0
  194. data/ext/pg_query/include/postgres/libpq/protocol.h +89 -0
  195. data/ext/pg_query/include/postgres/libpq/sasl.h +136 -0
  196. data/ext/pg_query/include/postgres/libpq/scram.h +37 -0
  197. data/ext/pg_query/include/postgres/mb/pg_wchar.h +793 -0
  198. data/ext/pg_query/include/postgres/mb/stringinfo_mb.h +24 -0
  199. data/ext/pg_query/include/postgres/miscadmin.h +527 -0
  200. data/ext/pg_query/include/postgres/nodes/bitmapset.h +140 -0
  201. data/ext/pg_query/include/postgres/nodes/execnodes.h +2855 -0
  202. data/ext/pg_query/include/postgres/nodes/extensible.h +164 -0
  203. data/ext/pg_query/include/postgres/nodes/lockoptions.h +61 -0
  204. data/ext/pg_query/include/postgres/nodes/makefuncs.h +127 -0
  205. data/ext/pg_query/include/postgres/nodes/memnodes.h +152 -0
  206. data/ext/pg_query/include/postgres/nodes/miscnodes.h +56 -0
  207. data/ext/pg_query/include/postgres/nodes/nodeFuncs.h +222 -0
  208. data/ext/pg_query/include/postgres/nodes/nodes.h +435 -0
  209. data/ext/pg_query/include/postgres/nodes/nodetags.h +491 -0
  210. data/ext/pg_query/include/postgres/nodes/params.h +170 -0
  211. data/ext/pg_query/include/postgres/nodes/parsenodes.h +4233 -0
  212. data/ext/pg_query/include/postgres/nodes/pathnodes.h +3438 -0
  213. data/ext/pg_query/include/postgres/nodes/pg_list.h +686 -0
  214. data/ext/pg_query/include/postgres/nodes/plannodes.h +1593 -0
  215. data/ext/pg_query/include/postgres/nodes/primnodes.h +2339 -0
  216. data/ext/pg_query/include/postgres/nodes/print.h +34 -0
  217. data/ext/pg_query/include/postgres/nodes/queryjumble.h +86 -0
  218. data/ext/pg_query/include/postgres/nodes/replnodes.h +132 -0
  219. data/ext/pg_query/include/postgres/nodes/supportnodes.h +346 -0
  220. data/ext/pg_query/include/postgres/nodes/tidbitmap.h +75 -0
  221. data/ext/pg_query/include/postgres/nodes/value.h +90 -0
  222. data/ext/pg_query/include/postgres/optimizer/cost.h +216 -0
  223. data/ext/pg_query/include/postgres/optimizer/geqo.h +90 -0
  224. data/ext/pg_query/include/postgres/optimizer/geqo_gene.h +45 -0
  225. data/ext/pg_query/include/postgres/optimizer/optimizer.h +205 -0
  226. data/ext/pg_query/include/postgres/optimizer/paths.h +271 -0
  227. data/ext/pg_query/include/postgres/optimizer/planmain.h +123 -0
  228. data/ext/pg_query/include/postgres/parser/analyze.h +66 -0
  229. data/ext/pg_query/include/postgres/parser/kwlist.h +518 -0
  230. data/ext/pg_query/include/postgres/parser/parse_agg.h +65 -0
  231. data/ext/pg_query/include/postgres/parser/parse_coerce.h +105 -0
  232. data/ext/pg_query/include/postgres/parser/parse_expr.h +25 -0
  233. data/ext/pg_query/include/postgres/parser/parse_func.h +74 -0
  234. data/ext/pg_query/include/postgres/parser/parse_node.h +358 -0
  235. data/ext/pg_query/include/postgres/parser/parse_oper.h +68 -0
  236. data/ext/pg_query/include/postgres/parser/parse_relation.h +129 -0
  237. data/ext/pg_query/include/postgres/parser/parse_type.h +61 -0
  238. data/ext/pg_query/include/postgres/parser/parser.h +68 -0
  239. data/ext/pg_query/include/postgres/parser/parsetree.h +61 -0
  240. data/ext/pg_query/include/postgres/parser/scanner.h +152 -0
  241. data/ext/pg_query/include/postgres/parser/scansup.h +27 -0
  242. data/ext/pg_query/include/postgres/partitioning/partdefs.h +26 -0
  243. data/ext/pg_query/include/postgres/pg_config.h +985 -0
  244. data/ext/pg_query/include/postgres/pg_config_manual.h +385 -0
  245. data/ext/pg_query/include/postgres/pg_config_os.h +8 -0
  246. data/ext/pg_query/include/postgres/pg_getopt.h +56 -0
  247. data/ext/pg_query/include/postgres/pg_trace.h +17 -0
  248. data/ext/pg_query/include/postgres/pgstat.h +780 -0
  249. data/ext/pg_query/include/postgres/pgtime.h +94 -0
  250. data/ext/pg_query/include/postgres/pl_gram.h +385 -0
  251. data/ext/pg_query/include/postgres/pl_reserved_kwlist.h +52 -0
  252. data/ext/pg_query/include/postgres/pl_reserved_kwlist_d.h +114 -0
  253. data/ext/pg_query/include/postgres/pl_unreserved_kwlist.h +112 -0
  254. data/ext/pg_query/include/postgres/pl_unreserved_kwlist_d.h +246 -0
  255. data/ext/pg_query/include/postgres/plerrcodes.h +998 -0
  256. data/ext/pg_query/include/postgres/plpgsql.h +1342 -0
  257. data/ext/pg_query/include/postgres/port/atomics/arch-arm.h +32 -0
  258. data/ext/pg_query/include/postgres/port/atomics/arch-hppa.h +17 -0
  259. data/ext/pg_query/include/postgres/port/atomics/arch-ppc.h +256 -0
  260. data/ext/pg_query/include/postgres/port/atomics/arch-x86.h +254 -0
  261. data/ext/pg_query/include/postgres/port/atomics/fallback.h +170 -0
  262. data/ext/pg_query/include/postgres/port/atomics/generic-gcc.h +323 -0
  263. data/ext/pg_query/include/postgres/port/atomics/generic-msvc.h +119 -0
  264. data/ext/pg_query/include/postgres/port/atomics/generic-sunpro.h +121 -0
  265. data/ext/pg_query/include/postgres/port/atomics/generic.h +437 -0
  266. data/ext/pg_query/include/postgres/port/atomics.h +606 -0
  267. data/ext/pg_query/include/postgres/port/pg_bitutils.h +421 -0
  268. data/ext/pg_query/include/postgres/port/pg_bswap.h +161 -0
  269. data/ext/pg_query/include/postgres/port/pg_crc32c.h +110 -0
  270. data/ext/pg_query/include/postgres/port/pg_iovec.h +117 -0
  271. data/ext/pg_query/include/postgres/port/simd.h +422 -0
  272. data/ext/pg_query/include/postgres/port/win32/arpa/inet.h +3 -0
  273. data/ext/pg_query/include/postgres/port/win32/dlfcn.h +1 -0
  274. data/ext/pg_query/include/postgres/port/win32/grp.h +1 -0
  275. data/ext/pg_query/include/postgres/port/win32/netdb.h +7 -0
  276. data/ext/pg_query/include/postgres/port/win32/netinet/in.h +3 -0
  277. data/ext/pg_query/include/postgres/port/win32/netinet/tcp.h +7 -0
  278. data/ext/pg_query/include/postgres/port/win32/pwd.h +3 -0
  279. data/ext/pg_query/include/postgres/port/win32/sys/resource.h +20 -0
  280. data/ext/pg_query/include/postgres/port/win32/sys/select.h +3 -0
  281. data/ext/pg_query/include/postgres/port/win32/sys/socket.h +34 -0
  282. data/ext/pg_query/include/postgres/port/win32/sys/un.h +17 -0
  283. data/ext/pg_query/include/postgres/port/win32/sys/wait.h +3 -0
  284. data/ext/pg_query/include/postgres/port/win32.h +59 -0
  285. data/ext/pg_query/include/postgres/port/win32_msvc/dirent.h +34 -0
  286. data/ext/pg_query/include/postgres/port/win32_msvc/sys/file.h +1 -0
  287. data/ext/pg_query/include/postgres/port/win32_msvc/sys/param.h +1 -0
  288. data/ext/pg_query/include/postgres/port/win32_msvc/sys/time.h +1 -0
  289. data/ext/pg_query/include/postgres/port/win32_msvc/unistd.h +9 -0
  290. data/ext/pg_query/include/postgres/port/win32_msvc/utime.h +3 -0
  291. data/ext/pg_query/include/postgres/port/win32_port.h +582 -0
  292. data/ext/pg_query/include/postgres/port.h +555 -0
  293. data/ext/pg_query/include/postgres/portability/instr_time.h +197 -0
  294. data/ext/pg_query/include/postgres/postgres.h +579 -0
  295. data/ext/pg_query/include/postgres/postgres_ext.h +73 -0
  296. data/ext/pg_query/include/postgres/postmaster/autovacuum.h +69 -0
  297. data/ext/pg_query/include/postgres/postmaster/bgworker.h +164 -0
  298. data/ext/pg_query/include/postgres/postmaster/bgworker_internals.h +60 -0
  299. data/ext/pg_query/include/postgres/postmaster/bgwriter.h +45 -0
  300. data/ext/pg_query/include/postgres/postmaster/interrupt.h +32 -0
  301. data/ext/pg_query/include/postgres/postmaster/pgarch.h +36 -0
  302. data/ext/pg_query/include/postgres/postmaster/postmaster.h +101 -0
  303. data/ext/pg_query/include/postgres/postmaster/startup.h +41 -0
  304. data/ext/pg_query/include/postgres/postmaster/syslogger.h +101 -0
  305. data/ext/pg_query/include/postgres/postmaster/walsummarizer.h +35 -0
  306. data/ext/pg_query/include/postgres/postmaster/walwriter.h +23 -0
  307. data/ext/pg_query/include/postgres/regex/regex.h +272 -0
  308. data/ext/pg_query/include/postgres/replication/logicallauncher.h +34 -0
  309. data/ext/pg_query/include/postgres/replication/logicalproto.h +274 -0
  310. data/ext/pg_query/include/postgres/replication/logicalworker.h +33 -0
  311. data/ext/pg_query/include/postgres/replication/origin.h +73 -0
  312. data/ext/pg_query/include/postgres/replication/reorderbuffer.h +734 -0
  313. data/ext/pg_query/include/postgres/replication/slot.h +289 -0
  314. data/ext/pg_query/include/postgres/replication/slotsync.h +38 -0
  315. data/ext/pg_query/include/postgres/replication/syncrep.h +109 -0
  316. data/ext/pg_query/include/postgres/replication/walreceiver.h +504 -0
  317. data/ext/pg_query/include/postgres/replication/walsender.h +76 -0
  318. data/ext/pg_query/include/postgres/rewrite/prs2lock.h +46 -0
  319. data/ext/pg_query/include/postgres/rewrite/rewriteHandler.h +41 -0
  320. data/ext/pg_query/include/postgres/rewrite/rewriteManip.h +96 -0
  321. data/ext/pg_query/include/postgres/rewrite/rewriteSupport.h +26 -0
  322. data/ext/pg_query/include/postgres/storage/block.h +108 -0
  323. data/ext/pg_query/include/postgres/storage/buf.h +46 -0
  324. data/ext/pg_query/include/postgres/storage/bufmgr.h +411 -0
  325. data/ext/pg_query/include/postgres/storage/bufpage.h +510 -0
  326. data/ext/pg_query/include/postgres/storage/condition_variable.h +73 -0
  327. data/ext/pg_query/include/postgres/storage/dsm.h +61 -0
  328. data/ext/pg_query/include/postgres/storage/dsm_impl.h +79 -0
  329. data/ext/pg_query/include/postgres/storage/fd.h +219 -0
  330. data/ext/pg_query/include/postgres/storage/fileset.h +40 -0
  331. data/ext/pg_query/include/postgres/storage/ipc.h +87 -0
  332. data/ext/pg_query/include/postgres/storage/item.h +19 -0
  333. data/ext/pg_query/include/postgres/storage/itemid.h +184 -0
  334. data/ext/pg_query/include/postgres/storage/itemptr.h +245 -0
  335. data/ext/pg_query/include/postgres/storage/large_object.h +100 -0
  336. data/ext/pg_query/include/postgres/storage/latch.h +196 -0
  337. data/ext/pg_query/include/postgres/storage/lmgr.h +126 -0
  338. data/ext/pg_query/include/postgres/storage/lock.h +624 -0
  339. data/ext/pg_query/include/postgres/storage/lockdefs.h +61 -0
  340. data/ext/pg_query/include/postgres/storage/lwlock.h +228 -0
  341. data/ext/pg_query/include/postgres/storage/lwlocknames.h +47 -0
  342. data/ext/pg_query/include/postgres/storage/off.h +57 -0
  343. data/ext/pg_query/include/postgres/storage/pg_sema.h +61 -0
  344. data/ext/pg_query/include/postgres/storage/pg_shmem.h +93 -0
  345. data/ext/pg_query/include/postgres/storage/pmsignal.h +105 -0
  346. data/ext/pg_query/include/postgres/storage/predicate.h +83 -0
  347. data/ext/pg_query/include/postgres/storage/proc.h +488 -0
  348. data/ext/pg_query/include/postgres/storage/procarray.h +103 -0
  349. data/ext/pg_query/include/postgres/storage/proclist_types.h +53 -0
  350. data/ext/pg_query/include/postgres/storage/procnumber.h +43 -0
  351. data/ext/pg_query/include/postgres/storage/procsignal.h +75 -0
  352. data/ext/pg_query/include/postgres/storage/read_stream.h +65 -0
  353. data/ext/pg_query/include/postgres/storage/relfilelocator.h +100 -0
  354. data/ext/pg_query/include/postgres/storage/s_lock.h +847 -0
  355. data/ext/pg_query/include/postgres/storage/sharedfileset.h +37 -0
  356. data/ext/pg_query/include/postgres/storage/shm_mq.h +86 -0
  357. data/ext/pg_query/include/postgres/storage/shm_toc.h +58 -0
  358. data/ext/pg_query/include/postgres/storage/shmem.h +59 -0
  359. data/ext/pg_query/include/postgres/storage/sinval.h +153 -0
  360. data/ext/pg_query/include/postgres/storage/smgr.h +130 -0
  361. data/ext/pg_query/include/postgres/storage/spin.h +77 -0
  362. data/ext/pg_query/include/postgres/storage/standby.h +109 -0
  363. data/ext/pg_query/include/postgres/storage/standbydefs.h +74 -0
  364. data/ext/pg_query/include/postgres/storage/sync.h +66 -0
  365. data/ext/pg_query/include/postgres/tcop/cmdtag.h +62 -0
  366. data/ext/pg_query/include/postgres/tcop/cmdtaglist.h +219 -0
  367. data/ext/pg_query/include/postgres/tcop/deparse_utility.h +108 -0
  368. data/ext/pg_query/include/postgres/tcop/dest.h +148 -0
  369. data/ext/pg_query/include/postgres/tcop/fastpath.h +20 -0
  370. data/ext/pg_query/include/postgres/tcop/pquery.h +51 -0
  371. data/ext/pg_query/include/postgres/tcop/tcopprot.h +98 -0
  372. data/ext/pg_query/include/postgres/tcop/utility.h +112 -0
  373. data/ext/pg_query/include/postgres/tsearch/ts_cache.h +96 -0
  374. data/ext/pg_query/include/postgres/utils/acl.h +290 -0
  375. data/ext/pg_query/include/postgres/utils/aclchk_internal.h +45 -0
  376. data/ext/pg_query/include/postgres/utils/array.h +481 -0
  377. data/ext/pg_query/include/postgres/utils/ascii.h +84 -0
  378. data/ext/pg_query/include/postgres/utils/backend_progress.h +46 -0
  379. data/ext/pg_query/include/postgres/utils/backend_status.h +340 -0
  380. data/ext/pg_query/include/postgres/utils/builtins.h +139 -0
  381. data/ext/pg_query/include/postgres/utils/bytea.h +28 -0
  382. data/ext/pg_query/include/postgres/utils/catcache.h +231 -0
  383. data/ext/pg_query/include/postgres/utils/date.h +118 -0
  384. data/ext/pg_query/include/postgres/utils/datetime.h +367 -0
  385. data/ext/pg_query/include/postgres/utils/datum.h +76 -0
  386. data/ext/pg_query/include/postgres/utils/dsa.h +166 -0
  387. data/ext/pg_query/include/postgres/utils/elog.h +540 -0
  388. data/ext/pg_query/include/postgres/utils/errcodes.h +352 -0
  389. data/ext/pg_query/include/postgres/utils/expandeddatum.h +170 -0
  390. data/ext/pg_query/include/postgres/utils/expandedrecord.h +241 -0
  391. data/ext/pg_query/include/postgres/utils/float.h +357 -0
  392. data/ext/pg_query/include/postgres/utils/fmgroids.h +3347 -0
  393. data/ext/pg_query/include/postgres/utils/fmgrprotos.h +2904 -0
  394. data/ext/pg_query/include/postgres/utils/fmgrtab.h +49 -0
  395. data/ext/pg_query/include/postgres/utils/guc.h +456 -0
  396. data/ext/pg_query/include/postgres/utils/guc_hooks.h +184 -0
  397. data/ext/pg_query/include/postgres/utils/guc_tables.h +323 -0
  398. data/ext/pg_query/include/postgres/utils/hsearch.h +153 -0
  399. data/ext/pg_query/include/postgres/utils/injection_point.h +44 -0
  400. data/ext/pg_query/include/postgres/utils/inval.h +68 -0
  401. data/ext/pg_query/include/postgres/utils/logtape.h +77 -0
  402. data/ext/pg_query/include/postgres/utils/lsyscache.h +215 -0
  403. data/ext/pg_query/include/postgres/utils/memdebug.h +82 -0
  404. data/ext/pg_query/include/postgres/utils/memutils.h +193 -0
  405. data/ext/pg_query/include/postgres/utils/memutils_internal.h +176 -0
  406. data/ext/pg_query/include/postgres/utils/memutils_memorychunk.h +253 -0
  407. data/ext/pg_query/include/postgres/utils/numeric.h +110 -0
  408. data/ext/pg_query/include/postgres/utils/palloc.h +151 -0
  409. data/ext/pg_query/include/postgres/utils/partcache.h +103 -0
  410. data/ext/pg_query/include/postgres/utils/pg_locale.h +136 -0
  411. data/ext/pg_query/include/postgres/utils/pgstat_internal.h +827 -0
  412. data/ext/pg_query/include/postgres/utils/plancache.h +238 -0
  413. data/ext/pg_query/include/postgres/utils/portal.h +252 -0
  414. data/ext/pg_query/include/postgres/utils/probes.h +114 -0
  415. data/ext/pg_query/include/postgres/utils/ps_status.h +47 -0
  416. data/ext/pg_query/include/postgres/utils/queryenvironment.h +74 -0
  417. data/ext/pg_query/include/postgres/utils/regproc.h +39 -0
  418. data/ext/pg_query/include/postgres/utils/rel.h +711 -0
  419. data/ext/pg_query/include/postgres/utils/relcache.h +155 -0
  420. data/ext/pg_query/include/postgres/utils/reltrigger.h +81 -0
  421. data/ext/pg_query/include/postgres/utils/resowner.h +167 -0
  422. data/ext/pg_query/include/postgres/utils/ruleutils.h +52 -0
  423. data/ext/pg_query/include/postgres/utils/sharedtuplestore.h +61 -0
  424. data/ext/pg_query/include/postgres/utils/snapmgr.h +130 -0
  425. data/ext/pg_query/include/postgres/utils/snapshot.h +219 -0
  426. data/ext/pg_query/include/postgres/utils/sortsupport.h +391 -0
  427. data/ext/pg_query/include/postgres/utils/syscache.h +136 -0
  428. data/ext/pg_query/include/postgres/utils/timeout.h +96 -0
  429. data/ext/pg_query/include/postgres/utils/timestamp.h +147 -0
  430. data/ext/pg_query/include/postgres/utils/tuplesort.h +472 -0
  431. data/ext/pg_query/include/postgres/utils/tuplestore.h +88 -0
  432. data/ext/pg_query/include/postgres/utils/typcache.h +210 -0
  433. data/ext/pg_query/include/postgres/utils/varlena.h +53 -0
  434. data/ext/pg_query/include/postgres/utils/wait_event.h +108 -0
  435. data/ext/pg_query/include/postgres/utils/wait_event_types.h +218 -0
  436. data/ext/pg_query/include/postgres/utils/xml.h +94 -0
  437. data/ext/pg_query/include/postgres/varatt.h +358 -0
  438. data/ext/pg_query/include/protobuf/pg_query.pb-c.h +8077 -6217
  439. data/ext/pg_query/include/protobuf/pg_query.pb.h +132024 -88124
  440. data/ext/pg_query/pg_query.c +10 -1
  441. data/ext/pg_query/pg_query.pb-c.c +24028 -17173
  442. data/ext/pg_query/pg_query_deparse.c +1 -9902
  443. data/ext/pg_query/pg_query_fingerprint.c +42 -18
  444. data/ext/pg_query/pg_query_fingerprint.h +1 -1
  445. data/ext/pg_query/pg_query_internal.h +1 -1
  446. data/ext/pg_query/pg_query_json_plpgsql.c +1 -25
  447. data/ext/pg_query/pg_query_normalize.c +44 -3
  448. data/ext/pg_query/pg_query_outfuncs_json.c +62 -16
  449. data/ext/pg_query/pg_query_outfuncs_protobuf.c +73 -12
  450. data/ext/pg_query/pg_query_parse.c +47 -5
  451. data/ext/pg_query/pg_query_parse_plpgsql.c +19 -18
  452. data/ext/pg_query/pg_query_readfuncs_protobuf.c +45 -10
  453. data/ext/pg_query/pg_query_ruby.c +5 -0
  454. data/ext/pg_query/pg_query_scan.c +4 -3
  455. data/ext/pg_query/pg_query_split.c +6 -5
  456. data/ext/pg_query/postgres_deparse.c +11496 -0
  457. data/ext/pg_query/postgres_deparse.h +9 -0
  458. data/ext/pg_query/src_backend_catalog_namespace.c +262 -71
  459. data/ext/pg_query/src_backend_catalog_pg_proc.c +3 -2
  460. data/ext/pg_query/src_backend_commands_define.c +12 -3
  461. data/ext/pg_query/src_backend_nodes_bitmapset.c +142 -156
  462. data/ext/pg_query/src_backend_nodes_copyfuncs.c +100 -5881
  463. data/ext/pg_query/src_backend_nodes_equalfuncs.c +102 -3831
  464. data/ext/pg_query/src_backend_nodes_extensible.c +6 -29
  465. data/ext/pg_query/src_backend_nodes_list.c +89 -18
  466. data/ext/pg_query/src_backend_nodes_makefuncs.c +138 -4
  467. data/ext/pg_query/src_backend_nodes_nodeFuncs.c +433 -132
  468. data/ext/pg_query/src_backend_nodes_value.c +28 -19
  469. data/ext/pg_query/src_backend_parser_gram.c +45255 -38885
  470. data/ext/pg_query/src_backend_parser_parser.c +53 -8
  471. data/ext/pg_query/src_backend_parser_scan.c +6999 -3438
  472. data/ext/pg_query/src_backend_parser_scansup.c +5 -28
  473. data/ext/pg_query/src_backend_storage_ipc_ipc.c +13 -4
  474. data/ext/pg_query/src_backend_tcop_postgres.c +156 -114
  475. data/ext/pg_query/src_backend_utils_activity_pgstat_database.c +140 -0
  476. data/ext/pg_query/src_backend_utils_adt_datum.c +14 -2
  477. data/ext/pg_query/src_backend_utils_adt_expandeddatum.c +1 -1
  478. data/ext/pg_query/src_backend_utils_adt_format_type.c +6 -2
  479. data/ext/pg_query/src_backend_utils_adt_numutils.c +488 -0
  480. data/ext/pg_query/src_backend_utils_adt_ruleutils.c +247 -34
  481. data/ext/pg_query/src_backend_utils_error_assert.c +17 -18
  482. data/ext/pg_query/src_backend_utils_error_elog.c +543 -343
  483. data/ext/pg_query/src_backend_utils_fmgr_fmgr.c +47 -18
  484. data/ext/pg_query/src_backend_utils_init_globals.c +22 -7
  485. data/ext/pg_query/src_backend_utils_mb_mbutils.c +84 -148
  486. data/ext/pg_query/src_backend_utils_misc_guc_tables.c +502 -0
  487. data/ext/pg_query/src_backend_utils_mmgr_alignedalloc.c +166 -0
  488. data/ext/pg_query/src_backend_utils_mmgr_aset.c +708 -499
  489. data/ext/pg_query/src_backend_utils_mmgr_bump.c +728 -0
  490. data/ext/pg_query/src_backend_utils_mmgr_generation.c +1115 -0
  491. data/ext/pg_query/src_backend_utils_mmgr_mcxt.c +710 -218
  492. data/ext/pg_query/src_backend_utils_mmgr_slab.c +1079 -0
  493. data/ext/pg_query/src_common_encnames.c +46 -44
  494. data/ext/pg_query/src_common_hashfn.c +3 -3
  495. data/ext/pg_query/src_common_keywords.c +15 -2
  496. data/ext/pg_query/src_common_kwlist_d.h +602 -510
  497. data/ext/pg_query/src_common_kwlookup.c +1 -1
  498. data/ext/pg_query/src_common_psprintf.c +3 -3
  499. data/ext/pg_query/src_common_stringinfo.c +21 -4
  500. data/ext/pg_query/src_common_wchar.c +754 -178
  501. data/ext/pg_query/src_pl_plpgsql_src_pl_comp.c +143 -24
  502. data/ext/pg_query/src_pl_plpgsql_src_pl_funcs.c +3 -18
  503. data/ext/pg_query/src_pl_plpgsql_src_pl_gram.c +1295 -1255
  504. data/ext/pg_query/src_pl_plpgsql_src_pl_handler.c +1 -1
  505. data/ext/pg_query/src_pl_plpgsql_src_pl_reserved_kwlist_d.h +10 -10
  506. data/ext/pg_query/src_pl_plpgsql_src_pl_scanner.c +20 -2
  507. data/ext/pg_query/src_pl_plpgsql_src_pl_unreserved_kwlist_d.h +60 -60
  508. data/ext/pg_query/src_port_pg_bitutils.c +283 -54
  509. data/ext/pg_query/src_port_pgstrcasecmp.c +57 -1
  510. data/ext/pg_query/src_port_qsort.c +12 -224
  511. data/ext/pg_query/src_port_snprintf.c +56 -39
  512. data/ext/pg_query/src_port_strerror.c +9 -21
  513. data/ext/pg_query/src_port_strlcpy.c +79 -0
  514. data/lib/pg_query/filter_columns.rb +1 -1
  515. data/lib/pg_query/fingerprint.rb +10 -9
  516. data/lib/pg_query/node.rb +18 -13
  517. data/lib/pg_query/param_refs.rb +3 -3
  518. data/lib/pg_query/parse.rb +25 -15
  519. data/lib/pg_query/parse_error.rb +1 -0
  520. data/lib/pg_query/pg_query_pb.rb +181 -3038
  521. data/lib/pg_query/scan.rb +1 -0
  522. data/lib/pg_query/treewalker.rb +55 -8
  523. data/lib/pg_query/truncate.rb +19 -21
  524. data/lib/pg_query/version.rb +1 -1
  525. metadata +447 -436
  526. data/ext/pg_query/guc-file.c +0 -0
  527. data/ext/pg_query/include/access/amapi.h +0 -246
  528. data/ext/pg_query/include/access/attmap.h +0 -52
  529. data/ext/pg_query/include/access/attnum.h +0 -64
  530. data/ext/pg_query/include/access/clog.h +0 -61
  531. data/ext/pg_query/include/access/commit_ts.h +0 -77
  532. data/ext/pg_query/include/access/detoast.h +0 -92
  533. data/ext/pg_query/include/access/genam.h +0 -228
  534. data/ext/pg_query/include/access/gin.h +0 -78
  535. data/ext/pg_query/include/access/htup.h +0 -89
  536. data/ext/pg_query/include/access/htup_details.h +0 -819
  537. data/ext/pg_query/include/access/itup.h +0 -161
  538. data/ext/pg_query/include/access/parallel.h +0 -82
  539. data/ext/pg_query/include/access/printtup.h +0 -35
  540. data/ext/pg_query/include/access/relation.h +0 -28
  541. data/ext/pg_query/include/access/relscan.h +0 -176
  542. data/ext/pg_query/include/access/rmgr.h +0 -35
  543. data/ext/pg_query/include/access/rmgrlist.h +0 -49
  544. data/ext/pg_query/include/access/sdir.h +0 -58
  545. data/ext/pg_query/include/access/skey.h +0 -151
  546. data/ext/pg_query/include/access/stratnum.h +0 -83
  547. data/ext/pg_query/include/access/sysattr.h +0 -29
  548. data/ext/pg_query/include/access/table.h +0 -27
  549. data/ext/pg_query/include/access/tableam.h +0 -1825
  550. data/ext/pg_query/include/access/transam.h +0 -265
  551. data/ext/pg_query/include/access/tupconvert.h +0 -51
  552. data/ext/pg_query/include/access/tupdesc.h +0 -154
  553. data/ext/pg_query/include/access/tupmacs.h +0 -247
  554. data/ext/pg_query/include/access/twophase.h +0 -63
  555. data/ext/pg_query/include/access/xact.h +0 -469
  556. data/ext/pg_query/include/access/xlog.h +0 -398
  557. data/ext/pg_query/include/access/xlog_internal.h +0 -339
  558. data/ext/pg_query/include/access/xlogdefs.h +0 -109
  559. data/ext/pg_query/include/access/xloginsert.h +0 -64
  560. data/ext/pg_query/include/access/xlogreader.h +0 -337
  561. data/ext/pg_query/include/access/xlogrecord.h +0 -227
  562. data/ext/pg_query/include/bootstrap/bootstrap.h +0 -62
  563. data/ext/pg_query/include/c.h +0 -1334
  564. data/ext/pg_query/include/catalog/catalog.h +0 -42
  565. data/ext/pg_query/include/catalog/catversion.h +0 -58
  566. data/ext/pg_query/include/catalog/dependency.h +0 -277
  567. data/ext/pg_query/include/catalog/genbki.h +0 -64
  568. data/ext/pg_query/include/catalog/index.h +0 -199
  569. data/ext/pg_query/include/catalog/indexing.h +0 -366
  570. data/ext/pg_query/include/catalog/namespace.h +0 -188
  571. data/ext/pg_query/include/catalog/objectaccess.h +0 -197
  572. data/ext/pg_query/include/catalog/objectaddress.h +0 -84
  573. data/ext/pg_query/include/catalog/pg_aggregate.h +0 -176
  574. data/ext/pg_query/include/catalog/pg_aggregate_d.h +0 -77
  575. data/ext/pg_query/include/catalog/pg_am.h +0 -60
  576. data/ext/pg_query/include/catalog/pg_am_d.h +0 -45
  577. data/ext/pg_query/include/catalog/pg_attribute.h +0 -204
  578. data/ext/pg_query/include/catalog/pg_attribute_d.h +0 -59
  579. data/ext/pg_query/include/catalog/pg_authid.h +0 -58
  580. data/ext/pg_query/include/catalog/pg_authid_d.h +0 -49
  581. data/ext/pg_query/include/catalog/pg_class.h +0 -200
  582. data/ext/pg_query/include/catalog/pg_class_d.h +0 -103
  583. data/ext/pg_query/include/catalog/pg_collation.h +0 -73
  584. data/ext/pg_query/include/catalog/pg_collation_d.h +0 -45
  585. data/ext/pg_query/include/catalog/pg_constraint.h +0 -247
  586. data/ext/pg_query/include/catalog/pg_constraint_d.h +0 -67
  587. data/ext/pg_query/include/catalog/pg_control.h +0 -252
  588. data/ext/pg_query/include/catalog/pg_conversion.h +0 -72
  589. data/ext/pg_query/include/catalog/pg_conversion_d.h +0 -35
  590. data/ext/pg_query/include/catalog/pg_depend.h +0 -73
  591. data/ext/pg_query/include/catalog/pg_depend_d.h +0 -34
  592. data/ext/pg_query/include/catalog/pg_event_trigger.h +0 -51
  593. data/ext/pg_query/include/catalog/pg_event_trigger_d.h +0 -34
  594. data/ext/pg_query/include/catalog/pg_index.h +0 -80
  595. data/ext/pg_query/include/catalog/pg_index_d.h +0 -56
  596. data/ext/pg_query/include/catalog/pg_language.h +0 -67
  597. data/ext/pg_query/include/catalog/pg_language_d.h +0 -39
  598. data/ext/pg_query/include/catalog/pg_namespace.h +0 -59
  599. data/ext/pg_query/include/catalog/pg_namespace_d.h +0 -34
  600. data/ext/pg_query/include/catalog/pg_opclass.h +0 -85
  601. data/ext/pg_query/include/catalog/pg_opclass_d.h +0 -49
  602. data/ext/pg_query/include/catalog/pg_operator.h +0 -104
  603. data/ext/pg_query/include/catalog/pg_operator_d.h +0 -106
  604. data/ext/pg_query/include/catalog/pg_opfamily.h +0 -60
  605. data/ext/pg_query/include/catalog/pg_opfamily_d.h +0 -47
  606. data/ext/pg_query/include/catalog/pg_partitioned_table.h +0 -63
  607. data/ext/pg_query/include/catalog/pg_partitioned_table_d.h +0 -35
  608. data/ext/pg_query/include/catalog/pg_proc.h +0 -211
  609. data/ext/pg_query/include/catalog/pg_proc_d.h +0 -99
  610. data/ext/pg_query/include/catalog/pg_publication.h +0 -118
  611. data/ext/pg_query/include/catalog/pg_publication_d.h +0 -36
  612. data/ext/pg_query/include/catalog/pg_replication_origin.h +0 -57
  613. data/ext/pg_query/include/catalog/pg_replication_origin_d.h +0 -29
  614. data/ext/pg_query/include/catalog/pg_statistic.h +0 -275
  615. data/ext/pg_query/include/catalog/pg_statistic_d.h +0 -194
  616. data/ext/pg_query/include/catalog/pg_statistic_ext.h +0 -74
  617. data/ext/pg_query/include/catalog/pg_statistic_ext_d.h +0 -40
  618. data/ext/pg_query/include/catalog/pg_transform.h +0 -45
  619. data/ext/pg_query/include/catalog/pg_transform_d.h +0 -32
  620. data/ext/pg_query/include/catalog/pg_trigger.h +0 -137
  621. data/ext/pg_query/include/catalog/pg_trigger_d.h +0 -106
  622. data/ext/pg_query/include/catalog/pg_ts_config.h +0 -50
  623. data/ext/pg_query/include/catalog/pg_ts_config_d.h +0 -32
  624. data/ext/pg_query/include/catalog/pg_ts_dict.h +0 -54
  625. data/ext/pg_query/include/catalog/pg_ts_dict_d.h +0 -33
  626. data/ext/pg_query/include/catalog/pg_ts_parser.h +0 -57
  627. data/ext/pg_query/include/catalog/pg_ts_parser_d.h +0 -35
  628. data/ext/pg_query/include/catalog/pg_ts_template.h +0 -48
  629. data/ext/pg_query/include/catalog/pg_ts_template_d.h +0 -32
  630. data/ext/pg_query/include/catalog/pg_type.h +0 -373
  631. data/ext/pg_query/include/catalog/pg_type_d.h +0 -285
  632. data/ext/pg_query/include/catalog/storage.h +0 -48
  633. data/ext/pg_query/include/commands/async.h +0 -54
  634. data/ext/pg_query/include/commands/dbcommands.h +0 -35
  635. data/ext/pg_query/include/commands/defrem.h +0 -173
  636. data/ext/pg_query/include/commands/event_trigger.h +0 -88
  637. data/ext/pg_query/include/commands/explain.h +0 -127
  638. data/ext/pg_query/include/commands/prepare.h +0 -61
  639. data/ext/pg_query/include/commands/tablespace.h +0 -69
  640. data/ext/pg_query/include/commands/trigger.h +0 -285
  641. data/ext/pg_query/include/commands/user.h +0 -37
  642. data/ext/pg_query/include/commands/vacuum.h +0 -293
  643. data/ext/pg_query/include/commands/variable.h +0 -38
  644. data/ext/pg_query/include/common/file_perm.h +0 -56
  645. data/ext/pg_query/include/common/hashfn.h +0 -104
  646. data/ext/pg_query/include/common/ip.h +0 -37
  647. data/ext/pg_query/include/common/keywords.h +0 -33
  648. data/ext/pg_query/include/common/kwlookup.h +0 -44
  649. data/ext/pg_query/include/common/relpath.h +0 -90
  650. data/ext/pg_query/include/common/string.h +0 -19
  651. data/ext/pg_query/include/common/unicode_combining_table.h +0 -196
  652. data/ext/pg_query/include/datatype/timestamp.h +0 -197
  653. data/ext/pg_query/include/executor/execdesc.h +0 -70
  654. data/ext/pg_query/include/executor/executor.h +0 -620
  655. data/ext/pg_query/include/executor/functions.h +0 -41
  656. data/ext/pg_query/include/executor/instrument.h +0 -101
  657. data/ext/pg_query/include/executor/spi.h +0 -175
  658. data/ext/pg_query/include/executor/tablefunc.h +0 -67
  659. data/ext/pg_query/include/executor/tuptable.h +0 -487
  660. data/ext/pg_query/include/fmgr.h +0 -775
  661. data/ext/pg_query/include/funcapi.h +0 -348
  662. data/ext/pg_query/include/getaddrinfo.h +0 -162
  663. data/ext/pg_query/include/jit/jit.h +0 -105
  664. data/ext/pg_query/include/kwlist_d.h +0 -1072
  665. data/ext/pg_query/include/lib/ilist.h +0 -727
  666. data/ext/pg_query/include/lib/pairingheap.h +0 -102
  667. data/ext/pg_query/include/lib/simplehash.h +0 -1059
  668. data/ext/pg_query/include/lib/stringinfo.h +0 -161
  669. data/ext/pg_query/include/libpq/auth.h +0 -29
  670. data/ext/pg_query/include/libpq/crypt.h +0 -46
  671. data/ext/pg_query/include/libpq/hba.h +0 -140
  672. data/ext/pg_query/include/libpq/libpq-be.h +0 -326
  673. data/ext/pg_query/include/libpq/libpq.h +0 -134
  674. data/ext/pg_query/include/libpq/pqcomm.h +0 -208
  675. data/ext/pg_query/include/libpq/pqformat.h +0 -210
  676. data/ext/pg_query/include/libpq/pqsignal.h +0 -42
  677. data/ext/pg_query/include/mb/pg_wchar.h +0 -673
  678. data/ext/pg_query/include/mb/stringinfo_mb.h +0 -24
  679. data/ext/pg_query/include/miscadmin.h +0 -489
  680. data/ext/pg_query/include/nodes/bitmapset.h +0 -122
  681. data/ext/pg_query/include/nodes/execnodes.h +0 -2523
  682. data/ext/pg_query/include/nodes/extensible.h +0 -160
  683. data/ext/pg_query/include/nodes/lockoptions.h +0 -61
  684. data/ext/pg_query/include/nodes/makefuncs.h +0 -108
  685. data/ext/pg_query/include/nodes/memnodes.h +0 -108
  686. data/ext/pg_query/include/nodes/nodeFuncs.h +0 -162
  687. data/ext/pg_query/include/nodes/nodes.h +0 -842
  688. data/ext/pg_query/include/nodes/params.h +0 -170
  689. data/ext/pg_query/include/nodes/parsenodes.h +0 -3580
  690. data/ext/pg_query/include/nodes/pathnodes.h +0 -2557
  691. data/ext/pg_query/include/nodes/pg_list.h +0 -606
  692. data/ext/pg_query/include/nodes/plannodes.h +0 -1266
  693. data/ext/pg_query/include/nodes/primnodes.h +0 -1541
  694. data/ext/pg_query/include/nodes/print.h +0 -34
  695. data/ext/pg_query/include/nodes/tidbitmap.h +0 -75
  696. data/ext/pg_query/include/nodes/value.h +0 -61
  697. data/ext/pg_query/include/optimizer/cost.h +0 -206
  698. data/ext/pg_query/include/optimizer/geqo.h +0 -88
  699. data/ext/pg_query/include/optimizer/geqo_gene.h +0 -45
  700. data/ext/pg_query/include/optimizer/optimizer.h +0 -194
  701. data/ext/pg_query/include/optimizer/paths.h +0 -257
  702. data/ext/pg_query/include/optimizer/planmain.h +0 -119
  703. data/ext/pg_query/include/parser/analyze.h +0 -49
  704. data/ext/pg_query/include/parser/gram.h +0 -1067
  705. data/ext/pg_query/include/parser/gramparse.h +0 -75
  706. data/ext/pg_query/include/parser/kwlist.h +0 -477
  707. data/ext/pg_query/include/parser/parse_agg.h +0 -68
  708. data/ext/pg_query/include/parser/parse_clause.h +0 -54
  709. data/ext/pg_query/include/parser/parse_coerce.h +0 -98
  710. data/ext/pg_query/include/parser/parse_collate.h +0 -27
  711. data/ext/pg_query/include/parser/parse_expr.h +0 -26
  712. data/ext/pg_query/include/parser/parse_func.h +0 -73
  713. data/ext/pg_query/include/parser/parse_node.h +0 -327
  714. data/ext/pg_query/include/parser/parse_oper.h +0 -67
  715. data/ext/pg_query/include/parser/parse_relation.h +0 -123
  716. data/ext/pg_query/include/parser/parse_target.h +0 -46
  717. data/ext/pg_query/include/parser/parse_type.h +0 -60
  718. data/ext/pg_query/include/parser/parser.h +0 -41
  719. data/ext/pg_query/include/parser/parsetree.h +0 -61
  720. data/ext/pg_query/include/parser/scanner.h +0 -152
  721. data/ext/pg_query/include/parser/scansup.h +0 -30
  722. data/ext/pg_query/include/partitioning/partdefs.h +0 -26
  723. data/ext/pg_query/include/pg_config.h +0 -995
  724. data/ext/pg_query/include/pg_config_manual.h +0 -357
  725. data/ext/pg_query/include/pg_config_os.h +0 -8
  726. data/ext/pg_query/include/pg_getopt.h +0 -56
  727. data/ext/pg_query/include/pg_trace.h +0 -17
  728. data/ext/pg_query/include/pgstat.h +0 -1488
  729. data/ext/pg_query/include/pgtime.h +0 -84
  730. data/ext/pg_query/include/pl_gram.h +0 -385
  731. data/ext/pg_query/include/pl_reserved_kwlist.h +0 -52
  732. data/ext/pg_query/include/pl_reserved_kwlist_d.h +0 -114
  733. data/ext/pg_query/include/pl_unreserved_kwlist.h +0 -112
  734. data/ext/pg_query/include/pl_unreserved_kwlist_d.h +0 -246
  735. data/ext/pg_query/include/plerrcodes.h +0 -990
  736. data/ext/pg_query/include/plpgsql.h +0 -1347
  737. data/ext/pg_query/include/port/atomics/arch-arm.h +0 -26
  738. data/ext/pg_query/include/port/atomics/arch-ppc.h +0 -254
  739. data/ext/pg_query/include/port/atomics/arch-x86.h +0 -252
  740. data/ext/pg_query/include/port/atomics/fallback.h +0 -170
  741. data/ext/pg_query/include/port/atomics/generic-gcc.h +0 -286
  742. data/ext/pg_query/include/port/atomics/generic.h +0 -401
  743. data/ext/pg_query/include/port/atomics.h +0 -524
  744. data/ext/pg_query/include/port/pg_bitutils.h +0 -272
  745. data/ext/pg_query/include/port/pg_bswap.h +0 -161
  746. data/ext/pg_query/include/port/pg_crc32c.h +0 -101
  747. data/ext/pg_query/include/port.h +0 -528
  748. data/ext/pg_query/include/portability/instr_time.h +0 -256
  749. data/ext/pg_query/include/postgres.h +0 -764
  750. data/ext/pg_query/include/postgres_ext.h +0 -74
  751. data/ext/pg_query/include/postmaster/autovacuum.h +0 -83
  752. data/ext/pg_query/include/postmaster/bgworker.h +0 -161
  753. data/ext/pg_query/include/postmaster/bgworker_internals.h +0 -64
  754. data/ext/pg_query/include/postmaster/bgwriter.h +0 -45
  755. data/ext/pg_query/include/postmaster/fork_process.h +0 -17
  756. data/ext/pg_query/include/postmaster/interrupt.h +0 -32
  757. data/ext/pg_query/include/postmaster/pgarch.h +0 -39
  758. data/ext/pg_query/include/postmaster/postmaster.h +0 -77
  759. data/ext/pg_query/include/postmaster/syslogger.h +0 -98
  760. data/ext/pg_query/include/postmaster/walwriter.h +0 -21
  761. data/ext/pg_query/include/regex/regex.h +0 -184
  762. data/ext/pg_query/include/replication/logicallauncher.h +0 -31
  763. data/ext/pg_query/include/replication/logicalproto.h +0 -110
  764. data/ext/pg_query/include/replication/logicalworker.h +0 -19
  765. data/ext/pg_query/include/replication/origin.h +0 -73
  766. data/ext/pg_query/include/replication/reorderbuffer.h +0 -468
  767. data/ext/pg_query/include/replication/slot.h +0 -219
  768. data/ext/pg_query/include/replication/syncrep.h +0 -115
  769. data/ext/pg_query/include/replication/walreceiver.h +0 -340
  770. data/ext/pg_query/include/replication/walsender.h +0 -74
  771. data/ext/pg_query/include/rewrite/prs2lock.h +0 -46
  772. data/ext/pg_query/include/rewrite/rewriteHandler.h +0 -40
  773. data/ext/pg_query/include/rewrite/rewriteManip.h +0 -87
  774. data/ext/pg_query/include/rewrite/rewriteSupport.h +0 -26
  775. data/ext/pg_query/include/storage/backendid.h +0 -37
  776. data/ext/pg_query/include/storage/block.h +0 -121
  777. data/ext/pg_query/include/storage/buf.h +0 -46
  778. data/ext/pg_query/include/storage/bufmgr.h +0 -292
  779. data/ext/pg_query/include/storage/bufpage.h +0 -459
  780. data/ext/pg_query/include/storage/condition_variable.h +0 -62
  781. data/ext/pg_query/include/storage/dsm.h +0 -61
  782. data/ext/pg_query/include/storage/dsm_impl.h +0 -75
  783. data/ext/pg_query/include/storage/fd.h +0 -168
  784. data/ext/pg_query/include/storage/ipc.h +0 -81
  785. data/ext/pg_query/include/storage/item.h +0 -19
  786. data/ext/pg_query/include/storage/itemid.h +0 -184
  787. data/ext/pg_query/include/storage/itemptr.h +0 -206
  788. data/ext/pg_query/include/storage/large_object.h +0 -100
  789. data/ext/pg_query/include/storage/latch.h +0 -190
  790. data/ext/pg_query/include/storage/lmgr.h +0 -114
  791. data/ext/pg_query/include/storage/lock.h +0 -613
  792. data/ext/pg_query/include/storage/lockdefs.h +0 -59
  793. data/ext/pg_query/include/storage/lwlock.h +0 -233
  794. data/ext/pg_query/include/storage/lwlocknames.h +0 -51
  795. data/ext/pg_query/include/storage/off.h +0 -57
  796. data/ext/pg_query/include/storage/pg_sema.h +0 -61
  797. data/ext/pg_query/include/storage/pg_shmem.h +0 -90
  798. data/ext/pg_query/include/storage/pmsignal.h +0 -94
  799. data/ext/pg_query/include/storage/predicate.h +0 -87
  800. data/ext/pg_query/include/storage/proc.h +0 -347
  801. data/ext/pg_query/include/storage/proclist_types.h +0 -51
  802. data/ext/pg_query/include/storage/procsignal.h +0 -75
  803. data/ext/pg_query/include/storage/relfilenode.h +0 -99
  804. data/ext/pg_query/include/storage/s_lock.h +0 -1071
  805. data/ext/pg_query/include/storage/sharedfileset.h +0 -45
  806. data/ext/pg_query/include/storage/shm_mq.h +0 -85
  807. data/ext/pg_query/include/storage/shm_toc.h +0 -58
  808. data/ext/pg_query/include/storage/shmem.h +0 -81
  809. data/ext/pg_query/include/storage/sinval.h +0 -153
  810. data/ext/pg_query/include/storage/sinvaladt.h +0 -43
  811. data/ext/pg_query/include/storage/smgr.h +0 -109
  812. data/ext/pg_query/include/storage/spin.h +0 -77
  813. data/ext/pg_query/include/storage/standby.h +0 -91
  814. data/ext/pg_query/include/storage/standbydefs.h +0 -74
  815. data/ext/pg_query/include/storage/sync.h +0 -62
  816. data/ext/pg_query/include/tcop/cmdtag.h +0 -58
  817. data/ext/pg_query/include/tcop/cmdtaglist.h +0 -217
  818. data/ext/pg_query/include/tcop/deparse_utility.h +0 -108
  819. data/ext/pg_query/include/tcop/dest.h +0 -149
  820. data/ext/pg_query/include/tcop/fastpath.h +0 -21
  821. data/ext/pg_query/include/tcop/pquery.h +0 -51
  822. data/ext/pg_query/include/tcop/tcopprot.h +0 -89
  823. data/ext/pg_query/include/tcop/utility.h +0 -108
  824. data/ext/pg_query/include/tsearch/ts_cache.h +0 -98
  825. data/ext/pg_query/include/utils/acl.h +0 -312
  826. data/ext/pg_query/include/utils/aclchk_internal.h +0 -45
  827. data/ext/pg_query/include/utils/array.h +0 -459
  828. data/ext/pg_query/include/utils/builtins.h +0 -128
  829. data/ext/pg_query/include/utils/bytea.h +0 -27
  830. data/ext/pg_query/include/utils/catcache.h +0 -231
  831. data/ext/pg_query/include/utils/date.h +0 -90
  832. data/ext/pg_query/include/utils/datetime.h +0 -343
  833. data/ext/pg_query/include/utils/datum.h +0 -68
  834. data/ext/pg_query/include/utils/dsa.h +0 -123
  835. data/ext/pg_query/include/utils/dynahash.h +0 -19
  836. data/ext/pg_query/include/utils/elog.h +0 -439
  837. data/ext/pg_query/include/utils/errcodes.h +0 -352
  838. data/ext/pg_query/include/utils/expandeddatum.h +0 -159
  839. data/ext/pg_query/include/utils/expandedrecord.h +0 -231
  840. data/ext/pg_query/include/utils/float.h +0 -356
  841. data/ext/pg_query/include/utils/fmgroids.h +0 -2657
  842. data/ext/pg_query/include/utils/fmgrprotos.h +0 -2646
  843. data/ext/pg_query/include/utils/fmgrtab.h +0 -48
  844. data/ext/pg_query/include/utils/guc.h +0 -443
  845. data/ext/pg_query/include/utils/guc_tables.h +0 -272
  846. data/ext/pg_query/include/utils/hsearch.h +0 -149
  847. data/ext/pg_query/include/utils/inval.h +0 -65
  848. data/ext/pg_query/include/utils/lsyscache.h +0 -198
  849. data/ext/pg_query/include/utils/memdebug.h +0 -82
  850. data/ext/pg_query/include/utils/memutils.h +0 -225
  851. data/ext/pg_query/include/utils/numeric.h +0 -76
  852. data/ext/pg_query/include/utils/palloc.h +0 -136
  853. data/ext/pg_query/include/utils/partcache.h +0 -102
  854. data/ext/pg_query/include/utils/pg_locale.h +0 -119
  855. data/ext/pg_query/include/utils/pg_lsn.h +0 -29
  856. data/ext/pg_query/include/utils/pidfile.h +0 -56
  857. data/ext/pg_query/include/utils/plancache.h +0 -235
  858. data/ext/pg_query/include/utils/portal.h +0 -254
  859. data/ext/pg_query/include/utils/probes.h +0 -114
  860. data/ext/pg_query/include/utils/ps_status.h +0 -25
  861. data/ext/pg_query/include/utils/queryenvironment.h +0 -74
  862. data/ext/pg_query/include/utils/regproc.h +0 -28
  863. data/ext/pg_query/include/utils/rel.h +0 -643
  864. data/ext/pg_query/include/utils/relcache.h +0 -150
  865. data/ext/pg_query/include/utils/reltrigger.h +0 -81
  866. data/ext/pg_query/include/utils/resowner.h +0 -86
  867. data/ext/pg_query/include/utils/rls.h +0 -50
  868. data/ext/pg_query/include/utils/ruleutils.h +0 -44
  869. data/ext/pg_query/include/utils/sharedtuplestore.h +0 -61
  870. data/ext/pg_query/include/utils/snapmgr.h +0 -159
  871. data/ext/pg_query/include/utils/snapshot.h +0 -206
  872. data/ext/pg_query/include/utils/sortsupport.h +0 -276
  873. data/ext/pg_query/include/utils/syscache.h +0 -219
  874. data/ext/pg_query/include/utils/timeout.h +0 -88
  875. data/ext/pg_query/include/utils/timestamp.h +0 -116
  876. data/ext/pg_query/include/utils/tuplesort.h +0 -277
  877. data/ext/pg_query/include/utils/tuplestore.h +0 -91
  878. data/ext/pg_query/include/utils/typcache.h +0 -202
  879. data/ext/pg_query/include/utils/tzparser.h +0 -39
  880. data/ext/pg_query/include/utils/varlena.h +0 -39
  881. data/ext/pg_query/include/utils/xml.h +0 -84
  882. data/ext/pg_query/pg_query_ruby_freebsd.sym +0 -2
  883. data/ext/pg_query/src_backend_libpq_pqcomm.c +0 -659
  884. data/ext/pg_query/src_backend_parser_parse_expr.c +0 -313
  885. data/ext/pg_query/src_backend_postmaster_postmaster.c +0 -2230
  886. data/ext/pg_query/src_backend_storage_lmgr_s_lock.c +0 -370
  887. data/ext/pg_query/src_backend_utils_hash_dynahash.c +0 -1086
  888. data/ext/pg_query/src_backend_utils_misc_guc.c +0 -1832
  889. data/ext/pg_query/src_common_string.c +0 -86
  890. data/ext/pg_query/src_port_erand48.c +0 -127
  891. data/ext/pg_query/src_port_pgsleep.c +0 -69
  892. data/ext/pg_query/src_port_random.c +0 -31
  893. data/ext/pg_query/src_port_strnlen.c +0 -39
  894. /data/ext/pg_query/{pg_query_ruby.sym → ext_symbols.sym} +0 -0
  895. /data/ext/pg_query/include/{pg_config_ext.h → postgres/pg_config_ext.h} +0 -0
@@ -0,0 +1,49 @@
1
+ /*-------------------------------------------------------------------------
2
+ *
3
+ * fmgrtab.h
4
+ * The function manager's table of internal functions.
5
+ *
6
+ * Portions Copyright (c) 1996-2024, PostgreSQL Global Development Group
7
+ * Portions Copyright (c) 1994, Regents of the University of California
8
+ *
9
+ * src/include/utils/fmgrtab.h
10
+ *
11
+ *-------------------------------------------------------------------------
12
+ */
13
+ #ifndef FMGRTAB_H
14
+ #define FMGRTAB_H
15
+
16
+ #include "access/transam.h"
17
+ #include "fmgr.h"
18
+
19
+
20
+ /*
21
+ * This table stores info about all the built-in functions (ie, functions
22
+ * that are compiled into the Postgres executable).
23
+ */
24
+
25
+ typedef struct
26
+ {
27
+ Oid foid; /* OID of the function */
28
+ short nargs; /* 0..FUNC_MAX_ARGS, or -1 if variable count */
29
+ bool strict; /* T if function is "strict" */
30
+ bool retset; /* T if function returns a set */
31
+ const char *funcName; /* C name of the function */
32
+ PGFunction func; /* pointer to compiled function */
33
+ } FmgrBuiltin;
34
+
35
+ extern PGDLLIMPORT const FmgrBuiltin fmgr_builtins[];
36
+
37
+ extern PGDLLIMPORT const int fmgr_nbuiltins; /* number of entries in table */
38
+
39
+ extern PGDLLIMPORT const Oid fmgr_last_builtin_oid; /* highest function OID in
40
+ * table */
41
+
42
+ /*
43
+ * Mapping from a builtin function's OID to its index in the fmgr_builtins
44
+ * array. This is indexed from 0 through fmgr_last_builtin_oid.
45
+ */
46
+ #define InvalidOidBuiltinMapping PG_UINT16_MAX
47
+ extern PGDLLIMPORT const uint16 fmgr_builtin_oid_index[];
48
+
49
+ #endif /* FMGRTAB_H */
@@ -0,0 +1,456 @@
1
+ /*--------------------------------------------------------------------
2
+ * guc.h
3
+ *
4
+ * External declarations pertaining to Grand Unified Configuration.
5
+ *
6
+ * Copyright (c) 2000-2024, PostgreSQL Global Development Group
7
+ * Written by Peter Eisentraut <peter_e@gmx.net>.
8
+ *
9
+ * src/include/utils/guc.h
10
+ *--------------------------------------------------------------------
11
+ */
12
+ #ifndef GUC_H
13
+ #define GUC_H
14
+
15
+ #include "nodes/parsenodes.h"
16
+ #include "tcop/dest.h"
17
+ #include "utils/array.h"
18
+
19
+
20
+ /* upper limit for GUC variables measured in kilobytes of memory */
21
+ /* note that various places assume the byte size fits in a "long" variable */
22
+ #if SIZEOF_SIZE_T > 4 && SIZEOF_LONG > 4
23
+ #define MAX_KILOBYTES INT_MAX
24
+ #else
25
+ #define MAX_KILOBYTES (INT_MAX / 1024)
26
+ #endif
27
+
28
+ /*
29
+ * Automatic configuration file name for ALTER SYSTEM.
30
+ * This file will be used to store values of configuration parameters
31
+ * set by ALTER SYSTEM command.
32
+ */
33
+ #define PG_AUTOCONF_FILENAME "postgresql.auto.conf"
34
+
35
+ /*
36
+ * Certain options can only be set at certain times. The rules are
37
+ * like this:
38
+ *
39
+ * INTERNAL options cannot be set by the user at all, but only through
40
+ * internal processes ("server_version" is an example). These are GUC
41
+ * variables only so they can be shown by SHOW, etc.
42
+ *
43
+ * POSTMASTER options can only be set when the postmaster starts,
44
+ * either from the configuration file or the command line.
45
+ *
46
+ * SIGHUP options can only be set at postmaster startup or by changing
47
+ * the configuration file and sending the HUP signal to the postmaster
48
+ * or a backend process. (Notice that the signal receipt will not be
49
+ * evaluated immediately. The postmaster and the backend check it at a
50
+ * certain point in their main loop. It's safer to wait than to read a
51
+ * file asynchronously.)
52
+ *
53
+ * BACKEND and SU_BACKEND options can only be set at postmaster startup,
54
+ * from the configuration file, or by client request in the connection
55
+ * startup packet (e.g., from libpq's PGOPTIONS variable). SU_BACKEND
56
+ * options can be set from the startup packet only when the user is a
57
+ * superuser. Furthermore, an already-started backend will ignore changes
58
+ * to such an option in the configuration file. The idea is that these
59
+ * options are fixed for a given backend once it's started, but they can
60
+ * vary across backends.
61
+ *
62
+ * SUSET options can be set at postmaster startup, with the SIGHUP
63
+ * mechanism, or from the startup packet or SQL if you're a superuser.
64
+ *
65
+ * USERSET options can be set by anyone any time.
66
+ */
67
+ typedef enum
68
+ {
69
+ PGC_INTERNAL,
70
+ PGC_POSTMASTER,
71
+ PGC_SIGHUP,
72
+ PGC_SU_BACKEND,
73
+ PGC_BACKEND,
74
+ PGC_SUSET,
75
+ PGC_USERSET,
76
+ } GucContext;
77
+
78
+ /*
79
+ * The following type records the source of the current setting. A
80
+ * new setting can only take effect if the previous setting had the
81
+ * same or lower level. (E.g, changing the config file doesn't
82
+ * override the postmaster command line.) Tracking the source allows us
83
+ * to process sources in any convenient order without affecting results.
84
+ * Sources <= PGC_S_OVERRIDE will set the default used by RESET, as well
85
+ * as the current value.
86
+ *
87
+ * PGC_S_INTERACTIVE isn't actually a source value, but is the
88
+ * dividing line between "interactive" and "non-interactive" sources for
89
+ * error reporting purposes.
90
+ *
91
+ * PGC_S_TEST is used when testing values to be used later. For example,
92
+ * ALTER DATABASE/ROLE tests proposed per-database or per-user defaults this
93
+ * way, and CREATE FUNCTION tests proposed function SET clauses this way.
94
+ * This is an interactive case, but it needs its own source value because
95
+ * some assign hooks need to make different validity checks in this case.
96
+ * In particular, references to nonexistent database objects generally
97
+ * shouldn't throw hard errors in this case, at most NOTICEs, since the
98
+ * objects might exist by the time the setting is used for real.
99
+ *
100
+ * When setting the value of a non-compile-time-constant PGC_INTERNAL option,
101
+ * source == PGC_S_DYNAMIC_DEFAULT should typically be used so that the value
102
+ * will show as "default" in pg_settings. If there is a specific reason not
103
+ * to want that, use source == PGC_S_OVERRIDE.
104
+ *
105
+ * NB: see GucSource_Names in guc.c if you change this.
106
+ */
107
+ typedef enum
108
+ {
109
+ PGC_S_DEFAULT, /* hard-wired default ("boot_val") */
110
+ PGC_S_DYNAMIC_DEFAULT, /* default computed during initialization */
111
+ PGC_S_ENV_VAR, /* postmaster environment variable */
112
+ PGC_S_FILE, /* postgresql.conf */
113
+ PGC_S_ARGV, /* postmaster command line */
114
+ PGC_S_GLOBAL, /* global in-database setting */
115
+ PGC_S_DATABASE, /* per-database setting */
116
+ PGC_S_USER, /* per-user setting */
117
+ PGC_S_DATABASE_USER, /* per-user-and-database setting */
118
+ PGC_S_CLIENT, /* from client connection request */
119
+ PGC_S_OVERRIDE, /* special case to forcibly set default */
120
+ PGC_S_INTERACTIVE, /* dividing line for error reporting */
121
+ PGC_S_TEST, /* test per-database or per-user setting */
122
+ PGC_S_SESSION, /* SET command */
123
+ } GucSource;
124
+
125
+ /*
126
+ * Parsing the configuration file(s) will return a list of name-value pairs
127
+ * with source location info. We also abuse this data structure to carry
128
+ * error reports about the config files. An entry reporting an error will
129
+ * have errmsg != NULL, and might have NULLs for name, value, and/or filename.
130
+ *
131
+ * If "ignore" is true, don't attempt to apply the item (it might be an error
132
+ * report, or an item we determined to be duplicate). "applied" is set true
133
+ * if we successfully applied, or could have applied, the setting.
134
+ */
135
+ typedef struct ConfigVariable
136
+ {
137
+ char *name;
138
+ char *value;
139
+ char *errmsg;
140
+ char *filename;
141
+ int sourceline;
142
+ bool ignore;
143
+ bool applied;
144
+ struct ConfigVariable *next;
145
+ } ConfigVariable;
146
+
147
+ typedef struct config_generic config_handle;
148
+
149
+ extern bool ParseConfigFile(const char *config_file, bool strict,
150
+ const char *calling_file, int calling_lineno,
151
+ int depth, int elevel,
152
+ ConfigVariable **head_p, ConfigVariable **tail_p);
153
+ extern bool ParseConfigFp(FILE *fp, const char *config_file,
154
+ int depth, int elevel,
155
+ ConfigVariable **head_p, ConfigVariable **tail_p);
156
+ extern bool ParseConfigDirectory(const char *includedir,
157
+ const char *calling_file, int calling_lineno,
158
+ int depth, int elevel,
159
+ ConfigVariable **head_p,
160
+ ConfigVariable **tail_p);
161
+ extern void FreeConfigVariables(ConfigVariable *list);
162
+ extern char *DeescapeQuotedString(const char *s);
163
+
164
+ /*
165
+ * The possible values of an enum variable are specified by an array of
166
+ * name-value pairs. The "hidden" flag means the value is accepted but
167
+ * won't be displayed when guc.c is asked for a list of acceptable values.
168
+ */
169
+ struct config_enum_entry
170
+ {
171
+ const char *name;
172
+ int val;
173
+ bool hidden;
174
+ };
175
+
176
+ /*
177
+ * Signatures for per-variable check/assign/show hook functions
178
+ */
179
+ typedef bool (*GucBoolCheckHook) (bool *newval, void **extra, GucSource source);
180
+ typedef bool (*GucIntCheckHook) (int *newval, void **extra, GucSource source);
181
+ typedef bool (*GucRealCheckHook) (double *newval, void **extra, GucSource source);
182
+ typedef bool (*GucStringCheckHook) (char **newval, void **extra, GucSource source);
183
+ typedef bool (*GucEnumCheckHook) (int *newval, void **extra, GucSource source);
184
+
185
+ typedef void (*GucBoolAssignHook) (bool newval, void *extra);
186
+ typedef void (*GucIntAssignHook) (int newval, void *extra);
187
+ typedef void (*GucRealAssignHook) (double newval, void *extra);
188
+ typedef void (*GucStringAssignHook) (const char *newval, void *extra);
189
+ typedef void (*GucEnumAssignHook) (int newval, void *extra);
190
+
191
+ typedef const char *(*GucShowHook) (void);
192
+
193
+ /*
194
+ * Miscellaneous
195
+ */
196
+ typedef enum
197
+ {
198
+ /* Types of set_config_option actions */
199
+ GUC_ACTION_SET, /* regular SET command */
200
+ GUC_ACTION_LOCAL, /* SET LOCAL command */
201
+ GUC_ACTION_SAVE, /* function SET option, or temp assignment */
202
+ } GucAction;
203
+
204
+ #define GUC_QUALIFIER_SEPARATOR '.'
205
+
206
+ /*
207
+ * Bit values in "flags" of a GUC variable. Note that these don't appear
208
+ * on disk, so we can reassign their values freely.
209
+ */
210
+ #define GUC_LIST_INPUT 0x000001 /* input can be list format */
211
+ #define GUC_LIST_QUOTE 0x000002 /* double-quote list elements */
212
+ #define GUC_NO_SHOW_ALL 0x000004 /* exclude from SHOW ALL */
213
+ #define GUC_NO_RESET 0x000008 /* disallow RESET and SAVE */
214
+ #define GUC_NO_RESET_ALL 0x000010 /* exclude from RESET ALL */
215
+ #define GUC_EXPLAIN 0x000020 /* include in EXPLAIN */
216
+ #define GUC_REPORT 0x000040 /* auto-report changes to client */
217
+ #define GUC_NOT_IN_SAMPLE 0x000080 /* not in postgresql.conf.sample */
218
+ #define GUC_DISALLOW_IN_FILE 0x000100 /* can't set in postgresql.conf */
219
+ #define GUC_CUSTOM_PLACEHOLDER 0x000200 /* placeholder for custom variable */
220
+ #define GUC_SUPERUSER_ONLY 0x000400 /* show only to superusers */
221
+ #define GUC_IS_NAME 0x000800 /* limit string to NAMEDATALEN-1 */
222
+ #define GUC_NOT_WHILE_SEC_REST 0x001000 /* can't set if security restricted */
223
+ #define GUC_DISALLOW_IN_AUTO_FILE \
224
+ 0x002000 /* can't set in PG_AUTOCONF_FILENAME */
225
+ #define GUC_RUNTIME_COMPUTED 0x004000 /* delay processing in 'postgres -C' */
226
+ #define GUC_ALLOW_IN_PARALLEL 0x008000 /* allow setting in parallel mode */
227
+
228
+ #define GUC_UNIT_KB 0x01000000 /* value is in kilobytes */
229
+ #define GUC_UNIT_BLOCKS 0x02000000 /* value is in blocks */
230
+ #define GUC_UNIT_XBLOCKS 0x03000000 /* value is in xlog blocks */
231
+ #define GUC_UNIT_MB 0x04000000 /* value is in megabytes */
232
+ #define GUC_UNIT_BYTE 0x05000000 /* value is in bytes */
233
+ #define GUC_UNIT_MEMORY 0x0F000000 /* mask for size-related units */
234
+
235
+ #define GUC_UNIT_MS 0x10000000 /* value is in milliseconds */
236
+ #define GUC_UNIT_S 0x20000000 /* value is in seconds */
237
+ #define GUC_UNIT_MIN 0x30000000 /* value is in minutes */
238
+ #define GUC_UNIT_TIME 0x70000000 /* mask for time-related units */
239
+
240
+ #define GUC_UNIT (GUC_UNIT_MEMORY | GUC_UNIT_TIME)
241
+
242
+
243
+ /* GUC vars that are actually defined in guc_tables.c, rather than elsewhere */
244
+ extern PGDLLIMPORT bool Debug_print_plan;
245
+ extern PGDLLIMPORT bool Debug_print_parse;
246
+ extern PGDLLIMPORT bool Debug_print_rewritten;
247
+ extern PGDLLIMPORT bool Debug_pretty_print;
248
+
249
+ extern PGDLLIMPORT bool log_parser_stats;
250
+ extern PGDLLIMPORT bool log_planner_stats;
251
+ extern PGDLLIMPORT bool log_executor_stats;
252
+ extern PGDLLIMPORT bool log_statement_stats;
253
+ extern PGDLLIMPORT bool log_btree_build_stats;
254
+
255
+ extern PGDLLIMPORT __thread bool check_function_bodies;
256
+ extern PGDLLIMPORT bool current_role_is_superuser;
257
+
258
+ extern PGDLLIMPORT bool AllowAlterSystem;
259
+ extern PGDLLIMPORT bool log_duration;
260
+ extern PGDLLIMPORT int log_parameter_max_length;
261
+ extern PGDLLIMPORT int log_parameter_max_length_on_error;
262
+ extern PGDLLIMPORT int log_min_error_statement;
263
+ extern PGDLLIMPORT __thread int log_min_messages;
264
+ extern PGDLLIMPORT int client_min_messages;
265
+ extern PGDLLIMPORT int log_min_duration_sample;
266
+ extern PGDLLIMPORT int log_min_duration_statement;
267
+ extern PGDLLIMPORT int log_temp_files;
268
+ extern PGDLLIMPORT double log_statement_sample_rate;
269
+ extern PGDLLIMPORT double log_xact_sample_rate;
270
+ extern PGDLLIMPORT __thread char *backtrace_functions;
271
+
272
+ extern PGDLLIMPORT int temp_file_limit;
273
+
274
+ extern PGDLLIMPORT int num_temp_buffers;
275
+
276
+ extern PGDLLIMPORT char *cluster_name;
277
+ extern PGDLLIMPORT char *ConfigFileName;
278
+ extern PGDLLIMPORT char *HbaFileName;
279
+ extern PGDLLIMPORT char *IdentFileName;
280
+ extern PGDLLIMPORT char *external_pid_file;
281
+
282
+ extern PGDLLIMPORT char *application_name;
283
+
284
+ extern PGDLLIMPORT int tcp_keepalives_idle;
285
+ extern PGDLLIMPORT int tcp_keepalives_interval;
286
+ extern PGDLLIMPORT int tcp_keepalives_count;
287
+ extern PGDLLIMPORT int tcp_user_timeout;
288
+
289
+ #ifdef TRACE_SORT
290
+ extern PGDLLIMPORT bool trace_sort;
291
+ #endif
292
+
293
+ /*
294
+ * Functions exported by guc.c
295
+ */
296
+ extern void SetConfigOption(const char *name, const char *value,
297
+ GucContext context, GucSource source);
298
+
299
+ extern void DefineCustomBoolVariable(const char *name,
300
+ const char *short_desc,
301
+ const char *long_desc,
302
+ bool *valueAddr,
303
+ bool bootValue,
304
+ GucContext context,
305
+ int flags,
306
+ GucBoolCheckHook check_hook,
307
+ GucBoolAssignHook assign_hook,
308
+ GucShowHook show_hook) pg_attribute_nonnull(1, 4);
309
+
310
+ extern void DefineCustomIntVariable(const char *name,
311
+ const char *short_desc,
312
+ const char *long_desc,
313
+ int *valueAddr,
314
+ int bootValue,
315
+ int minValue,
316
+ int maxValue,
317
+ GucContext context,
318
+ int flags,
319
+ GucIntCheckHook check_hook,
320
+ GucIntAssignHook assign_hook,
321
+ GucShowHook show_hook) pg_attribute_nonnull(1, 4);
322
+
323
+ extern void DefineCustomRealVariable(const char *name,
324
+ const char *short_desc,
325
+ const char *long_desc,
326
+ double *valueAddr,
327
+ double bootValue,
328
+ double minValue,
329
+ double maxValue,
330
+ GucContext context,
331
+ int flags,
332
+ GucRealCheckHook check_hook,
333
+ GucRealAssignHook assign_hook,
334
+ GucShowHook show_hook) pg_attribute_nonnull(1, 4);
335
+
336
+ extern void DefineCustomStringVariable(const char *name,
337
+ const char *short_desc,
338
+ const char *long_desc,
339
+ char **valueAddr,
340
+ const char *bootValue,
341
+ GucContext context,
342
+ int flags,
343
+ GucStringCheckHook check_hook,
344
+ GucStringAssignHook assign_hook,
345
+ GucShowHook show_hook) pg_attribute_nonnull(1, 4);
346
+
347
+ extern void DefineCustomEnumVariable(const char *name,
348
+ const char *short_desc,
349
+ const char *long_desc,
350
+ int *valueAddr,
351
+ int bootValue,
352
+ const struct config_enum_entry *options,
353
+ GucContext context,
354
+ int flags,
355
+ GucEnumCheckHook check_hook,
356
+ GucEnumAssignHook assign_hook,
357
+ GucShowHook show_hook) pg_attribute_nonnull(1, 4);
358
+
359
+ extern void MarkGUCPrefixReserved(const char *className);
360
+
361
+ /* old name for MarkGUCPrefixReserved, for backwards compatibility: */
362
+ #define EmitWarningsOnPlaceholders(className) MarkGUCPrefixReserved(className)
363
+
364
+ extern const char *GetConfigOption(const char *name, bool missing_ok,
365
+ bool restrict_privileged);
366
+ extern const char *GetConfigOptionResetString(const char *name);
367
+ extern int GetConfigOptionFlags(const char *name, bool missing_ok);
368
+ extern void ProcessConfigFile(GucContext context);
369
+ extern char *convert_GUC_name_for_parameter_acl(const char *name);
370
+ extern void check_GUC_name_for_parameter_acl(const char *name);
371
+ extern void InitializeGUCOptions(void);
372
+ extern bool SelectConfigFiles(const char *userDoption, const char *progname);
373
+ extern void ResetAllOptions(void);
374
+ extern void AtStart_GUC(void);
375
+ extern int NewGUCNestLevel(void);
376
+ extern void RestrictSearchPath(void);
377
+ extern void AtEOXact_GUC(bool isCommit, int nestLevel);
378
+ extern void BeginReportingGUCOptions(void);
379
+ extern void ReportChangedGUCOptions(void);
380
+ extern void ParseLongOption(const char *string, char **name, char **value);
381
+ extern const char *get_config_unit_name(int flags);
382
+ extern bool parse_int(const char *value, int *result, int flags,
383
+ const char **hintmsg);
384
+ extern bool parse_real(const char *value, double *result, int flags,
385
+ const char **hintmsg);
386
+ extern int set_config_option(const char *name, const char *value,
387
+ GucContext context, GucSource source,
388
+ GucAction action, bool changeVal, int elevel,
389
+ bool is_reload);
390
+ extern int set_config_option_ext(const char *name, const char *value,
391
+ GucContext context, GucSource source,
392
+ Oid srole,
393
+ GucAction action, bool changeVal, int elevel,
394
+ bool is_reload);
395
+ extern int set_config_with_handle(const char *name, config_handle *handle,
396
+ const char *value,
397
+ GucContext context, GucSource source,
398
+ Oid srole,
399
+ GucAction action, bool changeVal,
400
+ int elevel, bool is_reload);
401
+ extern config_handle *get_config_handle(const char *name);
402
+ extern void AlterSystemSetConfigFile(AlterSystemStmt *altersysstmt);
403
+ extern char *GetConfigOptionByName(const char *name, const char **varname,
404
+ bool missing_ok);
405
+
406
+ extern void TransformGUCArray(ArrayType *array, List **names,
407
+ List **values);
408
+ extern void ProcessGUCArray(ArrayType *array,
409
+ GucContext context, GucSource source, GucAction action);
410
+ extern ArrayType *GUCArrayAdd(ArrayType *array, const char *name, const char *value);
411
+ extern ArrayType *GUCArrayDelete(ArrayType *array, const char *name);
412
+ extern ArrayType *GUCArrayReset(ArrayType *array);
413
+
414
+ extern void *guc_malloc(int elevel, size_t size);
415
+ extern pg_nodiscard void *guc_realloc(int elevel, void *old, size_t size);
416
+ extern char *guc_strdup(int elevel, const char *src);
417
+ extern void guc_free(void *ptr);
418
+
419
+ #ifdef EXEC_BACKEND
420
+ extern void write_nondefault_variables(GucContext context);
421
+ extern void read_nondefault_variables(void);
422
+ #endif
423
+
424
+ /* GUC serialization */
425
+ extern Size EstimateGUCStateSpace(void);
426
+ extern void SerializeGUCState(Size maxsize, char *start_address);
427
+ extern void RestoreGUCState(void *gucstate);
428
+
429
+ /* Functions exported by guc_funcs.c */
430
+ extern void ExecSetVariableStmt(VariableSetStmt *stmt, bool isTopLevel);
431
+ extern char *ExtractSetVariableArgs(VariableSetStmt *stmt);
432
+ extern void SetPGVariable(const char *name, List *args, bool is_local);
433
+ extern void GetPGVariable(const char *name, DestReceiver *dest);
434
+ extern TupleDesc GetPGVariableResultDesc(const char *name);
435
+
436
+ /* Support for messages reported from GUC check hooks */
437
+
438
+ extern PGDLLIMPORT char *GUC_check_errmsg_string;
439
+ extern PGDLLIMPORT char *GUC_check_errdetail_string;
440
+ extern PGDLLIMPORT char *GUC_check_errhint_string;
441
+
442
+ extern void GUC_check_errcode(int sqlerrcode);
443
+
444
+ #define GUC_check_errmsg \
445
+ pre_format_elog_string(errno, TEXTDOMAIN), \
446
+ GUC_check_errmsg_string = format_elog_string
447
+
448
+ #define GUC_check_errdetail \
449
+ pre_format_elog_string(errno, TEXTDOMAIN), \
450
+ GUC_check_errdetail_string = format_elog_string
451
+
452
+ #define GUC_check_errhint \
453
+ pre_format_elog_string(errno, TEXTDOMAIN), \
454
+ GUC_check_errhint_string = format_elog_string
455
+
456
+ #endif /* GUC_H */
@@ -0,0 +1,184 @@
1
+ /*-------------------------------------------------------------------------
2
+ *
3
+ * guc_hooks.h
4
+ * Declarations of per-variable callback functions used by GUC.
5
+ *
6
+ * These functions are scattered throughout the system, but we
7
+ * declare them all here to avoid having to propagate guc.h into
8
+ * a lot of unrelated header files.
9
+ *
10
+ * Portions Copyright (c) 1996-2024, PostgreSQL Global Development Group
11
+ *
12
+ * src/include/utils/guc_hooks.h
13
+ *
14
+ *-------------------------------------------------------------------------
15
+ */
16
+ #ifndef GUC_HOOKS_H
17
+ #define GUC_HOOKS_H 1
18
+
19
+ #include "utils/guc.h"
20
+
21
+ /*
22
+ * See guc.h for the typedefs that these hook functions should match
23
+ * (GucBoolCheckHook and so on).
24
+ *
25
+ * Please keep the declarations in order by GUC variable name.
26
+ */
27
+
28
+ extern bool check_application_name(char **newval, void **extra,
29
+ GucSource source);
30
+ extern void assign_application_name(const char *newval, void *extra);
31
+ extern const char *show_archive_command(void);
32
+ extern bool check_autovacuum_max_workers(int *newval, void **extra,
33
+ GucSource source);
34
+ extern bool check_autovacuum_work_mem(int *newval, void **extra,
35
+ GucSource source);
36
+ extern bool check_vacuum_buffer_usage_limit(int *newval, void **extra,
37
+ GucSource source);
38
+ extern bool check_backtrace_functions(char **newval, void **extra,
39
+ GucSource source);
40
+ extern void assign_backtrace_functions(const char *newval, void *extra);
41
+ extern bool check_bonjour(bool *newval, void **extra, GucSource source);
42
+ extern bool check_canonical_path(char **newval, void **extra, GucSource source);
43
+ extern void assign_checkpoint_completion_target(double newval, void *extra);
44
+ extern bool check_client_connection_check_interval(int *newval, void **extra,
45
+ GucSource source);
46
+ extern bool check_client_encoding(char **newval, void **extra, GucSource source);
47
+ extern void assign_client_encoding(const char *newval, void *extra);
48
+ extern bool check_cluster_name(char **newval, void **extra, GucSource source);
49
+ extern bool check_commit_ts_buffers(int *newval, void **extra,
50
+ GucSource source);
51
+ extern const char *show_data_directory_mode(void);
52
+ extern bool check_datestyle(char **newval, void **extra, GucSource source);
53
+ extern void assign_datestyle(const char *newval, void *extra);
54
+ extern bool check_debug_io_direct(char **newval, void **extra, GucSource source);
55
+ extern void assign_debug_io_direct(const char *newval, void *extra);
56
+ extern bool check_default_table_access_method(char **newval, void **extra,
57
+ GucSource source);
58
+ extern bool check_default_tablespace(char **newval, void **extra,
59
+ GucSource source);
60
+ extern bool check_default_text_search_config(char **newval, void **extra, GucSource source);
61
+ extern void assign_default_text_search_config(const char *newval, void *extra);
62
+ extern bool check_default_with_oids(bool *newval, void **extra,
63
+ GucSource source);
64
+ extern bool check_effective_io_concurrency(int *newval, void **extra,
65
+ GucSource source);
66
+ extern bool check_huge_page_size(int *newval, void **extra, GucSource source);
67
+ extern const char *show_in_hot_standby(void);
68
+ extern bool check_locale_messages(char **newval, void **extra, GucSource source);
69
+ extern void assign_locale_messages(const char *newval, void *extra);
70
+ extern bool check_locale_monetary(char **newval, void **extra, GucSource source);
71
+ extern void assign_locale_monetary(const char *newval, void *extra);
72
+ extern bool check_locale_numeric(char **newval, void **extra, GucSource source);
73
+ extern void assign_locale_numeric(const char *newval, void *extra);
74
+ extern bool check_locale_time(char **newval, void **extra, GucSource source);
75
+ extern void assign_locale_time(const char *newval, void *extra);
76
+ extern bool check_log_destination(char **newval, void **extra,
77
+ GucSource source);
78
+ extern void assign_log_destination(const char *newval, void *extra);
79
+ extern const char *show_log_file_mode(void);
80
+ extern bool check_log_stats(bool *newval, void **extra, GucSource source);
81
+ extern bool check_log_timezone(char **newval, void **extra, GucSource source);
82
+ extern void assign_log_timezone(const char *newval, void *extra);
83
+ extern const char *show_log_timezone(void);
84
+ extern bool check_maintenance_io_concurrency(int *newval, void **extra,
85
+ GucSource source);
86
+ extern void assign_maintenance_io_concurrency(int newval, void *extra);
87
+ extern bool check_max_connections(int *newval, void **extra, GucSource source);
88
+ extern bool check_max_wal_senders(int *newval, void **extra, GucSource source);
89
+ extern bool check_max_slot_wal_keep_size(int *newval, void **extra,
90
+ GucSource source);
91
+ extern void assign_max_wal_size(int newval, void *extra);
92
+ extern bool check_max_worker_processes(int *newval, void **extra,
93
+ GucSource source);
94
+ extern bool check_max_stack_depth(int *newval, void **extra, GucSource source);
95
+ extern void assign_max_stack_depth(int newval, void *extra);
96
+ extern bool check_multixact_member_buffers(int *newval, void **extra,
97
+ GucSource source);
98
+ extern bool check_multixact_offset_buffers(int *newval, void **extra,
99
+ GucSource source);
100
+ extern bool check_notify_buffers(int *newval, void **extra, GucSource source);
101
+ extern bool check_primary_slot_name(char **newval, void **extra,
102
+ GucSource source);
103
+ extern bool check_random_seed(double *newval, void **extra, GucSource source);
104
+ extern void assign_random_seed(double newval, void *extra);
105
+ extern const char *show_random_seed(void);
106
+ extern bool check_recovery_prefetch(int *new_value, void **extra,
107
+ GucSource source);
108
+ extern void assign_recovery_prefetch(int new_value, void *extra);
109
+ extern bool check_recovery_target(char **newval, void **extra,
110
+ GucSource source);
111
+ extern void assign_recovery_target(const char *newval, void *extra);
112
+ extern bool check_recovery_target_lsn(char **newval, void **extra,
113
+ GucSource source);
114
+ extern void assign_recovery_target_lsn(const char *newval, void *extra);
115
+ extern bool check_recovery_target_name(char **newval, void **extra,
116
+ GucSource source);
117
+ extern void assign_recovery_target_name(const char *newval, void *extra);
118
+ extern bool check_recovery_target_time(char **newval, void **extra,
119
+ GucSource source);
120
+ extern void assign_recovery_target_time(const char *newval, void *extra);
121
+ extern bool check_recovery_target_timeline(char **newval, void **extra,
122
+ GucSource source);
123
+ extern void assign_recovery_target_timeline(const char *newval, void *extra);
124
+ extern bool check_recovery_target_xid(char **newval, void **extra,
125
+ GucSource source);
126
+ extern void assign_recovery_target_xid(const char *newval, void *extra);
127
+ extern bool check_role(char **newval, void **extra, GucSource source);
128
+ extern void assign_role(const char *newval, void *extra);
129
+ extern const char *show_role(void);
130
+ extern bool check_restrict_nonsystem_relation_kind(char **newval, void **extra,
131
+ GucSource source);
132
+ extern void assign_restrict_nonsystem_relation_kind(const char *newval, void *extra);
133
+ extern bool check_search_path(char **newval, void **extra, GucSource source);
134
+ extern void assign_search_path(const char *newval, void *extra);
135
+ extern bool check_serial_buffers(int *newval, void **extra, GucSource source);
136
+ extern bool check_session_authorization(char **newval, void **extra, GucSource source);
137
+ extern void assign_session_authorization(const char *newval, void *extra);
138
+ extern void assign_session_replication_role(int newval, void *extra);
139
+ extern void assign_stats_fetch_consistency(int newval, void *extra);
140
+ extern bool check_ssl(bool *newval, void **extra, GucSource source);
141
+ extern bool check_stage_log_stats(bool *newval, void **extra, GucSource source);
142
+ extern bool check_subtrans_buffers(int *newval, void **extra,
143
+ GucSource source);
144
+ extern bool check_synchronous_standby_names(char **newval, void **extra,
145
+ GucSource source);
146
+ extern void assign_synchronous_standby_names(const char *newval, void *extra);
147
+ extern void assign_synchronous_commit(int newval, void *extra);
148
+ extern void assign_syslog_facility(int newval, void *extra);
149
+ extern void assign_syslog_ident(const char *newval, void *extra);
150
+ extern void assign_tcp_keepalives_count(int newval, void *extra);
151
+ extern const char *show_tcp_keepalives_count(void);
152
+ extern void assign_tcp_keepalives_idle(int newval, void *extra);
153
+ extern const char *show_tcp_keepalives_idle(void);
154
+ extern void assign_tcp_keepalives_interval(int newval, void *extra);
155
+ extern const char *show_tcp_keepalives_interval(void);
156
+ extern void assign_tcp_user_timeout(int newval, void *extra);
157
+ extern const char *show_tcp_user_timeout(void);
158
+ extern bool check_temp_buffers(int *newval, void **extra, GucSource source);
159
+ extern bool check_temp_tablespaces(char **newval, void **extra,
160
+ GucSource source);
161
+ extern void assign_temp_tablespaces(const char *newval, void *extra);
162
+ extern bool check_timezone(char **newval, void **extra, GucSource source);
163
+ extern void assign_timezone(const char *newval, void *extra);
164
+ extern const char *show_timezone(void);
165
+ extern bool check_timezone_abbreviations(char **newval, void **extra,
166
+ GucSource source);
167
+ extern void assign_timezone_abbreviations(const char *newval, void *extra);
168
+ extern bool check_transaction_buffers(int *newval, void **extra, GucSource source);
169
+ extern bool check_transaction_deferrable(bool *newval, void **extra, GucSource source);
170
+ extern bool check_transaction_isolation(int *newval, void **extra, GucSource source);
171
+ extern bool check_transaction_read_only(bool *newval, void **extra, GucSource source);
172
+ extern void assign_transaction_timeout(int newval, void *extra);
173
+ extern const char *show_unix_socket_permissions(void);
174
+ extern bool check_wal_buffers(int *newval, void **extra, GucSource source);
175
+ extern bool check_wal_consistency_checking(char **newval, void **extra,
176
+ GucSource source);
177
+ extern void assign_wal_consistency_checking(const char *newval, void *extra);
178
+ extern bool check_wal_segment_size(int *newval, void **extra, GucSource source);
179
+ extern void assign_wal_sync_method(int new_wal_sync_method, void *extra);
180
+ extern bool check_synchronized_standby_slots(char **newval, void **extra,
181
+ GucSource source);
182
+ extern void assign_synchronized_standby_slots(const char *newval, void *extra);
183
+
184
+ #endif /* GUC_HOOKS_H */