{"kind": "hook", "major": "18", "item": {"slug": "needs_fmgr_hook", "name": "needs_fmgr_hook", "name_zh": "needs_fmgr_hook", "category": "Logging and function calls", "summary": "Hooks for function calls", "aliases": [], "versions": {"10": {"facts": [{"label": "Interface type", "value": "needs_fmgr_hook_type"}, {"label": "Header", "value": "src/include/fmgr.h"}, {"label": "Subsystem", "value": "Logging and function calls"}, {"label": "Initial value", "value": "NULL (no hook installed)"}], "related": [], "release": {"ref": "REL_10_STABLE", "label": "10", "major": "10", "channel": "historical", "revision": "f4e8f137bfb08a664c8288824c1e36b5143ac875"}, "sources": [{"url": "https://github.com/postgres/postgres/blob/f4e8f137bfb08a664c8288824c1e36b5143ac875/src/include/fmgr.h#L725", "path": "src/include/fmgr.h", "label": "Interface declaration", "sha256": "df17c150409e6e8722ca759fe4180a8749cf780229068e62361b1175b58999ea"}, {"url": "https://github.com/postgres/postgres/blob/f4e8f137bfb08a664c8288824c1e36b5143ac875/src/backend/utils/fmgr/fmgr.c#L36", "path": "src/backend/utils/fmgr/fmgr.c", "label": "Core definition", "sha256": "a5788568f1147d2aad197271942da0ea489f52d03b8b753555a21dee8fef562e"}, {"url": "https://github.com/postgres/postgres/blob/f4e8f137bfb08a664c8288824c1e36b5143ac875/src/include/fmgr.h#L734", "path": "src/include/fmgr.h", "label": "Call sites", "sha256": "df17c150409e6e8722ca759fe4180a8749cf780229068e62361b1175b58999ea"}], "sections": [{"title": "Call sites", "paragraphs": ["src/include/fmgr.h:734"]}, {"code": "\t\t\t\t\t\t\t\tFmgrInfo *flinfo, Datum *arg);\n\nextern PGDLLIMPORT needs_fmgr_hook_type needs_fmgr_hook;\nextern PGDLLIMPORT fmgr_hook_type fmgr_hook;\n\n#define FmgrHookIsNeeded(fn_oid)\t\t\t\t\t\t\t\\\n\t(!needs_fmgr_hook ? false : (*needs_fmgr_hook)(fn_oid))\n\n/*\n * !!! OLD INTERFACE !!!\n *\n * fmgr() is the only remaining vestige of the old-style caller support\n * functions.  It's no longer used anywhere in the Postgres distribution,\n * but we should leave it around for a release or two to ease the transition\n * for user-supplied C functions.  OidFunctionCallN() replaces it for new", "title": "Core call context: src/include/fmgr.h:728\u2013742", "paragraphs": []}], "signature": "typedef bool (*needs_fmgr_hook_type) (Oid fn_oid);\nextern PGDLLIMPORT needs_fmgr_hook_type needs_fmgr_hook;", "description": ["Hooks for function calls"]}, "11": {"facts": [{"label": "Interface type", "value": "needs_fmgr_hook_type"}, {"label": "Header", "value": "src/include/fmgr.h"}, {"label": "Subsystem", "value": "Logging and function calls"}, {"label": "Initial value", "value": "NULL (no hook installed)"}], "related": [], "release": {"ref": "REL_11_STABLE", "label": "11", "major": "11", "channel": "historical", "revision": "170e416034ec0231d9e9238f2577eeb76ca8d181"}, "sources": [{"url": "https://github.com/postgres/postgres/blob/170e416034ec0231d9e9238f2577eeb76ca8d181/src/include/fmgr.h#L732", "path": "src/include/fmgr.h", "label": "Interface declaration", "sha256": "c190e4895547ea11f1a94bf88627378adb93b964dbe6cbde649813befaca7892"}, {"url": "https://github.com/postgres/postgres/blob/170e416034ec0231d9e9238f2577eeb76ca8d181/src/backend/utils/fmgr/fmgr.c#L36", "path": "src/backend/utils/fmgr/fmgr.c", "label": "Core definition", "sha256": "6d1dd1f91eeece4053ff17f40f5df44e4cf08d0a7dd87d03a36cf8e2afcbf455"}, {"url": "https://github.com/postgres/postgres/blob/170e416034ec0231d9e9238f2577eeb76ca8d181/src/include/fmgr.h#L741", "path": "src/include/fmgr.h", "label": "Call sites", "sha256": "c190e4895547ea11f1a94bf88627378adb93b964dbe6cbde649813befaca7892"}], "sections": [{"title": "Call sites", "paragraphs": ["src/include/fmgr.h:741"]}, {"code": "\t\t\t\t\t\t\t\tFmgrInfo *flinfo, Datum *arg);\n\nextern PGDLLIMPORT needs_fmgr_hook_type needs_fmgr_hook;\nextern PGDLLIMPORT fmgr_hook_type fmgr_hook;\n\n#define FmgrHookIsNeeded(fn_oid)\t\t\t\t\t\t\t\\\n\t(!needs_fmgr_hook ? false : (*needs_fmgr_hook)(fn_oid))\n\n#endif\t\t\t\t\t\t\t/* FMGR_H */", "title": "Core call context: src/include/fmgr.h:735\u2013743", "paragraphs": []}], "signature": "typedef bool (*needs_fmgr_hook_type) (Oid fn_oid);\nextern PGDLLIMPORT needs_fmgr_hook_type needs_fmgr_hook;", "description": ["Hooks for function calls"]}, "12": {"facts": [{"label": "Interface type", "value": "needs_fmgr_hook_type"}, {"label": "Header", "value": "src/include/fmgr.h"}, {"label": "Subsystem", "value": "Logging and function calls"}, {"label": "Initial value", "value": "NULL (no hook installed)"}], "related": [], "release": {"ref": "REL_12_STABLE", "label": "12", "major": "12", "channel": "historical", "revision": "3f302f0ed06f69c5ebd33d4df95895323a3cbef6"}, "sources": [{"url": "https://github.com/postgres/postgres/blob/3f302f0ed06f69c5ebd33d4df95895323a3cbef6/src/include/fmgr.h#L758", "path": "src/include/fmgr.h", "label": "Interface declaration", "sha256": "6de795177b2711bfbb68a2658f2b479a18948f5678309c922ceaee3df4c1814b"}, {"url": "https://github.com/postgres/postgres/blob/3f302f0ed06f69c5ebd33d4df95895323a3cbef6/src/backend/utils/fmgr/fmgr.c#L36", "path": "src/backend/utils/fmgr/fmgr.c", "label": "Core definition", "sha256": "00f4202032df1dbace13d8d98b79938cd2c6f544104d13522f8bc30d180e1d68"}, {"url": "https://github.com/postgres/postgres/blob/3f302f0ed06f69c5ebd33d4df95895323a3cbef6/src/include/fmgr.h#L767", "path": "src/include/fmgr.h", "label": "Call sites", "sha256": "6de795177b2711bfbb68a2658f2b479a18948f5678309c922ceaee3df4c1814b"}], "sections": [{"title": "Call sites", "paragraphs": ["src/include/fmgr.h:767"]}, {"code": "\t\t\t\t\t\t\t\tFmgrInfo *flinfo, Datum *arg);\n\nextern PGDLLIMPORT needs_fmgr_hook_type needs_fmgr_hook;\nextern PGDLLIMPORT fmgr_hook_type fmgr_hook;\n\n#define FmgrHookIsNeeded(fn_oid)\t\t\t\t\t\t\t\\\n\t(!needs_fmgr_hook ? false : (*needs_fmgr_hook)(fn_oid))\n\n#endif\t\t\t\t\t\t\t/* FMGR_H */", "title": "Core call context: src/include/fmgr.h:761\u2013769", "paragraphs": []}], "signature": "typedef bool (*needs_fmgr_hook_type) (Oid fn_oid);\nextern PGDLLIMPORT needs_fmgr_hook_type needs_fmgr_hook;", "description": ["Hooks for function calls"]}, "13": {"facts": [{"label": "Interface type", "value": "needs_fmgr_hook_type"}, {"label": "Header", "value": "src/include/fmgr.h"}, {"label": "Subsystem", "value": "Logging and function calls"}, {"label": "Initial value", "value": "NULL (no hook installed)"}], "related": [], "release": {"ref": "REL_13_STABLE", "label": "13", "major": "13", "channel": "historical", "revision": "05f6c9ec2c475fae8fdd56ae40bd01afcf70d1f2"}, "sources": [{"url": "https://github.com/postgres/postgres/blob/05f6c9ec2c475fae8fdd56ae40bd01afcf70d1f2/src/include/fmgr.h#L764", "path": "src/include/fmgr.h", "label": "Interface declaration", "sha256": "caf6e9e4fd92e46ee76ef614bd2898b2dae868d078e20ba9f4dec2e26ada9601"}, {"url": "https://github.com/postgres/postgres/blob/05f6c9ec2c475fae8fdd56ae40bd01afcf70d1f2/src/backend/utils/fmgr/fmgr.c#L38", "path": "src/backend/utils/fmgr/fmgr.c", "label": "Core definition", "sha256": "0ac71fc4f7f23b8ce489c2e56fd2f5a65bf55375da29c46ada7ad47a693504ea"}, {"url": "https://github.com/postgres/postgres/blob/05f6c9ec2c475fae8fdd56ae40bd01afcf70d1f2/src/include/fmgr.h#L773", "path": "src/include/fmgr.h", "label": "Call sites", "sha256": "caf6e9e4fd92e46ee76ef614bd2898b2dae868d078e20ba9f4dec2e26ada9601"}], "sections": [{"title": "Call sites", "paragraphs": ["src/include/fmgr.h:773"]}, {"code": "\t\t\t\t\t\t\t\tFmgrInfo *flinfo, Datum *arg);\n\nextern PGDLLIMPORT needs_fmgr_hook_type needs_fmgr_hook;\nextern PGDLLIMPORT fmgr_hook_type fmgr_hook;\n\n#define FmgrHookIsNeeded(fn_oid)\t\t\t\t\t\t\t\\\n\t(!needs_fmgr_hook ? false : (*needs_fmgr_hook)(fn_oid))\n\n#endif\t\t\t\t\t\t\t/* FMGR_H */", "title": "Core call context: src/include/fmgr.h:767\u2013775", "paragraphs": []}], "signature": "typedef bool (*needs_fmgr_hook_type) (Oid fn_oid);\nextern PGDLLIMPORT needs_fmgr_hook_type needs_fmgr_hook;", "description": ["Hooks for function calls"]}, "14": {"facts": [{"label": "Interface type", "value": "needs_fmgr_hook_type"}, {"label": "Header", "value": "src/include/fmgr.h"}, {"label": "Subsystem", "value": "Logging and function calls"}, {"label": "Initial value", "value": "NULL (no hook installed)"}], "related": [], "release": {"ref": "REL_14_STABLE", "label": "14", "major": "14", "channel": "stable", "revision": "fba35c7c28a567839faba867db0808564c0a66db"}, "sources": [{"url": "https://github.com/postgres/postgres/blob/fba35c7c28a567839faba867db0808564c0a66db/src/include/fmgr.h#L766", "path": "src/include/fmgr.h", "label": "Interface declaration", "sha256": "4f5e2b234597a61d39718dbaa8adc29399275ff192ddf3263482eb941dfc44b4"}, {"url": "https://github.com/postgres/postgres/blob/fba35c7c28a567839faba867db0808564c0a66db/src/backend/utils/fmgr/fmgr.c#L38", "path": "src/backend/utils/fmgr/fmgr.c", "label": "Core definition", "sha256": "5606683a0658941ad4de9d56cc80f19873fd1260830d9955118002dffee38759"}, {"url": "https://github.com/postgres/postgres/blob/fba35c7c28a567839faba867db0808564c0a66db/src/include/fmgr.h#L775", "path": "src/include/fmgr.h", "label": "Call sites", "sha256": "4f5e2b234597a61d39718dbaa8adc29399275ff192ddf3263482eb941dfc44b4"}], "sections": [{"title": "Call sites", "paragraphs": ["src/include/fmgr.h:775"]}, {"code": "\t\t\t\t\t\t\t\tFmgrInfo *flinfo, Datum *arg);\n\nextern PGDLLIMPORT needs_fmgr_hook_type needs_fmgr_hook;\nextern PGDLLIMPORT fmgr_hook_type fmgr_hook;\n\n#define FmgrHookIsNeeded(fn_oid)\t\t\t\t\t\t\t\\\n\t(!needs_fmgr_hook ? false : (*needs_fmgr_hook)(fn_oid))\n\n#endif\t\t\t\t\t\t\t/* FMGR_H */", "title": "Core call context: src/include/fmgr.h:769\u2013777", "paragraphs": []}], "signature": "typedef bool (*needs_fmgr_hook_type) (Oid fn_oid);\nextern PGDLLIMPORT needs_fmgr_hook_type needs_fmgr_hook;", "description": ["Hooks for function calls"]}, "15": {"facts": [{"label": "Interface type", "value": "needs_fmgr_hook_type"}, {"label": "Header", "value": "src/include/fmgr.h"}, {"label": "Subsystem", "value": "Logging and function calls"}, {"label": "Initial value", "value": "NULL (no hook installed)"}], "related": [], "release": {"ref": "REL_15_STABLE", "label": "15", "major": "15", "channel": "stable", "revision": "0351991b8e7c7b64382e2f30ce581a8f276590a6"}, "sources": [{"url": "https://github.com/postgres/postgres/blob/0351991b8e7c7b64382e2f30ce581a8f276590a6/src/include/fmgr.h#L770", "path": "src/include/fmgr.h", "label": "Interface declaration", "sha256": "b56a1b91b4076f32336da5eb5d33591d22718be5559c40badc565620bc2feb4e"}, {"url": "https://github.com/postgres/postgres/blob/0351991b8e7c7b64382e2f30ce581a8f276590a6/src/backend/utils/fmgr/fmgr.c#L38", "path": "src/backend/utils/fmgr/fmgr.c", "label": "Core definition", "sha256": "f457cfce513c0ef2a5aefa69e29607f997039fb09dcbf8b26a36866bfdd9f2c4"}, {"url": "https://github.com/postgres/postgres/blob/0351991b8e7c7b64382e2f30ce581a8f276590a6/src/include/fmgr.h#L779", "path": "src/include/fmgr.h", "label": "Call sites", "sha256": "b56a1b91b4076f32336da5eb5d33591d22718be5559c40badc565620bc2feb4e"}], "sections": [{"title": "Call sites", "paragraphs": ["src/include/fmgr.h:779"]}, {"code": "\t\t\t\t\t\t\t\tFmgrInfo *flinfo, Datum *arg);\n\nextern PGDLLIMPORT needs_fmgr_hook_type needs_fmgr_hook;\nextern PGDLLIMPORT fmgr_hook_type fmgr_hook;\n\n#define FmgrHookIsNeeded(fn_oid)\t\t\t\t\t\t\t\\\n\t(!needs_fmgr_hook ? false : (*needs_fmgr_hook)(fn_oid))\n\n#endif\t\t\t\t\t\t\t/* FMGR_H */", "title": "Core call context: src/include/fmgr.h:773\u2013781", "paragraphs": []}], "signature": "typedef bool (*needs_fmgr_hook_type) (Oid fn_oid);\nextern PGDLLIMPORT needs_fmgr_hook_type needs_fmgr_hook;", "description": ["Hooks for function calls"]}, "16": {"facts": [{"label": "Interface type", "value": "needs_fmgr_hook_type"}, {"label": "Header", "value": "src/include/fmgr.h"}, {"label": "Subsystem", "value": "Logging and function calls"}, {"label": "Initial value", "value": "NULL (no hook installed)"}], "related": [], "release": {"ref": "REL_16_STABLE", "label": "16", "major": "16", "channel": "stable", "revision": "dcc37b7099a9f3cf2c75167d8dc92e75f96bc1fa"}, "sources": [{"url": "https://github.com/postgres/postgres/blob/dcc37b7099a9f3cf2c75167d8dc92e75f96bc1fa/src/include/fmgr.h#L789", "path": "src/include/fmgr.h", "label": "Interface declaration", "sha256": "fd781147ec3f936a4628b97c5df595b60cb06ea1756ac9966f5f3fc118827135"}, {"url": "https://github.com/postgres/postgres/blob/dcc37b7099a9f3cf2c75167d8dc92e75f96bc1fa/src/backend/utils/fmgr/fmgr.c#L39", "path": "src/backend/utils/fmgr/fmgr.c", "label": "Core definition", "sha256": "bbd18adf8af5806d03cc5cbbf1e7ec211dac6da0bc2f10dc03c0dc091efc831b"}, {"url": "https://github.com/postgres/postgres/blob/dcc37b7099a9f3cf2c75167d8dc92e75f96bc1fa/src/include/fmgr.h#L798", "path": "src/include/fmgr.h", "label": "Call sites", "sha256": "fd781147ec3f936a4628b97c5df595b60cb06ea1756ac9966f5f3fc118827135"}], "sections": [{"title": "Call sites", "paragraphs": ["src/include/fmgr.h:798"]}, {"code": "\t\t\t\t\t\t\t\tFmgrInfo *flinfo, Datum *arg);\n\nextern PGDLLIMPORT needs_fmgr_hook_type needs_fmgr_hook;\nextern PGDLLIMPORT fmgr_hook_type fmgr_hook;\n\n#define FmgrHookIsNeeded(fn_oid)\t\t\t\t\t\t\t\\\n\t(!needs_fmgr_hook ? false : (*needs_fmgr_hook)(fn_oid))\n\n#endif\t\t\t\t\t\t\t/* FMGR_H */", "title": "Core call context: src/include/fmgr.h:792\u2013800", "paragraphs": []}], "signature": "typedef bool (*needs_fmgr_hook_type) (Oid fn_oid);\nextern PGDLLIMPORT needs_fmgr_hook_type needs_fmgr_hook;", "description": ["Hooks for function calls"]}, "17": {"facts": [{"label": "Interface type", "value": "needs_fmgr_hook_type"}, {"label": "Header", "value": "src/include/fmgr.h"}, {"label": "Subsystem", "value": "Logging and function calls"}, {"label": "Initial value", "value": "NULL (no hook installed)"}], "related": [], "release": {"ref": "REL_17_STABLE", "label": "17", "major": "17", "channel": "stable", "revision": "163288afd32a448244c8df75b3c33181aadd7f20"}, "sources": [{"url": "https://github.com/postgres/postgres/blob/163288afd32a448244c8df75b3c33181aadd7f20/src/include/fmgr.h#L789", "path": "src/include/fmgr.h", "label": "Interface declaration", "sha256": "30fbfb8334403e5a33e9415def77c0c72e77b9765e04e0931d717578768338fc"}, {"url": "https://github.com/postgres/postgres/blob/163288afd32a448244c8df75b3c33181aadd7f20/src/backend/utils/fmgr/fmgr.c#L39", "path": "src/backend/utils/fmgr/fmgr.c", "label": "Core definition", "sha256": "faddb12f2f442ba4e932bc1991ca1bce96413e0b80f95b9a147fa46f5a704376"}, {"url": "https://github.com/postgres/postgres/blob/163288afd32a448244c8df75b3c33181aadd7f20/src/include/fmgr.h#L798", "path": "src/include/fmgr.h", "label": "Call sites", "sha256": "30fbfb8334403e5a33e9415def77c0c72e77b9765e04e0931d717578768338fc"}], "sections": [{"title": "Call sites", "paragraphs": ["src/include/fmgr.h:798"]}, {"code": "\t\t\t\t\t\t\t\tFmgrInfo *flinfo, Datum *arg);\n\nextern PGDLLIMPORT needs_fmgr_hook_type needs_fmgr_hook;\nextern PGDLLIMPORT fmgr_hook_type fmgr_hook;\n\n#define FmgrHookIsNeeded(fn_oid)\t\t\t\t\t\t\t\\\n\t(!needs_fmgr_hook ? false : (*needs_fmgr_hook)(fn_oid))\n\n#endif\t\t\t\t\t\t\t/* FMGR_H */", "title": "Core call context: src/include/fmgr.h:792\u2013800", "paragraphs": []}], "signature": "typedef bool (*needs_fmgr_hook_type) (Oid fn_oid);\nextern PGDLLIMPORT needs_fmgr_hook_type needs_fmgr_hook;", "description": ["Hooks for function calls"]}, "18": {"facts": [{"label": "Interface type", "value": "needs_fmgr_hook_type"}, {"label": "Header", "value": "src/include/fmgr.h"}, {"label": "Subsystem", "value": "Logging and function calls"}, {"label": "Initial value", "value": "NULL (no hook installed)"}], "related": [], "release": {"ref": "REL_18_STABLE", "label": "18", "major": "18", "channel": "stable", "revision": "753057e340da8f22e57c9a409ea7a235fd6a46bd"}, "sources": [{"url": "https://github.com/postgres/postgres/blob/753057e340da8f22e57c9a409ea7a235fd6a46bd/src/include/fmgr.h#L840", "path": "src/include/fmgr.h", "label": "Interface declaration", "sha256": "9ae7c92915f702ee93be2b6aed3574edfeb7fb2effae8beb256665f307db961b"}, {"url": "https://github.com/postgres/postgres/blob/753057e340da8f22e57c9a409ea7a235fd6a46bd/src/backend/utils/fmgr/fmgr.c#L39", "path": "src/backend/utils/fmgr/fmgr.c", "label": "Core definition", "sha256": "6cec6e3c08f69e71bfaa67294ac6889c9278a7963e2c676de709782c0c594e75"}, {"url": "https://github.com/postgres/postgres/blob/753057e340da8f22e57c9a409ea7a235fd6a46bd/src/include/fmgr.h#L849", "path": "src/include/fmgr.h", "label": "Call sites", "sha256": "9ae7c92915f702ee93be2b6aed3574edfeb7fb2effae8beb256665f307db961b"}], "sections": [{"title": "Call sites", "paragraphs": ["src/include/fmgr.h:849"]}, {"code": "\t\t\t\t\t\t\t\tFmgrInfo *flinfo, Datum *arg);\n\nextern PGDLLIMPORT needs_fmgr_hook_type needs_fmgr_hook;\nextern PGDLLIMPORT fmgr_hook_type fmgr_hook;\n\n#define FmgrHookIsNeeded(fn_oid)\t\t\t\t\t\t\t\\\n\t(!needs_fmgr_hook ? false : (*needs_fmgr_hook)(fn_oid))\n\n#endif\t\t\t\t\t\t\t/* FMGR_H */", "title": "Core call context: src/include/fmgr.h:843\u2013851", "paragraphs": []}], "signature": "typedef bool (*needs_fmgr_hook_type) (Oid fn_oid);\nextern PGDLLIMPORT needs_fmgr_hook_type needs_fmgr_hook;", "description": ["Hooks for function calls"]}, "19": {"facts": [{"label": "Interface type", "value": "needs_fmgr_hook_type"}, {"label": "Header", "value": "src/include/fmgr.h"}, {"label": "Subsystem", "value": "Logging and function calls"}, {"label": "Initial value", "value": "NULL (no hook installed)"}], "related": [], "release": {"ref": "REL_19_BETA4", "label": "19 Beta 4", "major": "19", "channel": "preview", "revision": "b73d13c32c834a2c8e1c60cb92f79530376cedf1"}, "sources": [{"url": "https://github.com/postgres/postgres/blob/b73d13c32c834a2c8e1c60cb92f79530376cedf1/src/include/fmgr.h#L846", "path": "src/include/fmgr.h", "label": "Interface declaration", "sha256": "463896e0eff1b6376a90e00797cff2713a3afe093876efc8023ec11aa7021150"}, {"url": "https://github.com/postgres/postgres/blob/b73d13c32c834a2c8e1c60cb92f79530376cedf1/src/backend/utils/fmgr/fmgr.c#L41", "path": "src/backend/utils/fmgr/fmgr.c", "label": "Core definition", "sha256": "f4fa54b31f33083c137aac63f84702aa008fe8cea88d6bf51e90fff4d1cef28a"}, {"url": "https://github.com/postgres/postgres/blob/b73d13c32c834a2c8e1c60cb92f79530376cedf1/src/include/fmgr.h#L855", "path": "src/include/fmgr.h", "label": "Call sites", "sha256": "463896e0eff1b6376a90e00797cff2713a3afe093876efc8023ec11aa7021150"}], "sections": [{"title": "Call sites", "paragraphs": ["src/include/fmgr.h:855"]}, {"code": "\t\t\t\t\t\t\t\tFmgrInfo *flinfo, Datum *arg);\n\nextern PGDLLIMPORT needs_fmgr_hook_type needs_fmgr_hook;\nextern PGDLLIMPORT fmgr_hook_type fmgr_hook;\n\n#define FmgrHookIsNeeded(fn_oid)\t\t\t\t\t\t\t\\\n\t(!needs_fmgr_hook ? false : (*needs_fmgr_hook)(fn_oid))\n\n#endif\t\t\t\t\t\t\t/* FMGR_H */", "title": "Core call context: src/include/fmgr.h:849\u2013857", "paragraphs": []}], "signature": "typedef bool (*needs_fmgr_hook_type) (Oid fn_oid);\nextern PGDLLIMPORT needs_fmgr_hook_type needs_fmgr_hook;", "description": ["Hooks for function calls"]}, "20": {"facts": [{"label": "Interface type", "value": "needs_fmgr_hook_type"}, {"label": "Header", "value": "src/include/fmgr.h"}, {"label": "Subsystem", "value": "Logging and function calls"}, {"label": "Initial value", "value": "NULL (no hook installed)"}], "related": [], "release": {"ref": "master", "label": "20 devel", "major": "20", "channel": "devel", "revision": "2c10c2ce4d7bcd57543a49ab402af02a39724e0a"}, "sources": [{"url": "https://github.com/postgres/postgres/blob/2c10c2ce4d7bcd57543a49ab402af02a39724e0a/src/include/fmgr.h#L846", "path": "src/include/fmgr.h", "label": "Interface declaration", "sha256": "0cf665ac5d9971af06c92d1227d08b9b720ed9d650062f7d826164d72d4dc9aa"}, {"url": "https://github.com/postgres/postgres/blob/2c10c2ce4d7bcd57543a49ab402af02a39724e0a/src/backend/utils/fmgr/fmgr.c#L41", "path": "src/backend/utils/fmgr/fmgr.c", "label": "Core definition", "sha256": "98da7c443110c5d71726341881ff36e42ee5d14feb4161a93ebece60af3b677f"}, {"url": "https://github.com/postgres/postgres/blob/2c10c2ce4d7bcd57543a49ab402af02a39724e0a/src/include/fmgr.h#L855", "path": "src/include/fmgr.h", "label": "Call sites", "sha256": "0cf665ac5d9971af06c92d1227d08b9b720ed9d650062f7d826164d72d4dc9aa"}], "sections": [{"title": "Call sites", "paragraphs": ["src/include/fmgr.h:855"]}, {"code": "\t\t\t\t\t\t\t\tFmgrInfo *flinfo, Datum *arg);\n\nextern PGDLLIMPORT needs_fmgr_hook_type needs_fmgr_hook;\nextern PGDLLIMPORT fmgr_hook_type fmgr_hook;\n\n#define FmgrHookIsNeeded(fn_oid)\t\t\t\t\t\t\t\\\n\t(!needs_fmgr_hook ? false : (*needs_fmgr_hook)(fn_oid))\n\n#endif\t\t\t\t\t\t\t/* FMGR_H */", "title": "Core call context: src/include/fmgr.h:849\u2013857", "paragraphs": []}], "signature": "typedef bool (*needs_fmgr_hook_type) (Oid fn_oid);\nextern PGDLLIMPORT needs_fmgr_hook_type needs_fmgr_hook;", "description": ["Hooks for function calls"]}}, "content_hash": "fe22e614f97783a981576de3cc32d98791fbe2759a6703742574d9279c711da5", "imported_at": "2026-09-27T09:57:58.845"}, "snapshot": {"facts": [{"label": "Interface type", "value": "needs_fmgr_hook_type"}, {"label": "Header", "value": "src/include/fmgr.h"}, {"label": "Subsystem", "value": "Logging and function calls"}, {"label": "Initial value", "value": "NULL (no hook installed)"}], "related": [], "release": {"ref": "REL_18_STABLE", "label": "18", "major": "18", "channel": "stable", "revision": "753057e340da8f22e57c9a409ea7a235fd6a46bd"}, "sources": [{"url": "https://github.com/postgres/postgres/blob/753057e340da8f22e57c9a409ea7a235fd6a46bd/src/include/fmgr.h#L840", "path": "src/include/fmgr.h", "label": "Interface declaration", "sha256": "9ae7c92915f702ee93be2b6aed3574edfeb7fb2effae8beb256665f307db961b"}, {"url": "https://github.com/postgres/postgres/blob/753057e340da8f22e57c9a409ea7a235fd6a46bd/src/backend/utils/fmgr/fmgr.c#L39", "path": "src/backend/utils/fmgr/fmgr.c", "label": "Core definition", "sha256": "6cec6e3c08f69e71bfaa67294ac6889c9278a7963e2c676de709782c0c594e75"}, {"url": "https://github.com/postgres/postgres/blob/753057e340da8f22e57c9a409ea7a235fd6a46bd/src/include/fmgr.h#L849", "path": "src/include/fmgr.h", "label": "Call sites", "sha256": "9ae7c92915f702ee93be2b6aed3574edfeb7fb2effae8beb256665f307db961b"}], "sections": [{"title": "Call sites", "paragraphs": ["src/include/fmgr.h:849"]}, {"code": "\t\t\t\t\t\t\t\tFmgrInfo *flinfo, Datum *arg);\n\nextern PGDLLIMPORT needs_fmgr_hook_type needs_fmgr_hook;\nextern PGDLLIMPORT fmgr_hook_type fmgr_hook;\n\n#define FmgrHookIsNeeded(fn_oid)\t\t\t\t\t\t\t\\\n\t(!needs_fmgr_hook ? false : (*needs_fmgr_hook)(fn_oid))\n\n#endif\t\t\t\t\t\t\t/* FMGR_H */", "title": "Core call context: src/include/fmgr.h:843\u2013851", "paragraphs": []}], "signature": "typedef bool (*needs_fmgr_hook_type) (Oid fn_oid);\nextern PGDLLIMPORT needs_fmgr_hook_type needs_fmgr_hook;", "description": ["Hooks for function calls"]}, "comparison": {"left": "17", "right": "18", "status": "unchanged", "diff": ""}}