Stephan Richter wrote:

IMO multi-typed interfaces would make sense. Would you have any
objections if I change the code the following way:

module:, line 78
75 if iface_type is not None:
76 if not iface_type.extends(IInterface):
77 raise TypeError(iface_type, "is not an interface type")
78 directlyProvides(interface, iface_type,

I would like to see a use case first. Once we can agree that the use case is really necessary, this change will be fine.

It's not just a matter of use case, it's also a matter of potentially unintended misconfiguration and side effects:
The directly-provide-implementation decision allows multi-typed interfaces on python level. As soon
the interface directive is invoked manipulation on python level will be 'removed' by a single type
information. Such behavior complicates the live of developer knowing the interface package only.

Use case: Typing interfaces within orthogonal application domains:
-> CMS-Domain -> IContentType, IEventType, ...
-> Business-Domain -> IAnyBusinessDomainType


_______________________________________________ Zope3-dev mailing list Unsub:

Reply via email to