On Mon, Oct 14, 2024 at 7:03 PM Dean Rasheed <dean.a.rash...@gmail.com> wrote:
>
> > > typedef struct ReturningOption
> > > {
> > >     NodeTag        type;
> > >     bool        isNew;
> > >     char       *name;
> > >     int            location;
> > > } ReturningOption;
>
> Thinking about that struct some more, I think "isNew" is better done
> as an enum, since this is meant to be a generic option. So even though
> it might never have more than 2 possible values, I think it's neater
> done that way.
>

typedef struct ReturningOption
{
    NodeTag        type;
    ReturningOptionKind option; /* specified option */
    char       *value;            /* option's value */
    ParseLoc    location;        /* token location, or -1 if unknown */
} ReturningOption;



@@ -4304,6 +4332,16 @@ raw_expression_tree_walker_impl(Node *no
  return true;
  }
  break;
+ case T_ReturningClause:
+ {
+ ReturningClause *returning = (ReturningClause *) node;
+
+ if (WALK(returning->options))
+ return true;
+ if (WALK(returning->exprs))
+ return true;
+ }
+ break;


+ if (WALK(returning->options))
+ return true;
T_ReturningOption is primitive, so we only need to
"if (WALK(returning->exprs))"?


Reply via email to