On Mon, Sep 18, 2006 at 05:06:09PM -0400, Merlin Moncure wrote: > On 9/18/06, Tom Lane <[EMAIL PROTECTED]> wrote: > >Hmm ... I was thinking it didn't matter, but on closer look, the > >int4->oid cast is implicit while the oid->int4 one is only assignment. > >So you'd need to write a cast to pass an OID if we declare the functions > >as taking int4. But you'll need a cast anyway if you want to pass a > >single OID to the int8-taking version (that's an assignment cast too). > > > >The downside of declaring the functions to take OID is that people might > >think they could *only* use OIDs, which isn't so, they can use any > >int4-sized key they feel like. > > hm. this is really a byproduct of oid being the catchall unsigned int4 > type since it has the most built in casts. i agree 100% though on the > oid perception however, i don't like userland oids at all, until such > time as an 8 bit one comes out. i would say leave as int4 unless you > were willing to sql typedef the oid to some other name.
Would adding OID versions of the functions (so there'd be int8, (int4, int4) and (oid,oid)) be overkill? -- Jim Nasby [EMAIL PROTECTED] EnterpriseDB http://enterprisedb.com 512.569.9461 (cell) ---------------------------(end of broadcast)--------------------------- TIP 3: Have you checked our extensive FAQ? http://www.postgresql.org/docs/faq