diff options
author | Thomas G. Lockhart <lockhart@fourpalms.org> | 2000-02-15 03:38:29 +0000 |
---|---|---|
committer | Thomas G. Lockhart <lockhart@fourpalms.org> | 2000-02-15 03:38:29 +0000 |
commit | a344a6e7b5d7b2b87f33a155c3ef88bdfdce3fd8 (patch) | |
tree | 78c19baad416cfe014237bc726baff63aff2b150 /src/backend/nodes/freefuncs.c | |
parent | 92c8437d8de8efeb5324fcccb0175beec8e66619 (diff) | |
download | postgresql-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/freefuncs.c')
-rw-r--r-- | src/backend/nodes/freefuncs.c | 27 |
1 files changed, 24 insertions, 3 deletions
diff --git a/src/backend/nodes/freefuncs.c b/src/backend/nodes/freefuncs.c index ab308fe3101..690da02de85 100644 --- a/src/backend/nodes/freefuncs.c +++ b/src/backend/nodes/freefuncs.c @@ -8,7 +8,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/nodes/Attic/freefuncs.c,v 1.34 2000/02/07 04:40:57 tgl Exp $ + * $Header: /cvsroot/pgsql/src/backend/nodes/Attic/freefuncs.c,v 1.35 2000/02/15 03:37:08 thomas Exp $ * *------------------------------------------------------------------------- */ @@ -1013,8 +1013,19 @@ _freeRangeTblEntry(RangeTblEntry *node) { if (node->relname) pfree(node->relname); - if (node->refname) - pfree(node->refname); + if (node->ref) + freeObject(node->ref); + + pfree(node); +} + +static void +_freeAttr(Attr *node) +{ + if (node->relname) + pfree(node->relname); + if (node->attrs) + freeObject(node->attrs); pfree(node); } @@ -1308,6 +1319,9 @@ freeObject(void *node) case T_TypeCast: _freeTypeCast(node); break; + case T_Attr: + _freeAttr(node); + break; /* * VALUE NODES @@ -1332,3 +1346,10 @@ freeObject(void *node) break; } } + + + + + + + |