aboutsummaryrefslogtreecommitdiff
path: root/src/backend/nodes/outfuncs.c
diff options
context:
space:
mode:
authorThomas G. Lockhart <lockhart@fourpalms.org>2000-02-15 03:38:29 +0000
committerThomas G. Lockhart <lockhart@fourpalms.org>2000-02-15 03:38:29 +0000
commita344a6e7b5d7b2b87f33a155c3ef88bdfdce3fd8 (patch)
tree78c19baad416cfe014237bc726baff63aff2b150 /src/backend/nodes/outfuncs.c
parent92c8437d8de8efeb5324fcccb0175beec8e66619 (diff)
downloadpostgresql-a344a6e7b5d7b2b87f33a155c3ef88bdfdce3fd8.tar.gz
postgresql-a344a6e7b5d7b2b87f33a155c3ef88bdfdce3fd8.zip
Carry column aliases from the parser frontend. Enables queries like
SELECT a FROM t1 tx (a); Allow join syntax, including queries like SELECT * FROM t1 NATURAL JOIN t2; Update RTE structure to hold column aliases in an Attr structure.
Diffstat (limited to 'src/backend/nodes/outfuncs.c')
-rw-r--r--src/backend/nodes/outfuncs.c20
1 files changed, 6 insertions, 14 deletions
diff --git a/src/backend/nodes/outfuncs.c b/src/backend/nodes/outfuncs.c
index 8923510e1b4..e4c35cc277f 100644
--- a/src/backend/nodes/outfuncs.c
+++ b/src/backend/nodes/outfuncs.c
@@ -6,7 +6,7 @@
* Portions Copyright (c) 1996-2000, PostgreSQL, Inc
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $Header: /cvsroot/pgsql/src/backend/nodes/outfuncs.c,v 1.106 2000/02/07 04:40:57 tgl Exp $
+ * $Header: /cvsroot/pgsql/src/backend/nodes/outfuncs.c,v 1.107 2000/02/15 03:37:09 thomas Exp $
*
* NOTES
* Every (plan) node in POSTGRES has an associated "out" routine which
@@ -954,8 +954,8 @@ _outRangeTblEntry(StringInfo str, RangeTblEntry *node)
{
appendStringInfo(str, " RTE :relname ");
_outToken(str, node->relname);
- appendStringInfo(str, " :refname ");
- _outToken(str, node->refname);
+ appendStringInfo(str, " :ref ");
+ _outNode(str, node->ref);
appendStringInfo(str,
" :relid %u :inh %s :inFromCl %s :inJoinSet %s :skipAcl %s",
node->relid,
@@ -1273,18 +1273,10 @@ _outIdent(StringInfo str, Ident *node)
static void
_outAttr(StringInfo str, Attr *node)
{
- List *l;
-
- appendStringInfo(str, " ATTR ");
+ appendStringInfo(str, " ATTR :relname ");
_outToken(str, node->relname);
- appendStringInfo(str, " (");
- foreach(l, node->attrs)
- {
- _outNode(str, lfirst(l));
- if (lnext(l))
- appendStringInfo(str, " ");
- }
- appendStringInfo(str, ")");
+ appendStringInfo(str, " :attrs ");
+ _outNode(str, node->attrs);
}
static void