On Wed, 2011-07-06 at 12:51 -0400, Robert Haas wrote:
> On Wed, Jul 6, 2011 at 12:22 PM, Jeff Davis <pgsql@j-davis.com> wrote:
> > To get into some more details: how exactly would this constructor be
> > generated on the fly? Clearly we want only one underlying C function
> > that accepts something like:
> > range_internal(lower, upper, flags, Oid rangetype)
> > So how do we get the rangetype in there?
>
> I think that the C function could call get_call_result_type() and get
> the return type OID back via the second argument.
I'm also a little unclear on the rules for when that might be set
properly or not.
I ran into problems with that before... I think with the I/O functions.
I don't think that's a problem here, but I thought I'd ask.
Regards,Jeff Davis