On Mon, Aug 1, 2011 at 4:27 PM, Alvaro Herrera <alvhe...@commandprompt.com> wrote: > Excerpts from Robert Haas's message of lun ago 01 16:12:56 -0400 2011: >> On Mon, Aug 1, 2011 at 4:02 PM, Alvaro Herrera >> <alvhe...@commandprompt.com> wrote: >> > Excerpts from Kohei KaiGai's message of dom jul 31 02:21:55 -0400 2011: >> >> 2011/7/29 Tom Lane <t...@sss.pgh.pa.us>: >> > >> >> > It would likely be better to not expose the struct type, just individual >> >> > lookup functions. >> >> > >> >> If so, individual functions to expose a certain property of the supplied >> >> object type should be provided. >> >> >> >> int get_object_property_catid_oidlookup(ObjectType); >> >> int get_object_property_catid_namelookup(ObjectType); >> >> Oid get_object_property_relation_id(ObjectType); >> >> AttrNumber get_object_property_nameattnum(ObjectType); >> >> AttrNumber get_object_property_namespacenum(ObjectType); >> >> AttrNumber get_object_property_ownershipnum(ObjectType); >> > >> > Maybe a single lookup function that receives pointers that the lookup >> > routine can fill with the appropriate information; allowing for a NULL >> > pointer in each, meaning caller is not interested in that property. >> >> That seems like a lot of extra notational complexity for no particular >> benefit. Every time someone wants to add a new property to this >> array, they're going to have to touch every caller, and all >> third-party code using this interface will have to be rejiggered. > > So add a bunch of macros on top for the two or three (five?) most common > cases -- say those that occur 3 times or more.
I could go for that. -- Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers