+
    i#                     H    ^ RI t ^ RIt^ RIHt ^ RIHt  ! R R4      tR tR# )    N)escape_controls)parse_timestampc                   r   a  ] tR t^t o R tR tR tR tRR ltR t	R t
R tR	 tR
 tR tR tR tRtV tR# )SharedExampleDocumenterc                   VP                   P                  4        VP                  VP                  R4      4       VP                   P	                  4        V P                  W1W$P                  4       V P                  W1VP                  4       R# )a  Documents a single shared example based on its definition.

:param example: The model of the example

:param prefix: The prefix to use in the method example.

:param section: The section to write to.

:param operation_model: The model of the operation used in the example
descriptionN)	stylenew_paragraphwritegetnew_linedocument_inputinput_shapedocument_outputoutput_shape)selfexampleprefixsectionoperation_models   &&&&&=/usr/lib/python3/dist-packages/botocore/docs/sharedexample.pydocument_shared_example/SharedExampleDocumenter.document_shared_example   sj     	##%gkk-01 f&A&A	
 	W/K/KL    c                (   VP                  R 4      pVP                  P                  4        Ve   VP                  V4       VP	                  R / 4      pVP	                  R4      pV'       d   VP	                  R 4      pVP                  R4      pV P                  WV. V4       VP                  R4      p	V	P                  P                  4        V	P                  P                  4        V	P                  R4       V	P                  P                  4        R# )inputNcomments
parameterszinput-closezprint(response))add_new_sectionr	   start_codeblockr   r   _document_paramsr   end_codeblock)
r   r   r   r   shapeinput_sectionparamsr   param_sectionclosing_sections
   &&&&&     r   r   &SharedExampleDocumenter.document_input*   s    //8++-'Wb);;z*||G,H%55lCmXr5I'77F&&(&&(/0++-r   c                   VP                  R 4      pVP                  P                  4        VP                  R4       VP                  P                  4        VP                  P	                  4        VP                  R / 4      pRR/VR&   VP                  R4      pV'       d   VP                  R 4      pV P                  WEV. VR4       VP                  R4      pVP                  P                  4        R# )outputzExpected Output:z...ResponseMetadatar   Tzoutput-closeN)r   r	   r   r   r    r   _document_dictr"   )r   r   r   r#   output_sectionr%   r   r'   s   &&&&    r   r   'SharedExampleDocumenter.document_output;   s     00:%%'/0%%',,.Xr* ',U^!";;z*||H-HNHb%N(88H++-r   c                   \        V\        4      '       d   V P                  WW4V4       R# \        V\        4      '       d   V P	                  WW4V4       R# \        V\
        P                  4      '       d   V P                  WV4       R# V'       d&   VP                  R8X  d   V P                  WV4       R# V P                  WV4       R# )a  
:param section: The section to add the docs to.

:param value: The input / output values representing the parameters that
              are included in the example.

:param comments: The dictionary containing all the comments to be
                 applied to the example.

:param path: A list describing where the documenter is in traversing the
             parameters. This is used to find the equivalent location
             in the comments dictionary.
	timestampN)
isinstancedictr,   list_document_listnumbersNumber_document_number	type_name_document_datetime_document_str)r   r   valuer   pathr#   s   &&&&&&r   	_document!SharedExampleDocumenter._documentL   s     eT""Ft$$Fw~~..!!'$7u+5##GD9wt4r   c                   VP                  R 4      pV P                  VR4       VP                  4        EF  w  rVP                  RV 24       VP                  V4      p
V
P                  P                  4        V P                  WC4      pV'       d,   V
P                  V4       V
P                  P                  4        V
P                  RV R24       RpV'       dK   VP                  R8X  d   VP                  P                  V4      pMVP                  R8X  d   VP                  pV P                  WW4V4       VP                  4        EK  	  VP                  R4      pV P                  VR	4       V'       g   VP                  R
4       R# R# )z
dict-value{.'z': N	structuremapzending-brace},)r   _start_nested_valueitemsappendr	   r   _get_commentr   r8   membersr   r;   r=   pop_end_nested_value)r   r   r;   r   r<   r#   	top_leveldict_sectionkeyvalitem_sectionitem_comment
item_shapedict_section_ends   &&&&&&&       r   r,   &SharedExampleDocumenter._document_dicte   sE    ..|<  s3HCKK!C5	"'77<L''),,T<L""<0""++-3%s|, J??k1!&!2!23!7J__-!&JNN<hjIHHJ% && (77G/5""3' r   c                   VP                  R 4      pV P                  VR4       VP                  4        F  w  rxVP                  RV 24       VP                  V4      p	V	P                  P                  4        V P                  WC4      p
V
'       d,   V	P                  V
4       V	P                  P                  4        V	P                  VR,           4       RpV'       d   VP                  P                  V4      pV P                  WW4V4       VP                  4        K  	  VP                  R4      pV P                  VR4       R# )zparam-values(rA   =Nzending-parenthesis))r   rG   rH   rI   r	   r   rJ   r   rK   r   r=   rL   rM   )r   r   r;   r   r<   r#   r&   rP   rQ   rR   rS   rT   param_section_ends   &&&&&&       r   r!   (SharedExampleDocumenter._document_params   s	   //?  4HCKK!C5	"(88=L''),,T<L""<0""++-sSy) J"]]..s3
NN<hjIHHJ &  *99:NO0#6r   c                    VP                  R 4      pV P                  VR4       VP                  p\        V4       F  w  rVP                  V4      p
V
P                  P                  4        VP                  RV R24       V P                  WC4      pV'       d,   V
P                  V4       V
P                  P                  4        V P                  WW4V4       VP                  4        K  	  VP                  R4      pV P                  VR4       R# )zlist-section[]zending-bracketz],N)r   rG   member	enumerater	   r   rI   rJ   r   r=   rL   rM   )r   r   r;   r   r<   r#   list_sectionrT   indexrQ   rR   rS   list_section_ends   &&&&&&       r   r4   &SharedExampleDocumenter._document_list   s    ..~>  s3\\
#E*JE'77>L'')KK!E7!%,,T<L""<0""++-NN<hjIHHJ + (778HI/6r   c                F    \        V4      pVP                  R V R24       R# )rB   z',N)r   r   )r   r   r;   r<   
safe_values   &&&& r   r:   %SharedExampleDocumenter._document_str   s#     %U+
*R()r   c                @    VP                  \        V4       R 24       R# )rF   N)r   str)r   r   r;   r<   s   &&&&r   r7   (SharedExampleDocumenter._document_number   s    UA&'r   c                    \        V4      P                  4       p\        V^ ,          4      p\        ^\	        V4      4       F"  pVR\        WF,          4      ,           ,          pK$  	  VP                  RV R24       R# )r   z, z	datetime(z),N)r   	timetuplerj   rangelenr   )r   r   r;   r<   datetime_tupledatetime_stris   &&&&   r   r9   *SharedExampleDocumenter._document_datetime   sf    (/99;>!,-q#n-.AD3~'8#999L /	,r23r   c                    \         P                  ! R RRP                  V4      4      pV'       d   W29   d   RW#,          ,           # R# )z^\. z# )resubjoin)r   r<   r   rP   s   &&& r   rJ   $SharedExampleDocumenter._get_comment   s3    ffVR/(-''r   c                    VP                  V4       VP                  P                  4        VP                  P                  4        R # N)r   r	   indent)r   r   starts   &&&r   rG   +SharedExampleDocumenter._start_nested_value   s.    er   c                    VP                   P                  4        VP                   P                  4        VP                   P                  4        VP                  V4       R # r{   )r	   dedentr   r   )r   r   ends   &&&r   rM   )SharedExampleDocumenter._end_nested_value   s>     cr    N)F)__name__
__module____qualname____firstlineno__r   r   r   r=   r,   r!   r4   r:   r7   r9   rJ   rG   rM   __static_attributes____classdictcell__)__classdict__s   @r   r   r      sL     M*."."52(:7,7"*(4
 r   r   c                   V P                  R4      pVP                  P                  4        VP                  P                  R4       \	        4       pV F.  pVP                  VVP                  VR,          4      VVR7       K0  	  R# )a   Documents the shared examples

:param section: The section to write to.

:param operation_model: The model of the operation.

:param example_prefix: The prefix to use in the method example.

:param shared_examples: The shared JSON examples from the model.
zshared-examplesExamplesid)r   r   r   r   N)r   r	   r
   boldr   r   )r   r   example_prefixshared_examplescontainer_section
documenterr   s   &&&&   r   document_shared_examplesr      s|      //0AB))+  ,(*J"**%55gdmD!+	 	+ 	
 #r   )r5   rv   botocore.docs.utilsr   botocore.utilsr   r   r   r   r   r   <module>r      s%     	 / *u up
r   