First phase of work on array improvements. ARRAY[x,y,z] constructor

Tom Lane <tgl@sss.pgh.pa.us>

Commit: 730840c9b649a48604083270d48792915ca89233
Author: Tom Lane <tgl@sss.pgh.pa.us>
Date: 2003-04-08T23:20:04Z
Releases: 7.4.1
First phase of work on array improvements.  ARRAY[x,y,z] constructor
expressions, ARRAY(sub-SELECT) expressions, some array functions.
Polymorphic functions using ANYARRAY/ANYELEMENT argument and return
types.  Some regression tests in place, documentation is lacking.
Joe Conway, with some kibitzing from Tom Lane.

Files

PathChange+/−
src/backend/catalog/pg_proc.c modified +24 −1
src/backend/executor/execQual.c modified +208 −17
src/backend/executor/nodeSubplan.c modified +188 −12
src/backend/nodes/copyfuncs.c modified +22 −5
src/backend/nodes/equalfuncs.c modified +17 −5
src/backend/nodes/outfuncs.c modified +17 −5
src/backend/nodes/readfuncs.c modified +21 −5
src/backend/optimizer/plan/subselect.c modified +28 −17
src/backend/optimizer/util/clauses.c modified +140 −77
src/backend/parser/gram.y modified +62 −5
src/backend/parser/keywords.c modified +2 −1
src/backend/parser/parse_coerce.c modified +318 −26
src/backend/parser/parse_expr.c modified +122 −8
src/backend/parser/parse_func.c modified +39 −29
src/backend/parser/parse_node.c modified +6 −118
src/backend/parser/parse_oper.c modified +119 −1
src/backend/parser/parse_target.c modified +15 −5
src/backend/utils/adt/arrayfuncs.c modified +156 −23
src/backend/utils/adt/array_userfuncs.c added +436 −0
src/backend/utils/adt/Makefile modified +3 −3
src/backend/utils/adt/pseudotypes.c modified +24 −1
src/backend/utils/adt/ruleutils.c modified +36 −2
src/backend/utils/cache/lsyscache.c modified +82 −1
src/backend/utils/fmgr/fmgr.c modified +63 −1
src/backend/utils/fmgr/README modified +5 −1
src/include/catalog/catversion.h modified +2 −2
src/include/catalog/pg_operator.h modified +5 −53
src/include/catalog/pg_proc.h modified +22 −1
src/include/catalog/pg_type.h modified +3 −1
src/include/fmgr.h modified +4 −1
src/include/nodes/execnodes.h modified +25 −1
src/include/nodes/nodes.h modified +3 −1
src/include/nodes/primnodes.h modified +31 −16
src/include/parser/parse_coerce.h modified +10 −1
src/include/parser/parse_func.h modified +5 −1
src/include/parser/parse_node.h modified +1 −3
src/include/parser/parse_oper.h modified +6 −1
src/include/utils/array.h modified +21 −1
src/include/utils/builtins.h modified +3 −1
src/include/utils/lsyscache.h modified +5 −1
src/pl/plpgsql/src/pl_exec.c modified +11 −1
src/test/regress/expected/arrays.out modified +201 −0
src/test/regress/expected/opr_sanity.out modified +8 −4
src/test/regress/expected/type_sanity.out modified +0 −10
src/test/regress/sql/arrays.sql modified +74 −0
src/test/regress/sql/opr_sanity.sql modified +4 −2
src/test/regress/sql/type_sanity.sql modified +0 −8