File: //usr/lib/python3/dist-packages/botocore/docs/__pycache__/waiter.cpython-310.pyc
o
.&�a� � @ s\ d dl mZ d dlmZ d dlmZ d dlmZ d dlm Z G dd� de
�Z dd d
�ZdS )
� )�
xform_name)�OrderedDict)�DocumentedShape)�get_service_module_name)�document_model_driven_methodc @ s$ e Zd Zdd� Zdd� Zdd� ZdS )�WaiterDocumenterc C s || _ | j jjj| _|| _d S )N)�_client�meta�
service_model�service_name�
_service_name�_service_waiter_model)�self�client�service_waiter_model� r �6/usr/lib/python3/dist-packages/botocore/docs/waiter.py�__init__ s
zWaiterDocumenter.__init__c C sX |j �d� |j �� |�d� | jjD ]}|j �d| jjj |f � | �
||� qdS )zgDocuments the various waiters for a service.
:param section: The section to write to.
�WaiterszThe available waiters are:z:py:class:`%s.Waiter.%s`N)�style�h2�new_line�writelnr
�waiter_names�lir � __class__�__name__�_add_single_waiter�r �section�waiter_namer r r �document_waiters s
���z!WaiterDocumenter.document_waitersc C s� |� |�}|jjd| jjj|f d� |j�� |j�� |�dt |� � |j�
� |j�� t||| jjj
| jjj| jd� d S )Nz%s.Waiter.%s)�
class_namez waiter = client.get_waiter('%s'))r r �
event_emitterr
r )�add_new_sectionr �start_sphinx_py_classr r r �start_codeblockr �writer �
end_codeblock�document_wait_methodr �eventsr
r
r r r r r ( s(
��
�
�z#WaiterDocumenter._add_single_waiterN)r �
__module__�__qualname__r r! r r r r r r s r Tc C s� |� |�}|�|j�}t� }tddd�|j�d�|d<