Andres Freund <andres@anarazel.de> writes:
> On 2016-03-10 14:16:03 -0500, Tom Lane wrote:
>> I don't deny that you *could* continue to do things that way, but
>> I dispute that it's a good idea. Why can't you generate a Path tree
>> and then ask create_plan() to convert it?
> Primarily because create_plan(), and/or its children, have to know about
> what you're doing; you can hide some, but not all, things below
> CustomScan nodes.
And which of those things does e.g. setrefs.c not need to know about?
> ISTM, that there's good enough reasons to go either way; I don't see
> what we're gaining by making these private. That just encourages
> copy-paste coding.
What it encourages is having module boundaries that actually mean
something, as well as code that can be refactored without having
to worry about which extensions will complain about it.
I will yield on this point because it's not worth my time to argue about
it, but I continue to say that it's a bad decision you will regret.
Which functions did you need exactly? I'm not exporting more than
I have to.
regards, tom lane