From 0a8e9c4e7f1b4866b5ed9cbe9349ca85232e76c0 Mon Sep 17 00:00:00 2001
From: "Thomas G. Lockhart" <lockhart@fourpalms.org>
Date: Tue, 23 Feb 1999 07:55:24 +0000
Subject: [PATCH] Define JoinExpr structure for outer join syntax. Clean up
 comments in execnodes.h.

---
 src/include/nodes/execnodes.h  |  4 ++--
 src/include/nodes/nodes.h      |  4 ++--
 src/include/nodes/parsenodes.h | 28 ++++++++++++++--------------
 3 files changed, 18 insertions(+), 18 deletions(-)

diff --git a/src/include/nodes/execnodes.h b/src/include/nodes/execnodes.h
index 0c0f86993bb..59962ddb808 100644
--- a/src/include/nodes/execnodes.h
+++ b/src/include/nodes/execnodes.h
@@ -6,7 +6,7 @@
  *
  * Copyright (c) 1994, Regents of the University of California
  *
- * $Id: execnodes.h,v 1.24 1999/02/13 23:21:37 momjian Exp $
+ * $Id: execnodes.h,v 1.25 1999/02/23 07:55:23 thomas Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -607,7 +607,7 @@ typedef struct GroupState
  *	 SortState information
  *
  *|		sort nodes are really just a kind of a scan since
- *|		we implement sorts by retrieveing the entire subplan
+ *|		we implement sorts by retrieving the entire subplan
  *|		into a temp relation, sorting the temp relation into
  *|		another sorted relation, and then preforming a simple
  *|		unqualified sequential scan on the sorted relation..
diff --git a/src/include/nodes/nodes.h b/src/include/nodes/nodes.h
index 65733ce7f41..4dd868b6810 100644
--- a/src/include/nodes/nodes.h
+++ b/src/include/nodes/nodes.h
@@ -6,7 +6,7 @@
  *
  * Copyright (c) 1994, Regents of the University of California
  *
- * $Id: nodes.h,v 1.43 1999/02/13 23:21:38 momjian Exp $
+ * $Id: nodes.h,v 1.44 1999/02/23 07:55:24 thomas Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -215,7 +215,7 @@ typedef enum NodeTag
 	T_SortClause,
 	T_GroupClause,
 	T_SubSelect,
-	T_JoinUsing,
+	T_JoinExpr,
 	T_CaseExpr,
 	T_CaseWhen,
 	T_RowMark
diff --git a/src/include/nodes/parsenodes.h b/src/include/nodes/parsenodes.h
index 384a5028f14..c55a8cf93b6 100644
--- a/src/include/nodes/parsenodes.h
+++ b/src/include/nodes/parsenodes.h
@@ -6,7 +6,7 @@
  *
  * Copyright (c) 1994, Regents of the University of California
  *
- * $Id: parsenodes.h,v 1.70 1999/02/13 23:21:39 momjian Exp $
+ * $Id: parsenodes.h,v 1.71 1999/02/23 07:55:24 thomas Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -149,7 +149,7 @@ typedef struct CreateStmt
 
 typedef enum ConstrType			/* type of constaints */
 {
-	CONSTR_NONE, CONSTR_NOTNULL, CONSTR_DEFAULT, CONSTR_CHECK, CONSTR_PRIMARY, CONSTR_UNIQUE
+	CONSTR_NULL, CONSTR_NOTNULL, CONSTR_DEFAULT, CONSTR_CHECK, CONSTR_PRIMARY, CONSTR_UNIQUE
 } ConstrType;
 
 typedef struct Constraint
@@ -671,7 +671,6 @@ typedef struct SelectStmt
 	List	   *forUpdate;		/* FOR UPDATE clause */
 } SelectStmt;
 
-
 /****************************************************************************
  *	Supporting data structures for Parse Trees
  ****************************************************************************/
@@ -854,17 +853,6 @@ typedef struct SortGroupBy
 	Node	   *node;			/* Expression  */
 } SortGroupBy;
 
-/*
- * JoinUsing - for JOIN USING clause
- */
-typedef struct JoinUsing
-{
-	NodeTag		type;
-	int			resno;			/* target number */
-	char	   *range;
-	char	   *name;			/* name of column to sort on */
-}			JoinUsing;
-
 /*
  * RangeVar - range variable, used in FROM clauses
  */
@@ -898,6 +886,18 @@ typedef struct DefElem
 	Node	   *arg;			/* a (Value *) or a (TypeName *) */
 } DefElem;
 
+/*
+ * JoinExpr - for JOIN expressions
+ */
+typedef struct JoinExpr
+{
+	NodeTag		type;
+	int			jointype;
+	RangeVar   *larg;
+	Node	   *rarg;
+	List	   *quals;
+} JoinExpr;
+
 
 /****************************************************************************
  *	Nodes for a Query tree
-- 
GitLab