o
    Ü!d9.  ã                   @   s6   d dl Z e  d¡ZG dd„ deƒZG dd„ deƒZdS )é    NZbcdocsc                   @   s‚   e Zd Zddd„Zedd„ ƒZejdd„ ƒZdd„ Zd	d
„ Zdd„ Z	dd„ Z
dd„ Zddd„Zdd„ Zdd„ Zdd„ Zdd„ ZdS )Ú	BaseStyleé   c                 C   s   || _ || _d| _d| _d S )Nr   T)ÚdocÚindent_widthÚ_indentÚ	keep_data©Úselfr   r   © r
   ú6usr/lib/python3.10/site-packages/awscli/bcdoc/style.pyÚ__init__   s   
zBaseStyle.__init__c                 C   s   | j S ©N©r   ©r	   r
   r
   r   Úindentation   s   zBaseStyle.indentationc                 C   s
   || _ d S r   r   )r	   Úvaluer
   r
   r   r      s   
c                 C   s   d|   ¡  S ©Nz
%s)Úspacesr   r
   r
   r   Únew_paragraph#   ó   zBaseStyle.new_paragraphc                 C   s   |  j d7  _ d S )Né   r   r   r
   r
   r   Úindent&   s   zBaseStyle.indentc                 C   s    | j dkr|  j d8  _ d S d S ©Nr   r   r   r   r
   r
   r   Údedent)   s   
ÿzBaseStyle.dedentc                 C   s   d| j | j  S ©Nú )r   r   r   r
   r
   r   r   -   ó   zBaseStyle.spacesc                 C   ó   |S r   r
   ©r	   Úsr
   r
   r   Úbold0   ó   zBaseStyle.boldNc                 C   r   r   r
   )r	   ÚlinkÚtitler
   r
   r   Úref3   r!   zBaseStyle.refc                 C   r   r   r
   r   r
   r
   r   Úh26   r!   zBaseStyle.h2c                 C   r   r   r
   r   r
   r
   r   Úh39   r!   zBaseStyle.h3c                 C   r   r   r
   r   r
   r
   r   Ú	underline<   r!   zBaseStyle.underlinec                 C   r   r   r
   r   r
   r
   r   Úitalics?   r!   zBaseStyle.italics©r   r   )Ú__name__Ú
__module__Ú__qualname__r   Úpropertyr   Úsetterr   r   r   r   r    r$   r%   r&   r'   r(   r
   r
   r
   r   r      s     



r   c                   @   s0  e Zd Zddd„Zdd„ Zdd„ Zdd	„ Zd
d„ Zd‚dd„Zdd„ Z	d‚dd„Z
dd„ Zdd„ Zd‚dd„Zdd„ Zdd„ Zdd„ Zdd „ Zd‚d!d"„Zd#d$„ Zd%d&„ Zd‚d'd(„Zd)d*„ Zd‚d+d,„Zd-d.„ Zd/d0„ Zd‚d1d2„Zd3d4„ Zd‚d5d6„Zd7d8„ Zd‚d9d:„Zd;d<„ Zd‚d=d>„Z d?d@„ Z!d‚dAdB„Z"dCdD„ Z#d‚dEdF„Z$dGdH„ Z%d‚dIdJ„Z&dKdL„ Z'dMdN„ Z(d‚dOdP„Z)dQdR„ Z*d‚dSdT„Z+dUdV„ Z,d‚dWdX„Z-dYdZ„ Z.d‚d[d\„Z/d]d^„ Z0d‚d_d`„Z1dadb„ Z2dcdd„ Z3dedf„ Z4d‚dgdh„Z5didj„ Z6dkdl„ Z7dƒdmdn„Z8dodp„ Z9dqdr„ Z:d‚dsdt„Z;dudv„ Z<dwdx„ Z=dydz„ Z>d{d|„ Z?d}d~„ Z@dd€„ ZAdS )„Ú	ReSTStyler   c                 C   s$   t  | ||¡ d| _d | _d| _d S )NTr   )r   r   Údo_pÚa_hrefÚ
list_depthr   r
   r
   r   r   E   s   
zReSTStyle.__init__c                 C   ó   | j  d|  ¡  ¡ d S ©Nz

%s©r   Úwriter   r   r
   r
   r   r   K   ó   zReSTStyle.new_paragraphc                 C   r3   r   r5   r   r
   r
   r   Únew_lineN   r7   zReSTStyle.new_linec                 C   s   | j  |¡ d S r   ©r   r6   )r	   Úmarkupr
   r
   r   Ú_start_inlineQ   r   zReSTStyle._start_inlinec                 C   s<   | j  ¡  d¡}||krd S | j  |¡ | j  |d ¡ d S r   )r   Ú	pop_writeÚrstripÚ
push_writer6   )r	   r:   Ú
last_writer
   r
   r   Ú_end_inlineT   s
   zReSTStyle._end_inlineNc                 C   ó   |   d¡ d S ©Nz**©r;   ©r	   Úattrsr
   r
   r   Ú
start_boldg   ó   zReSTStyle.start_boldc                 C   rA   rB   ©r@   r   r
   r
   r   Úend_boldj   rG   zReSTStyle.end_boldc                 C   s   d| j _|  |¡ d S ©NT)r   Údo_translationrF   rD   r
   r
   r   Ústart_bm   ó   zReSTStyle.start_bc                 C   ó   d| j _|  ¡  d S ©NF)r   rK   rI   r   r
   r
   r   Úend_bq   ó   zReSTStyle.end_bc                 C   ó(   |r|   ¡  | j |¡ |  ¡  d S d S r   )rF   r   r6   rI   r   r
   r
   r   r    u   ó
   ýzReSTStyle.boldc                 C   s$   |d u r|}| j  d||f ¡ d S )Nú:doc:`%s <%s>`r9   ©r	   r#   r"   r
   r
   r   r$   {   s   zReSTStyle.refc                 C   s6   |t |ƒ }|  ¡  | j d|||f ¡ |  ¡  d S )Nz%s
%s
%s)Úlenr   r   r6   )r	   r   Zborder_charZborderr
   r
   r   Ú_heading€   s   zReSTStyle._headingc                 C   ó   |   |d¡ d S ©NÚ*©rW   r   r
   r
   r   Úh1†   r   zReSTStyle.h1c                 C   rX   )Nú=r[   r   r
   r
   r   r%   ‰   r   zReSTStyle.h2c                 C   rX   )Nú-r[   r   r
   r
   r   r&   Œ   r   zReSTStyle.h3c                 C   rA   rY   rC   rD   r
   r
   r   Ústart_italics   rG   zReSTStyle.start_italicsc                 C   rA   rY   rH   r   r
   r
   r   Úend_italics’   rG   zReSTStyle.end_italicsc                 C   rR   r   )r_   r   r6   r`   r   r
   r
   r   r(   •   rS   zReSTStyle.italicsc                 C   ó"   | j r| j d|  ¡  ¡ d S d S r4   ©r0   r   r6   r   rD   r
   r
   r   Ústart_p›   ó   ÿzReSTStyle.start_pc                 C   ra   r4   rb   r   r
   r
   r   Úend_pŸ   rd   zReSTStyle.end_pc                 C   ó   d| j _|  d¡ d S )NTú``)r   rK   r;   rD   r
   r
   r   Ú
start_code£   rM   zReSTStyle.start_codec                 C   rf   )NFrg   )r   rK   r@   r   r
   r
   r   Úend_code§   rM   zReSTStyle.end_codec                 C   rR   r   )rh   r   r6   ri   r   r
   r
   r   Úcode«   rS   zReSTStyle.codec                 C   ó(   |   ¡  | j d¡ |  ¡  |   ¡  d S )Nz	.. note::©r   r   r6   r   rD   r
   r
   r   Ú
start_note±   ó   zReSTStyle.start_notec                 C   ó   |   ¡  |  ¡  d S r   ©r   r   r   r
   r
   r   Úend_note·   rQ   zReSTStyle.end_notec                 C   rk   )Nz.. warning::rl   rD   r
   r
   r   Ústart_important»   rn   zReSTStyle.start_importantc                 C   ro   r   rp   r   r
   r
   r   Úend_importantÁ   rQ   zReSTStyle.end_importantc                 C   rk   )Nz.. danger::rl   rD   r
   r
   r   Ústart_dangerÅ   rn   zReSTStyle.start_dangerc                 C   ro   r   rp   r   r
   r
   r   Ú
end_dangerË   rQ   zReSTStyle.end_dangerc                 C   sF   |r|D ]\}}|dkr|| _ | j d¡ qn| j d¡ d| j_d S )NZhrefú`r   T)r1   r   r6   rK   )r	   rE   Zattr_keyZ
attr_valuer
   r
   r   Ústart_aÏ   s   €ý	zReSTStyle.start_ac                 C   s   | j  d||f ¡ d S )Nz
.. _%s: %s)r   Úwriteln)r	   Zrefnamer"   r
   r
   r   Úlink_target_definitionÝ   r7   z ReSTStyle.link_target_definitionc                 C   s@   |d u r|}| j jdkr| j  d||f ¡ d S | j  |¡ d S )NÚhtmlz:ref:`%s <%s>`©r   Útargetr6   )r	   ÚlabelÚtextr
   r
   r   Úsphinx_reference_labelà   s
   z ReSTStyle.sphinx_reference_labelc                 C   s¾   d| j _| jrW| j  ¡ }| d¡}|r1|dkr1d|v r!| dd¡}| j  |¡ | j  d| j ¡ n#|dkr?| j  d| j ¡ n| j  | j¡ | j| j j| j< | j  d¡ d | _| j  d¡ d S )	NFr   rv   ú:z\:z <%s>`__z`<%s>`__z`__)	r   rK   r1   r<   r=   Úreplacer>   Zhrefsr6   )r	   r?   r
   r
   r   Úend_aè   s    

zReSTStyle.end_ac                 C   rN   rJ   )r   rK   r_   rD   r
   r
   r   Ústart_i   rQ   zReSTStyle.start_ic                 C   rN   rO   )r   rK   r`   r   r
   r
   r   Úend_i  rQ   zReSTStyle.end_ic                 C   s   |   ¡  d| _| j d¡ d S )NFz* )r8   r0   r   r6   rD   r
   r
   r   Ústart_li  s   zReSTStyle.start_lic                 C   s   d| _ |  ¡  d S rJ   )r0   r8   r   r
   r
   r   Úend_li  s   zReSTStyle.end_lic                 C   rR   r   )r…   r   rx   r†   r   r
   r
   r   Úli  rS   zReSTStyle.lic                 C   ó,   | j dkr	|  ¡  |  j d7  _ |  ¡  d S r   ©r2   r   r   rD   r
   r
   r   Ústart_ul  s   
zReSTStyle.start_ulc                 C   ó,   |  j d8  _ | j dkr|  ¡  |  ¡  d S ©Nr   r   ©r2   r   r   r   r
   r
   r   Úend_ul  ó   
zReSTStyle.end_ulc                 C   rˆ   r   r‰   rD   r
   r
   r   Ústart_ol#  s   
zReSTStyle.start_olc                 C   r‹   rŒ   r   r   r
   r
   r   Úend_ol*  r   zReSTStyle.end_olc                 C   ó   d| j _d S rO   ©r   r   rD   r
   r
   r   Ústart_examples0  r   zReSTStyle.start_examplesc                 C   r’   rJ   r“   r   r
   r
   r   Úend_examples3  r   zReSTStyle.end_examplesc                 C   r’   rO   r“   rD   r
   r
   r   Ústart_fullname6  r   zReSTStyle.start_fullnamec                 C   r’   rJ   r“   r   r
   r
   r   Úend_fullname9  r   zReSTStyle.end_fullnamec                 C   s    | j  d¡ |  ¡  |  ¡  d S )Nz::)r   r6   r   r   rD   r
   r
   r   Ústart_codeblock<  s   zReSTStyle.start_codeblockc                 C   ro   r   rp   r   r
   r
   r   Úend_codeblockA  rQ   zReSTStyle.end_codeblockc                 C   s    |   ¡  | j |¡ |  ¡  dS )zò
        Literal code blocks are introduced by ending a paragraph with
        the special marker ::.  The literal block must be indented
        (and, like all paragraphs, separated from the surrounding
        ones by blank lines).
        N)r˜   r   rx   r™   )r	   rj   r
   r
   r   Ú	codeblockE  s   zReSTStyle.codeblockc                 C   s@   | j jdkr| j  d¡ | j  d¡ | j  d¡ d S |  ¡  d S )Nrz   ú
.. toctree::
ú  :maxdepth: 1
z  :titlesonly:

)r   r|   r6   rŠ   r   r
   r
   r   ÚtoctreeP  s
   zReSTStyle.toctreec                 C   sF   | j jdkr|  |¡ d S |r| j  d| ¡ d S | j  d| ¡ d S )NZmanz  %s)r   r|   r‡   rx   )r	   ÚitemÚ	file_namer
   r
   r   ÚtocitemX  s
   zReSTStyle.tocitemc                 C   s8   | j jdkr| j  d¡ | j  d¡ | j  d¡ d S d S )Nrz   r›   rœ   z  :hidden:

r{   r   r
   r
   r   Úhidden_toctreea  s
   ýzReSTStyle.hidden_toctreec                 C   s   | j jdkr|  |¡ d S d S )Nrz   )r   r|   r    )r	   rž   r
   r
   r   Úhidden_tocitemg  s   ÿzReSTStyle.hidden_tocitemc                 C   s@   | j  d¡ |d ur| j  |¡ |d ur| j  d| ¡ d S d S )Nz.. contents:: z   :depth: %s)r   r6   rx   )r	   r#   Údepthr
   r
   r   Útable_of_contentsk  s   ÿzReSTStyle.table_of_contentsc                 C   ó,   |   ¡  | j d| ¡ |  ¡  |   ¡  d S )Nz.. py:class:: %srl   )r	   Ú
class_namer
   r
   r   Ústart_sphinx_py_classr  ó   zReSTStyle.start_sphinx_py_classc                 C   ro   r   rp   r   r
   r
   r   Úend_sphinx_py_classx  rQ   zReSTStyle.end_sphinx_py_classc                 C   sD   |   ¡  d| }|d ur|d| 7 }| j |¡ |  ¡  |   ¡  d S )Nz.. py:method:: %sz(%s)rl   )r	   Úmethod_nameÚ
parametersÚcontentr
   r
   r   Ústart_sphinx_py_method|  s   z ReSTStyle.start_sphinx_py_methodc                 C   ro   r   rp   r   r
   r
   r   Úend_sphinx_py_method…  rQ   zReSTStyle.end_sphinx_py_methodc                 C   r¥   )Nz.. py:attribute:: %srl   )r	   Ú	attr_namer
   r
   r   Ústart_sphinx_py_attr‰  r¨   zReSTStyle.start_sphinx_py_attrc                 C   ro   r   rp   r   r
   r
   r   Úend_sphinx_py_attr  rQ   zReSTStyle.end_sphinx_py_attrc                 C   s"   |  ¡ }|D ]}| j |¡ qd S r   )Ú
splitlinesr   rx   )r	   Ú	docstringZdocstring_linesZdocstring_liner
   r
   r   Úwrite_py_doc_string“  s   ÿzReSTStyle.write_py_doc_stringc                 C   ó4   | j jdkr| j  d||f ¡ d S | j  |¡ d S )Nrz   z
`%s <%s>`_r{   rU   r
   r
   r   Úexternal_link˜  ó   zReSTStyle.external_linkc                 C   rµ   )Nrz   rT   r{   )r	   r#   Zpager
   r
   r   Úinternal_linkž  r·   zReSTStyle.internal_linkr)   r   )NN)Br*   r+   r,   r   r   r8   r;   r@   rF   rI   rL   rP   r    r$   rW   r\   r%   r&   r_   r`   r(   rc   re   rh   ri   rj   rm   rq   rr   rs   rt   ru   rw   ry   r   r‚   rƒ   r„   r…   r†   r‡   rŠ   rŽ   r   r‘   r”   r•   r–   r—   r˜   r™   rš   r   r    r¡   r¢   r¤   r§   r©   r­   r®   r°   r±   r´   r¶   r¸   r
   r
   r
   r   r/   C   s€    



















	

	r/   )ÚloggingÚ	getLoggerÚloggerÚobjectr   r/   r
   r
   r
   r   Ú<module>   s   
0