3
,ò¿WÜ ã @ sP d Z ddlmZ ddlmZ ddlmZ ddlmZ eeƒG dd„ deƒƒZ dS ) zFactory object
é )Úimplementer)Ú
implementedBy)Ú
Implements)ÚIFactoryc @ s2 e Zd ZdZddd„Zdd„ Zdd „ Zd
d„ ZdS )
ÚFactoryzªGeneric factory implementation.
The purpose of this implementation is to provide a quick way of creating
factories for classes, functions and other objects.
Ú Nc C s || _ || _|| _|| _d S )N)Ú _callableÚtitleÚdescriptionÚ_interfaces)ÚselfÚcallabler r
Z
interfaces© r ú/usr/lib/python3.6/factory.pyÚ__init__ s zFactory.__init__c O s | j ||ŽS )N)r )r ÚargsÚkwr r r Ú__call__$ s zFactory.__call__c C s2 | j d k r(t| j Ž }t| jddƒ|_|S t| jƒS )NÚ__name__z
[callable])r r Úgetattrr r r )r Úspecr r r Ú
getInterfaces' s
zFactory.getInterfacesc C s d| j jt| jƒf S )Nz<%s for %s>)Ú __class__r Úreprr )r r r r Ú__repr__. s zFactory.__repr__)r r N)r Ú
__module__Ú__qualname__Ú__doc__r r r r r r r r r s
r N)
r Zzope.interfacer r Zzope.interface.declarationsr Zzope.component.interfacesr Úobjectr r r r r Ú