Bruce Momjian wrote:
>
> > typedef struct SubLink {
> > NodeTag type;
> > int linkType; /* EXISTS, ALL, ANY, EXPR */
> > bool useor; /* TRUE for <> */
> > List *lefthand; /* List of Var/Const nodes on the left */
> > List *oper; /* List of Oper nodes */
> > Query *subquery; /* */
> > } SubLink;
>
> OK, we add this structure above. During parsing, *subquery actually
> will hold Node *parsetree, not Query *.
^^^^^^^^^^^^^^^
But optimizer will get node Query here, yes ?
>
> And add to Query:
>
> bool hasSubLinks;
>
> Also need a function to return a List* of SubLink*. I just did a
> similar thing with Aggreg*. And Var gets:
>
> int uplevels;
>
> Is that it?
Yes.
Vadim