Pavel, * Pavel Stehule (pavel.steh...@gmail.com) wrote: > this is not hard task, hard task is correct identification related function > > see FuncnameGetCandidates() function
We're not limited to writing C code here though and I think we've already solved it, though I admit it wasn't where I originally thought. > I am sure, so we don't would to duplicate this function on client side. It took me a bit to go figure out where it is, but I knew we had it. Look at COMPLETE_WITH_FUNCTION_ARG and Query_for_list_of_arguments in src/bin/psql/tab-complete.c. We can already fully tab-complete a function and its arguments, down to knowing that the function+args is unique. I have no idea why \df and friends aren't already supporting this (is there a real reason or just unintentional omission? would love to know..), but it works just fine for DROP FUNCTION and ALTER FUNCTION. Would be really nice to have that work for \df, \ef, \sf, CREATE OR REPLACE FUNCTION, and anywhere else that makes sense. With support for what tab-complete returns (arg types w/o arg names) and \df's function list result set (arg names + arg types), I think we can happily close this out. I don't think we need to stress about people complaining that \ef myfunc(int) doesn't find a matching function when they can do \ef myfunc(int<tab> and have it tab-complete the rest. Thanks, Stephen
signature.asc
Description: Digital signature