On Thu, 2009-09-10 at 08:44 +0300, Hannu Krosing wrote: > maybe just let users say what they mean, so first time we have "any" and > if we need more then we say "same_as(...)"
Acutually we could be even more SQL-y and have a more verbose syntax for pseudotypes by extending the grammar CREATE FUNCTION foo( a ANY TYPE, b SAME TYPE AS a, c ANY TYPE OUT d ARRAY OF SAME TYPE AS c ) .... TYPE could probably be optional > so your example becomes > > > CREATE FUNCTION foo(a any, b same_type_as(a), c any) > RETURNS same_type_as(c)[] > AS $$ > ... > $$; > > or the same using positional arguments > > CREATE FUNCTION foo(a any, b same_type_as(1), c any) > RETURNS same_type_as(3)[] > AS $$ > ... > $$; > > this then gets transformed at parse time to whatever internal > representation of type sameness we use. > > -- > Hannu Krosing http://www.2ndQuadrant.com > PostgreSQL Scalability and Availability > Services, Consulting and Training > > > -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers