File: //usr/lib/python3/dist-packages/zope/interface/__pycache__/registry.cpython-310.pyc
o
$
x`�e � @ s� d Z ddlmZ zddlmZ W n
ey dd� ZY nw ddlmZ ddlmZ ddlm Z dd lm
Z
dd
lmZ ddlmZ ddlm
Z
dd
lmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ dgZG dd� de�Zdd� ZG dd� de�Z ee
�G dd� de��Z!dd � Z"d!d"� Z#d#d$� Z$d%d&� Z%ee
�G d'd(� d(e��Z&ee �G d)d*� d*e��Z'ee�G d+d,� d,e'��Z(ee�G d-d.� d.e'��Z)d/S )0zBasic components support
� )�defaultdict)�notifyc O � d S �N� )�arg�kwr r �9/usr/lib/python3/dist-packages/zope/interface/registry.pyr � r )�ISpecification)�ComponentLookupError)�IAdapterRegistration)�IComponents)�IHandlerRegistration)� ISubscriptionAdapterRegistration)�IUtilityRegistration)�
Registered)�Unregistered)� Interface)�
implementedBy)�implementer)�implementer_only)�
providedBy)�AdapterRegistry)�CLASS_TYPES)�STRING_TYPES�
Componentsc @ s, e Zd Zdd� Zdd� Zdd� Zdd� Zd S )
�_UnhashableComponentCounterc C s dd� |� � D �| _d S )Nc S s g | ]}|�qS r r )�.0�itemr r r �
<listcomp>6 s z8_UnhashableComponentCounter.__init__.<locals>.<listcomp>)�items�_data)�self� otherdictr r r �__init__4 s z$_UnhashableComponentCounter.__init__c C s$ | j D ]\}}||kr| S qdS �Nr )r"