Re: Function sugnature with default parameter
От | Pavel Stehule |
---|---|
Тема | Re: Function sugnature with default parameter |
Дата | |
Msg-id | CAFj8pRCpjxOZ+MDvwcThCom6as42ovpGXsu89_tL0ciq3F6_Xw@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: Function sugnature with default parameter (Andrew Dunstan <andrew@dunslane.net>) |
Список | pgsql-hackers |
2014-02-26 20:36 GMT+01:00 Andrew Dunstan <andrew@dunslane.net>:
me too.
On 02/26/2014 01:51 PM, Josh Berkus wrote:On 02/26/2014 10:15 AM, salah jubeh wrote:I think, there is a difference between optional parameters and default parameter values. So, my suggestion would be something like this.This would break at least 4 major applications which I personally have
SELECT default_test(1,3, DEFAULT); -- match function number 1
SELECT default_test(1,3); -- match the function number 2
SELECT default_test(1); -- ERROR
Regards
worked on, and the benefit to users is unclear at best.
One of the main reasons to *have* default parameters is to allow adding
new parameters to existing functions without breaking old application
code. So, -1 from me.
The OP's statement that there is a difference between default params and optional params doesn't compute. The only way params are optional is that they have a default. Treating these as somehow independent is a nonsense.
Furthermore, if we dropped function 2, then
select default_test(1,3)
would be a call to function 1. Then, if we followed this proposal, creating function 2 would magically steer that call to function 2 instead. Talk about a footgun, and possibly a security risk too.
more overloaded functions with similar type signature is just dangerous and bad practice.
We would to disallow it.
Regards
Pavel
Pavel
cheers
andrew
--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers
В списке pgsql-hackers по дате отправления: