From: | Joe Conway <mail(at)joeconway(dot)com> |
---|---|
To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Merlin Moncure <mmoncure(at)gmail(dot)com> |
Cc: | Corey Huinker <corey(dot)huinker(at)gmail(dot)com>, Heikki Linnakangas <hlinnaka(at)iki(dot)fi>, Michael Paquier <michael(dot)paquier(at)gmail(dot)com>, PostgreSQL mailing lists <pgsql-hackers(at)postgresql(dot)org>, Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com> |
Subject: | Re: dblink: add polymorphic functions. |
Date: | 2015-07-30 00:20:22 |
Message-ID: | 55B96DC6.1020607@joeconway.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
On 07/29/2015 05:13 PM, Tom Lane wrote:
> What's possibly more palatable is to introduce some other special
> notation for "obtain the type of this expression at parse time".
> I'm thinking for example about
>
> SELECT x::pg_typeof(some_expression) FROM ...
>
> Maybe it would be too confusing to overload "pg_typeof" this way,
> in which case we could choose some other name. Aside from that
> consideration, this approach would have the effect of preventing
> "pg_typeof" from being used as an actual type name, or at least
> from being used as a type name that can have typmod, but that
> doesn't seem like a huge drawback.
>
> This way would have the rather nice property that some_expression
> could actually be any parseable expression, not merely a qualified
> variable name (which I think is the only case that we'd have had
> any hope of supporting with %TYPE).
You think this could be made to work?
SELECT x::TYPE OF(some_expression) FROM ...
Then we would also have:
SELECT CAST(x AS TYPE OF(some_expression)) FROM ...
Seems nicer than pg_typeof
- --
Joe Conway
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.22 (GNU/Linux)
iQIcBAEBAgAGBQJVuW3GAAoJEDfy90M199hlY6UP/026qCp5sxSz8zsnY9FyqqMp
Xf+a1nlqZFB821zQtMx7NtKtxjiC45jqbPSerLqCSbbpMftLG/iy5+/wdWJqAIoK
283Q23hD6r7hPwR2nown3BH5F1AFGCppG5KWebOgl01jVQSWBfFiRLrImFi/2FVs
sp3fHFmONp2kIYoAZwyFyZXv2n4D9Qhp0tIq94Dz0LGaszsfpYObCapPkgwAgaYZ
TSk5FAmD+IIJsNadhuk6IfJRObY5DgLL5keJSiuNs4Xpixq72KjqgnYQeXqgoT6U
AOqEkyg/KejkBSmuZRtHc9qnewGPzQn9TBXZEGPF+/ifpHC7+gL2au97kUW35j5l
3Ox57hTTRgr3oRvrEkGN/1uM/yDiobXb2HOp70mIeuYAWp3juwfxZQybRMYCoM8a
O/oyJqTSX2Dn/GkzeAOxbaQJulMeJfkivnwak0BhdaX3d4bDJz1ylNgz/B4Gtcnn
x4FVdTEfTBGFKFmfyDB5iAvpRrDCCDYcd2KcHA1J34vm8Ccm6m3aauJoi4zqsubh
bQnia2aoIAtnIOei/zVaST7+G+B3WAod3MDmrctjkx1lACTIeQVHq7q/A3iUPwcF
7Lfu9vr/6IBsAlvkdsX7zNZsIzAlov+ObrKZHBxeq2lB31MH1jeulX8lx+131+aI
ATx7kmeBlB60dkccMEhv
=VgLe
-----END PGP SIGNATURE-----
From | Date | Subject | |
---|---|---|---|
Next Message | Joe Conway | 2015-07-30 00:35:58 | Re: [COMMITTERS] pgsql: Row-Level Security Policies (RLS) |
Previous Message | Tom Lane | 2015-07-30 00:13:41 | Re: dblink: add polymorphic functions. |