Ë
    rPêj@  ã                   óŒ   — d dl mZ d dlmZ d dlmZ d dlmZ  G d„ de«      Z	 G d„ de	«      Z
 G d	„ d
e	«      Z G d„ de	«      Zy)é    )ÚDocumentStructure©Údocument_model_driven_method©Údocument_paginate_method©Údocument_wait_methodc                   óP   ‡ — e Zd ZdZˆ fd„Zˆ fd„Zd„ Zd	d„Zd„ ZeZ	d„ Z
d„ Zˆ xZS )
ÚLazyLoadedDocstringa0  Used for lazily loading docstrings

    You can instantiate this class and assign it to a __doc__ value.
    The docstring will not be generated till accessed via __doc__ or
    help(). Note that all docstring classes **must** subclass from
    this class. It cannot be used directly as a docstring.
    c                 óL   •— t         ‰| �  «        || _        || _        d| _        y)z¥
        The args and kwargs are the same as the underlying document
        generation function. These just get proxied to the underlying
        function.
        N)ÚsuperÚ__init__Ú	_gen_argsÚ_gen_kwargsÚ
_docstring)ÚselfÚargsÚkwargsÚ	__class__s      €ú\/home/oem/CyberBrain26-unified/.venv/lib/python3.12/site-packages/botocore/docs/docstring.pyr   zLazyLoadedDocstring.__init__   s&   ø€ ô 	‰ÑÔØˆŒØ!ˆÔØˆ�ó    c                 ó"   •— t         ‰| �  | «      S ©N)r   Ú__new__)Úclsr   r   r   s      €r   r   zLazyLoadedDocstring.__new__'   s   ø€ ä‰w‰˜sÓ#Ð#r   c                 ó   — t        d«      ‚)Nzq_write_docstring is not implemented. Please subclass from this class and provide your own _write_docstring method)ÚNotImplementedError©r   r   r   s      r   Ú_write_docstringz$LazyLoadedDocstring._write_docstring+   s   € Ü!ðFó
ð 	
r   c                 óp   — | j                   €| j                  «        | j                   j                  |«      S )a™  Expands tabs to spaces

        So this is a big hack in order to get lazy loaded docstring work
        for the ``help()``. In the ``help()`` function, ``pydoc`` and
        ``inspect`` are used. At some point the ``inspect.cleandoc``
        method is called. To clean the docs ``expandtabs`` is called
        and that is where we override the method to generate and return the
        docstrings.
        )r   Ú	_generateÚ
expandtabs)r   Útabsizes     r   r"   zLazyLoadedDocstring.expandtabs1   s-   € ð �?‰?Ð"Ø�N‰NÔØ�‰×)Ñ)¨'Ó2Ð2r   c                 ó"   — | j                  «       S r   )r!   ©r   s    r   Ú__str__zLazyLoadedDocstring.__str__?   s   € Ø�~‰~ÓÐr   c                 ó\   — | j                   €| j                  «       | _         | j                   S r   )r   Ú_create_docstringr%   s    r   r!   zLazyLoadedDocstring._generateE   s&   € à�?‰?Ð"Ø"×4Ñ4Ó6ˆDŒOØ�‰Ðr   c                 ó®   — t        dd¬«      } | j                  |g| j                  ¢­i | j                  ¤Ž |j	                  «       j                  d«      S )NÚ	docstringÚhtml)Útargetzutf-8)r   r   r   r   Úflush_structureÚdecode)r   Údocstring_structures     r   r(   z%LazyLoadedDocstring._create_docstringK   sZ   € Ü/°ÀFÔKÐð 	ˆ×ÑØð	
Ø"&§.¡.ò	
Ø48×4DÑ4Dò	
ð #×2Ñ2Ó4×;Ñ;¸GÓDÐDr   )é   )Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   r   r"   r&   Ú__repr__r!   r(   Ú__classcell__)r   s   @r   r   r      s3   ø„ ñô	ô$ò
ó3ò ð €HòöEr   r   c                   ó   — e Zd Zd„ Zy)ÚClientMethodDocstringc                 ó   — t        |i |¤Ž y r   r   r   s      r   r   z&ClientMethodDocstring._write_docstringV   s   € Ü$ dÐ5¨fÓ5r   N©r1   r2   r3   r   © r   r   r8   r8   U   s   „ ó6r   r8   c                   ó   — e Zd Zd„ Zy)ÚWaiterDocstringc                 ó   — t        |i |¤Ž y r   r   r   s      r   r   z WaiterDocstring._write_docstring[   s   € Ü˜dÐ- fÓ-r   Nr:   r;   r   r   r=   r=   Z   s   „ ó.r   r=   c                   ó   — e Zd Zd„ Zy)ÚPaginatorDocstringc                 ó   — t        |i |¤Ž y r   r   r   s      r   r   z#PaginatorDocstring._write_docstring`   s   € Ü  $Ð1¨&Ó1r   Nr:   r;   r   r   r@   r@   _   s   „ ó2r   r@   N)Úbotocore.docs.bcdoc.restdocr   Úbotocore.docs.methodr   Úbotocore.docs.paginatorr   Úbotocore.docs.waiterr	   Ústrr   r8   r=   r@   r;   r   r   ú<module>rG      sI   ðõ :Ý =Ý <Ý 5ô?E˜#ô ?EôD6Ð/ô 6ô
.Ð)ô .ô
2Ð,õ 2r   