On Mon, Apr 20, 2026 at 6:05 PM Amit Langote <amitlangote09@gmail.com> wrote:
> Agreed that v4 is the better direction.
Thanks for review!
> The comment on orig_query could say "not walked" a bit more helpfully, e.g.
>
> Node *orig_query; /* for deparse only; not walked (func is) */
Sounds good.
> I also noticed that the comment for 'func' is incomplete as it is and
> this change warrants an update. Maybe a bit long, but how about:
>
> Expr *func; /* expression producing the result:
> * Aggref/WindowFunc for *AGG,
> * CoalesceExpr for ARRAY_QUERY,
> * json[b]_xxx() call for remaining types */
It seems that func is NULL for "remaining types". How about we go
with:
Expr *func; /* executable expression:
* Aggref/WindowFunc for *AGG,
* CoalesceExpr for ARRAY_QUERY,
* NULL for other types (executor calls
* underlying json[b]_xxx() functions) */
(maybe we should place the multi-line comment above the field.)
- Richard