File: //usr/lib/python3/dist-packages/zope/interface/__pycache__/interfaces.cpython-39.pyc
a
��_� � @ s d Z dZddlmZ ddlmZ ddlmZ g d�ZG dd� de�ZG d d
� d
e�Z G dd� de �Z
G d
d� de�ZG dd� dee�ZG dd� de�Z
G dd� de�ZG dd� de�ZG dd� de�ZG dd� de�ZG dd� de�Zee�G dd� de��ZG dd � d e�ZG d!d"� d"e�ZG d#d$� d$e�ZG d%d&� d&e�ZG d'd(� d(e�ZG d)d*� d*e�ZG d+d,� d,e�ZG d-d.� d.e�Zee�G d/d0� d0e��ZG d1d2� d2e�Z ee �G d3d4� d4e��Z!G d5d6� d6e�Z"ee"�G d7d8� d8e��Z#G d9d:� d:e�Z$G d;d<� d<ee$�Z%d=S )>zInterface Package Interfaces
Zrestructuredtext� )� Attribute)� Interface)�implementer)�IAdapterRegistration�IAdapterRegistry�
IAttribute�IComponentLookup�IComponentRegistry�IComponents�IDeclaration�IElement�IHandlerRegistration�
IInterface�IInterfaceDeclaration�IMethod�IObjectEvent�IRegistered�
IRegistration�IRegistrationEvent�ISpecification� ISubscriptionAdapterRegistration�
IUnregistered�IUtilityRegistrationc @ s` e Zd ZdZedd�Z edd�Zdd� Zdd d
�Zdd� Zd
d� Zdd� Z ddd�Z
dd� ZdS )r a�
Objects that have basic documentation and tagged values.
Known derivatives include :class:`IAttribute` and its derivative
:class:`IMethod`; these have no notion of inheritance.
:class:`IInterface` is also a derivative, and it does have a
notion of inheritance, expressed through its ``__bases__`` and
ordered in its ``__iro__`` (both defined by
:class:`ISpecification`).
�__name__zThe object name�__doc__zThe object doc stringc C s dS )a� Returns the value associated with *tag*.
Raise a `KeyError` if the tag isn't set.
If the object has a notion of inheritance, this searches
through the inheritance hierarchy and returns the nearest result.
If there is no such notion, this looks only at this object.
.. versionchanged:: 4.7.0
This method should respect inheritance if present.
N� ��tagr r �;/usr/lib/python3/dist-packages/zope/interface/interfaces.py�getTaggedValueR s zIElement.getTaggedValueNc C s dS )z�
As for `getTaggedValue`, but instead of raising a `KeyError`, returns *default*.
.. versionchanged:: 4.7.0
This method should respect inheritance if present.
Nr �r �defaultr r r �queryTaggedValue_ s zIElement.queryTaggedValuec C s dS )aZ
Returns a collection of all tags in no particular order.
If the object has a notion of inheritance, this
includes all the inherited tagged values. If there is
no such notion, this looks only at this object.
.. versionchanged:: 4.7.0
This method should respect inheritance if present.
Nr r r r r �getTaggedValueTagsh s zIElement.getTaggedValueTagsc C s dS )zH
Associates *value* with *key* directly in this object.
Nr )r �valuer r r �setTaggedValuet s zIElement.setTaggedValuec C s dS )zk
As for `getTaggedValue`, but never includes inheritance.
.. versionadded:: 5.0.0
Nr r r r r �getDirectTaggedValuey s zIElement.getDirectTaggedValuec C s dS )zm
As for `queryTaggedValue`, but never includes inheritance.
.. versionadded:: 5.0.0
Nr r r r r �queryDirectTaggedValue� s zIElement.queryDirectTaggedValuec C s dS )z�
As for `getTaggedValueTags`, but includes only tags directly
set on this object.
.. versionadded:: 5.0.0
Nr r r r r �getDirectTaggedValueTags� s z!IElement.getDirectTaggedValueTags)N)N)r �
__module__�__qualname__r r r r"