I wrote: > It strikes me that this is basically to_regtype() with the additional > option to return the typmod. That leads to some questions:
BTW, another way that this problem could be approached is to use to_regtype() as-is, with a separate function to obtain the typmod: select format_type(to_regtype('timestamp(4)'), to_regtypmod('timestamp(4)')); This is intellectually ugly, since it implies parsing the same typename string twice. But on the other hand it avoids the notational pain and runtime overhead involved in using a record-returning function. So I think it might be roughly a wash for performance. Question to think about is which way is easier to use. I don't have an opinion particularly; just throwing the idea out there. regards, tom lane