diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2002-04-09 20:35:55 +0000 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2002-04-09 20:35:55 +0000 |
commit | f2d70d32ebd6c38d4fe93c1a684f5f29e5e76938 (patch) | |
tree | 5d041018177cdf6e9ca3ef0cc2eafac580a5bb0b /src/backend/parser/parse_expr.c | |
parent | c419c224142eb4bbf6e9a47d2d3626f212fda0fc (diff) | |
download | postgresql-f2d70d32ebd6c38d4fe93c1a684f5f29e5e76938.tar.gz postgresql-f2d70d32ebd6c38d4fe93c1a684f5f29e5e76938.zip |
Functions live in namespaces. Qualified function names work, eg
SELECT schema1.func2(...). Aggregate names can be qualified at the
syntactic level, but the qualification is ignored for the moment.
Diffstat (limited to 'src/backend/parser/parse_expr.c')
-rw-r--r-- | src/backend/parser/parse_expr.c | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/src/backend/parser/parse_expr.c b/src/backend/parser/parse_expr.c index 2a5a7698d85..f8449716061 100644 --- a/src/backend/parser/parse_expr.c +++ b/src/backend/parser/parse_expr.c @@ -8,7 +8,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/parser/parse_expr.c,v 1.112 2002/03/29 19:06:11 tgl Exp $ + * $Header: /cvsroot/pgsql/src/backend/parser/parse_expr.c,v 1.113 2002/04/09 20:35:52 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -129,7 +129,8 @@ transformExpr(ParseState *pstate, Node *expr) /* handle qualification, if any */ foreach(fields, pref->fields) { - result = ParseFuncOrColumn(pstate, strVal(lfirst(fields)), + result = ParseFuncOrColumn(pstate, + makeList1(lfirst(fields)), makeList1(result), false, false, true); } @@ -158,7 +159,8 @@ transformExpr(ParseState *pstate, Node *expr) /* handle qualification, if any */ foreach(fields, efs->fields) { - result = ParseFuncOrColumn(pstate, strVal(lfirst(fields)), + result = ParseFuncOrColumn(pstate, + makeList1(lfirst(fields)), makeList1(result), false, false, true); } @@ -728,7 +730,8 @@ transformColumnRef(ParseState *pstate, ColumnRef *cref) rv = makeNode(RangeVar); rv->relname = name1; rv->inhOpt = INH_DEFAULT; - node = ParseFuncOrColumn(pstate, name2, + node = ParseFuncOrColumn(pstate, + makeList1(makeString(name2)), makeList1(rv), false, false, true); } @@ -761,7 +764,8 @@ transformColumnRef(ParseState *pstate, ColumnRef *cref) rv->schemaname = name1; rv->relname = name2; rv->inhOpt = INH_DEFAULT; - node = ParseFuncOrColumn(pstate, name3, + node = ParseFuncOrColumn(pstate, + makeList1(makeString(name3)), makeList1(rv), false, false, true); } @@ -801,7 +805,8 @@ transformColumnRef(ParseState *pstate, ColumnRef *cref) rv->schemaname = name2; rv->relname = name3; rv->inhOpt = INH_DEFAULT; - node = ParseFuncOrColumn(pstate, name4, + node = ParseFuncOrColumn(pstate, + makeList1(makeString(name4)), makeList1(rv), false, false, true); } |