Jim Fulton wrote at 2008-8-19 17:57 -0400:
> ....
>> While I respect that this feature may have been chosen carefully, it
>> nevertheless seems more like a misfeature.  Chris' expectation was
>> reasonable and ought not to be violated without a good cause.
>queryAdapter is used to look up named adapters.  It is also a simpler  
>version of queryMultiAdapter, which looks up adapters for multiple  
>objects. In neither of these cases does it make sense to consider the  
>interfaces already provided by the object being adapted.  It makes no  
>sense to me for queryAdapter to have different semantics depending on  
>whether the name argument is provided (and is non-blank).

As the "implements" directive does not specify a name,
one could think that the default name is declared.
Then, your naming argument would go away.

As the "I(obj, ...)" syntax is more comfortable and more natural than
the "get[Multi]Adapter(obj, I, ...)", it may even be adequate
to give "I(...)" an optional "name" parameter.

Then, we could get rid of the "{get|query}[Multi]Adapter" altogether
and consistently use "I(....)" with appropriate optional parameters --
what a simplification and homogenization :-)

Zope-Dev maillist  -  Zope-Dev@zope.org
**  No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope )

Reply via email to