Re: RfD: more powerful "any" types

Поиск
Список
Период
Сортировка
Искать
От
Hannu Krosing
Тема
Re: RfD: more powerful "any" types
Дата
Msg-id
1252874269.3868.4.camel@hvost1700
Ответ на
Список
Дерево обсуждения
RfD: more powerful "any" types Alvaro Herrera <alvherre@commandprompt.com>
Re: RfD: more powerful "any" types David Fetter <david@fetter.org>
Re: RfD: more powerful "any" types James Pye <lists@jwp.name>
Re: RfD: more powerful "any" types Tom Lane <tgl@sss.pgh.pa.us>
Re: RfD: more powerful "any" types Alvaro Herrera <alvherre@commandprompt.com>
Re: RfD: more powerful "any" types Tom Lane <tgl@sss.pgh.pa.us>
Re: RfD: more powerful "any" types "David E. Wheeler" <david@kineticode.com>
Re: RfD: more powerful "any" types Tom Lane <tgl@sss.pgh.pa.us>
Re: RfD: more powerful "any" types "David E. Wheeler" <david@kineticode.com>
Re: RfD: more powerful "any" types Peter Eisentraut <peter_e@gmx.net>
Re: RfD: more powerful "any" types James Pye <lists@jwp.name>
Re: RfD: more powerful "any" types Alvaro Herrera <alvherre@commandprompt.com>
Re: RfD: more powerful "any" types Peter Eisentraut <peter_e@gmx.net>
Re: RfD: more powerful "any" types Tom Lane <tgl@sss.pgh.pa.us>
Re: RfD: more powerful "any" types Hannu Krosing <hannu@2ndQuadrant.com>
Re: RfD: more powerful "any" types Tom Lane <tgl@sss.pgh.pa.us>
Re: RfD: more powerful "any" types Peter Eisentraut <peter_e@gmx.net>
Re: RfD: more powerful "any" types Dimitri Fontaine <dfontaine@hi-media.com>
Re: RfD: more powerful "any" types Hannu Krosing <hannu@2ndQuadrant.com>
Re: RfD: more powerful "any" types Hannu Krosing <hannu@krosing.net>
Re: RfD: more powerful "any" types Pavel Stehule <pavel.stehule@gmail.com>
Re: RfD: more powerful "any" types Pavel Stehule <pavel.stehule@gmail.com>
Re: RfD: more powerful "any" types decibel <decibel@decibel.org>
Re: RfD: more powerful "any" types "David E. Wheeler" <david@kineticode.com>
Re: RfD: more powerful "any" types Tom Lane <tgl@sss.pgh.pa.us>
Re: RfD: more powerful "any" types Alvaro Herrera <alvherre@commandprompt.com>
Re: RfD: more powerful "any" types Tom Lane <tgl@sss.pgh.pa.us>
Re: RfD: more powerful "any" types Alvaro Herrera <alvherre@commandprompt.com>
Re: RfD: more powerful "any" types Tom Lane <tgl@sss.pgh.pa.us>
Re: RfD: more powerful "any" types Alvaro Herrera <alvherre@commandprompt.com>
Re: RfD: more powerful "any" types "David E. Wheeler" <david@kineticode.com>
Re: RfD: more powerful "any" types Tom Lane <tgl@sss.pgh.pa.us>
Re: RfD: more powerful "any" types "David E. Wheeler" <david@kineticode.com>
Re: RfD: more powerful "any" types Robert Haas <robertmhaas@gmail.com>
Re: RfD: more powerful "any" types Hannu Krosing <hannu@2ndQuadrant.com>
Re: RfD: more powerful "any" types Pavel Stehule <pavel.stehule@gmail.com>
Re: RfD: more powerful "any" types Robert Haas <robertmhaas@gmail.com>
Re: RfD: more powerful "any" types Pavel Stehule <pavel.stehule@gmail.com>
Re: RfD: more powerful "any" types Tom Lane <tgl@sss.pgh.pa.us>
Re: RfD: more powerful "any" types Pavel Stehule <pavel.stehule@gmail.com>
Re: RfD: more powerful "any" types Tom Lane <tgl@sss.pgh.pa.us>
Re: RfD: more powerful "any" types Pavel Stehule <pavel.stehule@gmail.com>
Re: RfD: more powerful "any" types Hannu Krosing <hannu@krosing.net>
Re: RfD: more powerful "any" types Pavel Stehule <pavel.stehule@gmail.com>
Re: RfD: more powerful "any" types Robert Haas <robertmhaas@gmail.com>
Re: RfD: more powerful "any" types Hannu Krosing <hannu@2ndQuadrant.com>
Re: RfD: more powerful "any" types Pavel Stehule <pavel.stehule@gmail.com>
Re: RfD: more powerful "any" types Hannu Krosing <hannu@2ndQuadrant.com>
Re: RfD: more powerful "any" types Pavel Stehule <pavel.stehule@gmail.com>
Re: RfD: more powerful "any" types Tom Lane <tgl@sss.pgh.pa.us>
Re: RfD: more powerful "any" types Hannu Krosing <hannu@2ndQuadrant.com>
Re: RfD: more powerful "any" types Robert Haas <robertmhaas@gmail.com>
Re: RfD: more powerful "any" types Hannu Krosing <hannu@2ndQuadrant.com>
Re: RfD: more powerful "any" types Pavel Stehule <pavel.stehule@gmail.com>
Re: RfD: more powerful "any" types Robert Haas <robertmhaas@gmail.com>
Re: RfD: more powerful "any" types "David E. Wheeler" <david@kineticode.com>
Re: RfD: more powerful "any" types Dimitri Fontaine <dfontaine@hi-media.com>
Re: RfD: more powerful "any" types Pavel Stehule <pavel.stehule@gmail.com>
Re: RfD: more powerful "any" types Robert Haas <robertmhaas@gmail.com>
Re: RfD: more powerful "any" types Pavel Stehule <pavel.stehule@gmail.com>
Re: RfD: more powerful "any" types Tom Lane <tgl@sss.pgh.pa.us>
Re: RfD: more powerful "any" types Robert Haas <robertmhaas@gmail.com>
Re: RfD: more powerful "any" types Alvaro Herrera <alvherre@commandprompt.com>
Re: RfD: more powerful "any" types decibel <decibel@decibel.org>
Re: RfD: more powerful "any" types Tom Lane <tgl@sss.pgh.pa.us>
Re: RfD: more powerful "any" types Sam Mason <sam@samason.me.uk>
Re: RfD: more powerful "any" types Robert Haas <robertmhaas@gmail.com>
Re: RfD: more powerful "any" types "Kevin Grittner" <Kevin.Grittner@wicourts.gov>
Re: RfD: more powerful "any" types "David E. Wheeler" <david@kineticode.com>
Re: RfD: more powerful "any" types Tom Lane <tgl@sss.pgh.pa.us>
Re: RfD: more powerful "any" types "David E. Wheeler" <david@kineticode.com>
Re: RfD: more powerful "any" types Pavel Stehule <pavel.stehule@gmail.com>
Re: RfD: more powerful "any" types Tom Lane <tgl@sss.pgh.pa.us>
Re: RfD: more powerful "any" types Pavel Stehule <pavel.stehule@gmail.com>
Re: RfD: more powerful "any" types Alvaro Herrera <alvherre@commandprompt.com>
Re: RfD: more powerful "any" types Pavel Stehule <pavel.stehule@gmail.com>
Re: RfD: more powerful "any" types Alvaro Herrera <alvherre@commandprompt.com>
Re: RfD: more powerful "any" types Pavel Stehule <pavel.stehule@gmail.com>
Re: RfD: more powerful "any" types Alvaro Herrera <alvherre@commandprompt.com>
Re: RfD: more powerful "any" types Pavel Stehule <pavel.stehule@gmail.com>
Re: RfD: more powerful "any" types Hannu Krosing <hannu@krosing.net>
Re: RfD: more powerful "any" types Pavel Stehule <pavel.stehule@gmail.com>
Re: RfD: more powerful "any" types Alvaro Herrera <alvherre@commandprompt.com>
Re: RfD: more powerful "any" types Pavel Stehule <pavel.stehule@gmail.com>
Re: RfD: more powerful "any" types Tom Lane <tgl@sss.pgh.pa.us>
Re: RfD: more powerful "any" types Pavel Stehule <pavel.stehule@gmail.com>
Re: RfD: more powerful "any" types Hannu Krosing <hannu@2ndQuadrant.com>
Re: RfD: more powerful "any" types "David E. Wheeler" <david@kineticode.com>
Re: RfD: more powerful "any" types Pavel Stehule <pavel.stehule@gmail.com>
Re: RfD: more powerful "any" types Tom Lane <tgl@sss.pgh.pa.us>
Re: RfD: more powerful "any" types Pavel Stehule <pavel.stehule@gmail.com>
Re: RfD: more powerful "any" types "Kevin Grittner" <Kevin.Grittner@wicourts.gov>
Re: RfD: more powerful "any" types Alvaro Herrera <alvherre@commandprompt.com>
Re: RfD: more powerful "any" types "Kevin Grittner" <Kevin.Grittner@wicourts.gov>
Re: RfD: more powerful "any" types Tom Lane <tgl@sss.pgh.pa.us>
Re: RfD: more powerful "any" types Robert Haas <robertmhaas@gmail.com>
Re: RfD: more powerful "any" types Tom Lane <tgl@sss.pgh.pa.us>
Re: RfD: more powerful "any" types decibel <decibel@decibel.org>
Re: RfD: more powerful "any" types Andrew Dunstan <andrew@dunslane.net>
Re: RfD: more powerful "any" types decibel <decibel@decibel.org>
Re: RfD: more powerful "any" types Pavel Stehule <pavel.stehule@gmail.com>
Re: RfD: more powerful "any" types decibel <decibel@decibel.org>
Re: RfD: more powerful "any" types Pavel Stehule <pavel.stehule@gmail.com>
Re: RfD: more powerful "any" types Merlin Moncure <mmoncure@gmail.com>
Re: RfD: more powerful "any" types Pavel Stehule <pavel.stehule@gmail.com>
Re: RfD: more powerful "any" types decibel <decibel@decibel.org>
Re: RfD: more powerful "any" types Pavel Stehule <pavel.stehule@gmail.com>
Re: RfD: more powerful "any" types daveg <daveg@sonic.net>
Re: RfD: more powerful "any" types Merlin Moncure <mmoncure@gmail.com>
Re: RfD: more powerful "any" types daveg <daveg@sonic.net>
Re: RfD: more powerful "any" types Tom Lane <tgl@sss.pgh.pa.us>
Re: RfD: more powerful "any" types Pavel Stehule <pavel.stehule@gmail.com>
Re: RfD: more powerful "any" types Merlin Moncure <mmoncure@gmail.com>
Re: RfD: more powerful "any" types Tom Lane <tgl@sss.pgh.pa.us>
Re: RfD: more powerful "any" types Pavel Stehule <pavel.stehule@gmail.com>
Re: RfD: more powerful "any" types Tom Lane <tgl@sss.pgh.pa.us>
Re: RfD: more powerful "any" types Pavel Stehule <pavel.stehule@gmail.com>
Re: RfD: more powerful "any" types Hannu Krosing <hannu@2ndQuadrant.com>
Re: RfD: more powerful "any" types Pavel Stehule <pavel.stehule@gmail.com>
Re: RfD: more powerful "any" types Hannu Krosing <hannu@2ndQuadrant.com>
Re: RfD: more powerful "any" types Aidan Van Dyk <aidan@highrise.ca>
Re: RfD: more powerful "any" types Alvaro Herrera <alvherre@commandprompt.com>
Re: RfD: more powerful "any" types Pavel Stehule <pavel.stehule@gmail.com>
Re: RfD: more powerful "any" types Aidan Van Dyk <aidan@highrise.ca>
Re: RfD: more powerful "any" types Tom Lane <tgl@sss.pgh.pa.us>
Re: RfD: more powerful "any" types Merlin Moncure <mmoncure@gmail.com>
Re: RfD: more powerful "any" types "David E. Wheeler" <david@kineticode.com>
Re: RfD: more powerful "any" types Pavel Stehule <pavel.stehule@gmail.com>
Re: RfD: more powerful "any" types "David E. Wheeler" <david@kineticode.com>
Re: RfD: more powerful "any" types Tom Lane <tgl@sss.pgh.pa.us>
Re: RfD: more powerful "any" types Pavel Stehule <pavel.stehule@gmail.com>
Re: RfD: more powerful "any" types "David E. Wheeler" <david@kineticode.com>
Re: RfD: more powerful "any" types "David E. Wheeler" <david@kineticode.com>
Re: RfD: more powerful "any" types Tom Lane <tgl@sss.pgh.pa.us>
Re: RfD: more powerful "any" types "David E. Wheeler" <david@kineticode.com>
Re: RfD: more powerful "any" types Alvaro Herrera <alvherre@commandprompt.com>
Re: RfD: more powerful "any" types Tom Lane <tgl@sss.pgh.pa.us>
Re: RfD: more powerful "any" types "David E. Wheeler" <david@kineticode.com>
Re: RfD: more powerful "any" types Merlin Moncure <mmoncure@gmail.com>
On Sun, 2009-09-13 at 21:50 +0200, Pavel Stehule wrote:
> Hello
> 
> >
> > ANY [TYPE] and SAME AS [TYPE OF] are syntactic sugar indeed, but they
> > are much more SQL-like than needing to write "any" or anyelement(n) as
> > argument type or return type
> >
> 
> I looked on possibilities in gram.y and I thing, type identifiers
> 
> "ANY TYPE" is possible without any problems (this should be synonym for "any"),
> "SAME AS" needs add "same" keyword to col_name_keywords , i.e. "same"
> is prohibited for function names - it should be a problem
> 
> regards
> Pavel Stehule
> 
> I found so pgparser provide some ref type syntax via % symbol. So we
> can use following syntax:
> 
> CREATE OR REPLACE FUNCTION foo(a ANY TYPE, b a%TYPE)
> RETURNS a%TYPE ...
> 
> It is not pretty like SAME AS, but I am sure, so this is doable
> (parser knows it now)
> 
> any other ideas?

Hmm, maybe try to make lexer recognize "SAME AS" as one token and then
deal with other cases of 'name AS' ?

Or make the syntax a little uglier, 

CREATE OR REPLACE FUNCTION foo(a ANY TYPE, b TYPE OF a)

CREATE OR REPLACE FUNCTION foo(ANY TYPE, TYPE OF $1)


and maybe try

CREATE OR REPLACE FUNCTION foo(a ANY TYPE, b TYPE OF a) 
RETURNS ARRAY OF TYPE OF a

instead of

CREATE OR REPLACE FUNCTION foo(a anyelement, b anyelement) 
RETURNS anyarray

> 
> regards
> Pavel Stehule


-- 
Hannu Krosing   http://www.2ndQuadrant.com
PostgreSQL Scalability and Availability   Services, Consulting and Training



В списке pgsql-hackers по дате отправления
От: Peter Eisentraut
Дата:
От: Peter Eisentraut
Дата:
FAQ