1
0
mirror of https://github.com/postgres/postgres.git synced 2025-11-16 15:02:33 +03:00

Creates the SubLink structure, and the Query->hasSubLink field,

with supporting code.

Creates SubLink node in gram.y.

psql.c patch for newatttypmod field.
This commit is contained in:
Bruce Momjian
1998-01-17 04:53:46 +00:00
parent c65ea0e040
commit b37bc65f44
10 changed files with 205 additions and 113 deletions

View File

@@ -6,7 +6,7 @@
*
* Copyright (c) 1994, Regents of the University of California
*
* $Id: primnodes.h,v 1.12 1998/01/04 04:31:37 momjian Exp $
* $Id: primnodes.h,v 1.13 1998/01/17 04:53:42 momjian Exp $
*
*-------------------------------------------------------------------------
*/
@@ -270,6 +270,33 @@ typedef struct Aggreg
bool usenulls;
} Aggreg;
/* ----------------
* SubLink
* subLinkType - EXISTS, ALL, ANY, EXPR
* useor - TRUE for <>
* lefthand - list of Var/Const nodes on the left
* oper - list of Oper nodes
* subselect - subselect as Query* or parsetree
* ----------------
*/
typedef enum SubLinkType
{
EXISTS_SUBLINK, ALL_SUBLINK, ANY_SUBLINK, EXPR_SUBLINK,
IN_SUBLINK, NOTIN_SUBLINK, OPER_SUBLINK
} SubLinkType;
typedef struct SubLink
{
struct Query;
NodeTag type;
SubLinkType subLinkType;
bool useor;
List *lefthand;
List *oper;
Node *subselect;
} SubLink;
/* ----------------
* Array
* arrayelemtype - base type of the array's elements (homogenous!)