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.  I
still think that just returning a pointer to the struct is a perfectly
sensible API...

-- 
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

Reply via email to