Hi,

    the  following  little  patch  adds array references to query
    parameters. With it applied a function like

    CREATE FUNCTION getname(oid8, int4) RETURNS name AS
        'SELECT typname FROM pg_type WHERE oid = $1[$2]'
        LANGUAGE 'sql';

    is possible. Mainly I need this to enable array references in
    expressions for PL/pgSQL. Complete regression test ran O.K.


Jan

--

#======================================================================#
# It's easier to get forgiveness for being wrong than for being right. #
# Let's break this rule - forgive me.                                  #
#======================================== jwieck@debis.com (Jan Wieck) #


begin 644 paramarray.diff
M9&EF9B`M8W(@<W)C+F]R:6<O8F%C:V5N9"]P87)S97(O9W)A;2YY('-R8R]B
M86-K96YD+W!A<G-E<B]G<F%M+GD**BHJ('-R8RYO<FEG+V)A8VME;F0O<&%R
M<V5R+V=R86TN>0E&<FD@3V-T("`R(#$R.C4X.C`V(#$Y.3@*+2TM('-R8R]B
M86-K96YD+W!A<G-E<B]G<F%M+GD)1G)I($]C="`@,B`Q,CHU.3HP.2`Q.3DX
M"BHJ*BHJ*BHJ*BHJ*BHJ*@HJ*BH@-#4Y."PT-C`W("HJ*BH*("`)"0D)?0H@
M(`D).PH@(`HA(%!A<F%M3F\Z("!005)!30H@(`D)"0E["B`@"0D)"0DD)"`]
M(&UA:V5.;V1E*%!A<F%M3F\I.PH@(`D)"0D))"0M/FYU;6)E<B`]("0Q.PH@
M(`D)"0E]"B`@"0D["B`@"BTM+2`T-3DX+#0V,#@@+2TM+0H@(`D)"0E]"B`@
M"0D["B`@"B$@4&%R86U.;SH@(%!!4D%-(&]P=%]I;F1I<F5C=&EO;@H@(`D)
M"0E["B`@"0D)"0DD)"`](&UA:V5.;V1E*%!A<F%M3F\I.PH@(`D)"0D))"0M
M/FYU;6)E<B`]("0Q.PHK(`D)"0D))"0M/FEN9&ER96-T:6]N(#T@)#(["B`@
M"0D)"7T*("`)"3L*("`*9&EF9B`M8W(@<W)C+F]R:6<O8F%C:V5N9"]P87)S
M97(O<&%R<V5?97AP<BYC('-R8R]B86-K96YD+W!A<G-E<B]P87)S95]E>'!R
M+F,**BHJ('-R8RYO<FEG+V)A8VME;F0O<&%R<V5R+W!A<G-E7V5X<'(N8PE&
M<FD@3V-T("`R(#$R.C4X.C`V(#$Y.3@*+2TM('-R8R]B86-K96YD+W!A<G-E
M<B]P87)S95]E>'!R+F,)1G)I($]C="`@,B`Q,CHU.3HP.2`Q.3DX"BHJ*BHJ
M*BHJ*BHJ*BHJ*@HJ*BH@,3(R+#$R."`J*BHJ"B`@"0D)"7!A<F%M+3YP87)A
M;71Y<&4@/2`H3VED*2!T;VED.PH@(`D)"0EP87)A;2T^<&%R86U?=&QI<W0@
M/2`H3&ES="`J*2!.54Q,.PH@(`HA(`D)"0ER97-U;'0@/2`H3F]D92`J*2!P
M87)A;3L*("`)"0D)8G)E86L["B`@"0D)?0H@(`D)8V%S92!47T%?17AP<CH*
M+2TM(#$R,BPQ-C`@+2TM+0H@(`D)"0EP87)A;2T^<&%R86UT>7!E(#T@*$]I
M9"D@=&]I9#L*("`)"0D)<&%R86TM/G!A<F%M7W1L:7-T(#T@*$QI<W0@*BD@
M3E5,3#L*("`*(2`)"0D):68@*'!N;RT^:6YD:7)E8W1I;VX@(3T@3DE,*0HA
M(`D)"0E["B$@"0D)"0E,:7-T"2`@("II9'@@/2!P;F\M/FEN9&ER96-T:6]N
M.PHA(`HA(`D)"0D)=VAI;&4@*&ED>"`A/2!.24PI"B$@"0D)"0E["B$@"0D)
M"0D)05]);F1I8V5S("`J86D@/2`H05]);F1I8V5S("HI(&QF:7)S="AI9'@I
M.PHA(`D)"0D)"4YO9&4)("`@*FQE>'!R(#T@3E5,3"P*(2`)"0D)"0D)"2`@
M("IU97AP<CL*(2`*(2`)"0D)"0EU97AP<B`]('1R86YS9F]R;45X<'(H<'-T
M871E+"!A:2T^=6ED>"P@<')E8V5D96YC92D["2\J(&UU<W0@97AI<W1S("HO
M"B$@"0D)"0D):68@*&5X<')4>7!E*'5E>'!R*2`A/2!)3E0T3TE$*0HA(`D)
M"0D)"0EE;&]G*$524D]2+"`B87)R87D@:6YD97@@97AP<F5S<VEO;G,@;75S
M="!B92!I;G0T)W,B*3L*(2`)"0D)"0EI9B`H86DM/FQI9'@@(3T@3E5,3"D*
M(2`)"0D)"0E["B$@"0D)"0D)"6QE>'!R(#T@=')A;G-F;W)M17AP<BAP<W1A
M=&4L(&%I+3YL:61X+"!P<F5C961E;F-E*3L*(2`)"0D)"0D):68@*&5X<')4
M>7!E*&QE>'!R*2`A/2!)3E0T3TE$*0HA(`D)"0D)"0D)96QO9RA%4E)/4BP@
M(F%R<F%Y(&EN9&5X(&5X<')E<W-I;VYS(&UU<W0@8F4@:6YT-"=S(BD["B$@
M"0D)"0D)?0HA(`D)"0D)"6%I+3YL:61X(#T@;&5X<'(["B$@"0D)"0D)86DM
M/G5I9'@@/2!U97AP<CL*(2`*(2`)"0D)"0DO*@HA(`D)"0D)"2`J(&YO=&4@
M=V4@<F5U<V4@=&AE(&QI<W0@;V8@:6YD:6-E<RP@;6%K92!S=7)E('=E"B$@
M"0D)"0D)("H@9&]N)W0@9G)E92!T:&5M(2!/=&AE<G=I<V4L(&UA:V4@82!N
M97<@;&ES=`HA(`D)"0D)"2`J(&AE<F4*(2`)"0D)"0D@*B\*(2`)"0D)"0EI
M9'@@/2!L;F5X="AI9'@I.PHA(`D)"0D)?0HA(`D)"0D)<F5S=6QT(#T@*$YO
M9&4@*BD@;6%K95]A<G)A>5]R968H*$YO9&4@*BEP87)A;2P@<&YO+3YI;F1I
M<F5C=&EO;BD["B$@"0D)"7T*(2`)"0D)96QS90HA(`D)"0D)<F5S=6QT(#T@
M*$YO9&4@*BD@<&%R86T["B`@"0D)"6)R96%K.PH@(`D)"7T*("`)"6-A<V4@
M5%]!7T5X<'(Z"F1I9F8@+6-R('-R8RYO<FEG+VEN8VQU9&4O;F]D97,O<&%R
M<V5N;V1E<RYH('-R8R]I;F-L=61E+VYO9&5S+W!A<G-E;F]D97,N:`HJ*BH@
M<W)C+F]R:6<O:6YC;'5D92]N;V1E<R]P87)S96YO9&5S+F@)1G)I($]C="`@
M,B`Q,CHU.#HR-"`Q.3DX"BTM+2!S<F,O:6YC;'5D92]N;V1E<R]P87)S96YO
M9&5S+F@)1G)I($]C="`@,B`Q,CHU.3HU-B`Q.3DX"BHJ*BHJ*BHJ*BHJ*BHJ
M*@HJ*BH@-C8W+#8W,B`J*BHJ"BTM+2`V-C<L-C<S("TM+2T*("`)3F]D951A
M9PD)='EP93L*("`):6YT"0D);G5M8F5R.PD)"2\J('1H92!N=6UB97(@;V8@
M=&AE('!A<F%M971E<B`J+PH@(`E4>7!E3F%M92`@("IT>7!E;F%M93L)"2\J
M('1H92!T>7!E8V%S="`J+PHK(`E,:7-T"2`@("II;F1I<F5C=&EO;CL)+RH@
I87)R87D@<F5F97)E;F-E<R`J+PH@('T@4&%R86U.;SL*("`*("`O*@H`
`
end

Fri, 2 Oct 1998 14:20:07 +0200 (MET DST)
jwieck@debis.com (Jan Wieck)
Patch - please apply
Applied.

> Hi,
> 
>     the  following  little  patch  adds array references to query
>     parameters. With it applied a function like
> 
>     CREATE FUNCTION getname(oid8, int4) RETURNS name AS
>         'SELECT typname FROM pg_type WHERE oid = $1[$2]'
>         LANGUAGE 'sql';
> 
>     is possible. Mainly I need this to enable array references in
>     expressions for PL/pgSQL. Complete regression test ran O.K.
> 
> 
> Jan
> 
> --
> 
> #======================================================================#
> # It's easier to get forgiveness for being wrong than for being right. #
> # Let's break this rule - forgive me.                                  #
> #======================================== jwieck@debis.com (Jan Wieck) #


-- 
  Bruce Momjian                        |  http://www.op.net/~candle
  maillist@candle.pha.pa.us            |  (610) 853-3000
  +  If your life is a hard drive,     |  830 Blythe Avenue
  +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026


Fri, 2 Oct 1998 12:21:36 -0400 (EDT)
Bruce Momjian <maillist@candle.pha.pa.us>
Re: [HACKERS] Patch - please apply