
    g~                       U d dl mZ d dlZd dlmZ d dlmZ d dlmZm	Z	m
Z
mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZm Z m!Z! d dl"m#Z#m$Z$ d dl%m&Z&m'Z' erd dlm(Z( d d	lm)Z)m*Z* d d
l+m,Z, d dl-m.Z. i de&j^                  de&j^                  de&j^                  de&j^                  de&j`                  de&j`                  de&j`                  de&j`                  de&j`                  de&j`                  de&jb                  de&jb                  de&jd                  de&jf                  de&jh                  de&jj                  de&jl                  e&jn                  e&jn                  e&jp                  e&jr                  e&jt                  e&jt                  dZ;e<e=e>e?   f   Z@e>e@   ZAe<eAe=f   ZB ej                  dej                        ZEdeFd <    ej                  d!      ZGdeFd"<    ej                  d#      ZHdeFd$<    ej                  d%      ZIdeFd&<   dFd'ZJdGd(ZKd)d*	 	 	 	 	 	 	 	 	 dHd+ZL	 	 	 	 	 	 	 	 dId,ZMd)d*	 	 	 	 	 	 	 	 	 dJd-ZN	 	 	 	 	 	 	 	 dKd.ZO	 	 	 	 	 	 	 	 dLd/ZP	 	 	 	 	 	 	 	 dMd0ZQ	 	 	 	 	 	 	 	 dNd1ZR	 	 	 	 	 	 	 	 dOd2ZS	 	 	 	 	 	 	 	 dPd3ZTd)d4	 	 	 	 	 	 	 	 	 dQd5ZUd)d6	 	 	 	 	 	 	 	 	 dRd7ZVd8d d9	 	 	 	 	 	 	 	 	 dSd:ZWd)d)d;	 	 	 	 	 	 	 	 	 	 	 dTd<ZXd)d)d;	 	 	 	 	 	 	 	 	 	 	 dUd=ZYd)d)d>	 	 	 	 	 	 	 	 	 	 	 dVd?ZZd)d@	 	 	 	 	 	 	 	 	 dWdAZ[	 	 	 	 	 	 	 	 dXdBZ\dYdCZ]e&j^                  eMe&j`                  eNe&jb                  eSe&jt                  eTe&jj                  e[e&jl                  eOe&jn                  ePe&jp                  eQe&jr                  eRe&jd                  eXe&jf                  eYe&jh                  eZe&j                  e\iZ_ e`       Zad8d)d)d)d)d8dD	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 dZdEZby)[    )annotationsN)suppress)TYPE_CHECKING)DocstringAttributeDocstringClassDocstringFunctionDocstringModuleDocstringParameterDocstringRaiseDocstringReceiveDocstringReturnDocstringSectionDocstringSectionAdmonitionDocstringSectionAttributesDocstringSectionClassesDocstringSectionDeprecatedDocstringSectionExamplesDocstringSectionFunctionsDocstringSectionModulesDocstringSectionOtherParametersDocstringSectionParametersDocstringSectionRaisesDocstringSectionReceivesDocstringSectionReturnsDocstringSectionTextDocstringSectionWarnsDocstringSectionYieldsDocstringWarnDocstringYield)docstring_warningparse_docstring_annotation)DocstringSectionKindLogLevel)Pattern)AnyLiteral)Expr)	Docstringargs	argumentsparams
parameterszkeyword argszkeyword argumentsz
other argszother argumentszother paramszother parametersraises
exceptionsreturnsyieldsreceivesexamples
attributes)	functionsmethodsclassesmoduleswarnswarningsz4^(?P<type>[\w][\s\w-]*):(\s+(?P<title>[^\s].*))?\s*$r$   _RE_ADMONITIONz=^(?:(?P<name>\w+)?\s*(?:\((?P<type>.+)\))?:\s*)?(?P<desc>.*)$_RE_NAME_ANNOTATION_DESCRIPTIONz^\s*<BLANKLINE>\s*$_RE_DOCTEST_BLANKLINEz(\s*#\s*doctest:.+)$_RE_DOCTEST_FLAGSc                  | j                   }|t        |      k\  rg |fS |}g }t        ||         r|dz  }t        ||         rt        ||         t        ||   j                               z
  }|dk(  rg |dz
  fS |||   |d  gf}|dz  }|t        |      k  r||   }t        |      r|d   j	                  d       n|j                  |dz  dz        r|d   j	                  ||dz  d         n|j                  |dz   dz        r\t        |      t        |j                               z
  }	|d   j	                  ||	d         t        | |d|dz    d| d|dz   d	|	        n/|j                  |dz        r|j	                  |       |||d  gf}nn|dz  }|t        |      k  r|r|j	                  |       ||dz
  fS )
N   r        z,Confusing indentation for continuation line z in docstring, should be z * 2 = z spaces, not )lineslen_is_empty_linelstripappend
startswithr    )
	docstringoffsetoptionsrC   
new_offsetitemsindentcurrent_itemlinecont_indents
             N/var/www/openai/venv/lib/python3.12/site-packages/_griffe/docstrings/google.py_read_block_itemsrS   T   s   OOEU6zJE z*
+a
 z*
+ z"#c%
*;*B*B*D&EEF{:>!! z!267!; <=L!OJ s5z
!Z $O""2&__VaZ#-.O""4
#56__fqjC/0d)c$++-&88KO""4#56>z!|n M#HGF1H:];-Q __Vc\*LL&&fg8L a
? s5z
!B \"*q.      c                  | j                   }|t        |      k\  rd|dz
  fS |}g }t        ||         r|dz  }t        ||         rt        ||         t        ||   j                               z
  }|dk(  rd|dz
  fS |j	                  ||   j                                |dz  }|t        |      k  rv||   j                  |dz        st        ||         rQ|j	                  ||   |d         |dz  }|t        |      k  r'||   j                  |dz        rBt        ||         rQdj                  |      j                  d      |dz
  fS )Nr@   r?   r   rB   
)rC   rD   rE   rF   rG   rH   joinrstrip)rI   rJ   rK   rC   rL   blockrN   s          rR   _read_blockrZ      se   OOEU6A:~JE z*
+a
 z*
+ z"#c%
*;*B*B*D&EEF{6A:~ 
LLz"))+,!OJ s5z
!uZ'8'C'CFSL'QUcdijtduUvU:&vw/0a
 s5z
!uZ'8'C'CFSL'QUcdijtduUv 99U""4(*q.88rT   T)warn_unknown_paramsc          	        g }t        | fd|i|\  }}|D ]  \  }}	 |d   j                  dd      \  }	}
dj	                  |
j                         g|dd        j                  d      }
d|	v rI|	j                  dd      \  }}|j                  d	      }|j                  d
      r|d d }t        ||       }n&|	}	 | j                  j                  |   j                  }	 | j                  j                  |   j                  }|t        | |d| d       |rct!        t              5  | j                  j                  }||vr1d| d}d| d| fD ]  }||v s|d| dz  } n t        | ||       d d d        |j#                  t%        ||||
              ||fS # t        $ r t        | |d|d    d       Y w xY w# t        t        f$ r d }Y w xY w# t        t        f$ r d }Y w xY w# 1 sw Y   xY w)NrJ   r   :r?   -Failed to get 'name: description' pair from ''rV   rB   ()
, optionalz%No type or annotation for parameter 'zParameter 'z+' does not appear in the function signature*z**z. Did you mean 'z'?)namevalue
annotationdescription)rS   split
ValueErrorr    rW   rF   rX   stripendswithr!   parentr,   rf   AttributeErrorKeyErrordefaultr   rG   r
   )rI   rJ   r[   rK   r,   rY   rL   line_numberparam_linesname_with_typerg   rd   rf   ro   r+   messagestarred_names                    rR   _read_parametersru      sd    J *)NFNgNE:$) [	*5a.*>*>sA*F'NK
 ii!3!3!5 HAB HIPPQUV . -33C;D*#))$/J""<0'-
3J	JJ!D"&--88>II
	&&11$7??G i8]^b]ccd6ef.)"))44v% +D61\]G+,TFr$[(A'61#)9,r'JJG! )B &igF * 	,$gR\juvw[ %*^ z!!W  	i8efqrsfteuuv6wx	& #H- "!
"
 ) 	G	 *)sG   F:#G#G%2G0G0F?>F?GGG-,G-0G9	c               >    t        | fd|i|\  }}t        |      |fS NrJ   )ru   r   )rI   rJ   rK   r,   rL   s        rR   _read_parameters_sectionrx      s-     .iRR'RJ
%j1:==rT   c               @    t        | f|dd|\  }}t        |      |fS )NF)rJ   r[   )ru   r   )rI   rJ   r[   rK   r,   rL   s         rR   _read_other_parameters_sectionrz      s1     .im\amelmJ
*:6
BBrT   c          	        g }t        | fd|i|\  }}d }|D ]  \  }}	 |d   j                  dd      \  }	}
dj	                  |
j                         g|dd        j                  d      }
d|	v rI|	j                  dd      \  }}|j                  d	      }|j                  d
      r|d d }t        ||       }n=|	}t        t        t        t              5  | j                  |   j                  }d d d        |j!                  t#        |||
              t%        |      |fS # t        $ r t        | |d|d    d       Y )w xY w# 1 sw Y   YxY w)NrJ   r   r]   r?   r^   r_   rV   rB   r`   ra   rb   rd   rf   rg   )rS   rh   ri   r    rW   rF   rX   rj   rk   r!   r   rm   rn   	TypeErrorrl   rf   rG   r   r   )rI   rJ   rK   r3   rY   rL   rf   rp   
attr_linesrr   rg   rd   s               rR   _read_attributes_sectionr     ss    J))NFNgNE:$(J#(Z	*4Q-*=*=c1*E'NK
 ii!3!3!5 G
12 GHOOPTU. -33C;D*#))$/J""<0'-
3J	JJ!D.(I>&--d3>>
 ? 	,$:[fgh- $)0 &j1:==+  	i8efpqrfsettu6vw	 ?>s   D!E!EEE	c          	        g }t        | fd|i|\  }}d }|D ]  \  }}	 |d   j                  dd      \  }	}
dj	                  |
j                         g|dd        j                  d      }
d|	v r|	j                  dd      d   }|	}n|	}d }|j                  t        |||
	              t        |      |fS # t        $ r t        | |d|d    d       Y w xY w
NrJ   r   r]   r?   z2Failed to get 'signature: description' pair from 'r_   rV   (r|   )
rS   rh   ri   r    rW   rF   rX   rG   r   r   )rI   rJ   rK   r4   rY   rL   	signaturerp   
func_linesname_with_signaturerg   rd   s               rR   _read_functions_sectionr   *  s    I))NFNgNE:#'I#(Z	/9!}/B/B3/J, ii!3!3!5 G
12 GHOOPTU%%&,,S!4Q7D+I&DI*Xcde) $), %Y/;;'  	DZPQ]OSTU
 	   B77CCc          	        g }t        | fd|i|\  }}d }|D ]  \  }}	 |d   j                  dd      \  }	}
dj	                  |
j                         g|dd        j                  d      }
d|	v r|	j                  dd      d   }|	}n|	}d }|j                  t        |||
	              t        |      |fS # t        $ r t        | |d|d    d       Y w xY wr   )
rS   rh   ri   r    rW   rF   rX   rG   r   r   )rI   rJ   rK   r6   rY   rL   r   rp   class_linesr   rg   rd   s               rR   _read_classes_sectionr   M  s    G))NFNgNE:#'I$) [	/:1~/C/CC/K, ii!3!3!5 HAB HIPPQUV%%&,,S!4Q7D+I&DI~4IS^_`) %*, #7+Z77'  	D[QR^DTTUV
 	r   c          	     n   g }t        | fd|i|\  }}|D ]n  \  }}	 |d   j                  dd      \  }}	dj	                  |	j                         g|dd        j                  d      }	|j                  t        ||	             p t        |      |fS # t        $ r t        | |d|d    d       Y w xY w)	NrJ   r   r]   r?   r^   r_   rV   )rd   rg   )
rS   rh   ri   r    rW   rF   rX   rG   r	   r   )
rI   rJ   rK   r7   rY   rL   rp   module_linesrd   rg   s
             rR   _read_modules_sectionr   p  s     G))NFNgNE:%*!\	 ,Q 5 5c1 =D+ ii!3!3!5 IQR8H IJQQRVWDkJK &+ #7+Z77  	?Q?PPQR
 	   BB43B4c          	        g }t        | fd|i|\  }}|D ]z  \  }}	 |d   j                  dd      \  }}	dj                  |	j                         g|dd        j	                  d      }	t        ||       }|j                  t        ||	             | t        |      |fS # t        $ r t        | |d|d    d       Y w xY w)	NrJ   r   r]   r?   rV   rf   rg   z2Failed to get 'exception: description' pair from 'r_   )rS   rh   rW   rF   rX   r!   rG   r   ri   r    r   )
rI   rJ   rK   r.   rY   rL   rp   exception_linesrf   rg   s
             rR   _read_raises_sectionr     s     J))NFNgNE: ).$_	^&5a&8&>&>sA&F#J ))[%7%7%9$POAB<O$PQXXY]^K3J	JJn
P[\] ). "*-z99  	D_UVEWDXXYZ	s   B  C ?C c          	     n   g }t        | fd|i|\  }}|D ]n  \  }}	 |d   j                  dd      \  }}	dj                  |	j                         g|dd        j	                  d      }	|j                  t        ||	             p t        |      |fS # t        $ r t        | |d|d    d       Y w xY w)	NrJ   r   r]   r?   rV   r   z0Failed to get 'warning: description' pair from 'r_   )
rS   rh   rW   rF   rX   rG   r   ri   r    r   )
rI   rJ   rK   r8   rY   rL   rp   warning_linesrf   rg   s
             rR   _read_warns_sectionr     s     E))NFNgNE:&+"]
	X&3A&6&<&<S!&D#J ))[%7%7%9$NM!"<M$NOVVW[\KLL*+VW ', !'33  	B=QRCSBTTUV	r   )multiplec               n    |rt        | fd|i|S t        | fd|i|\  }}||j                         fg|fS rw   )rS   rZ   
splitlines)rI   rJ   r   rK   	one_blockrL   s         rR   _read_block_items_mayber     sQ      E6EWEE'	L&LGLIz--/01:==rT   namedc                  |rIt         j                  |d         }|st        | |d|d    d       t        |j	                         \  }}}nId }d|d   v r9|d   j                  dd      \  }}|j                  d      j                  d      }nd }|d   }dj                  |j                         g|dd        j                  d      }|||fS )	Nr   z4Failed to get name, annotation or description from 'r_   r]   r?   r   )rV   )	r;   matchr    ri   groupsrh   rF   rX   rW   )rI   rp   rC   r   r   rd   rf   rg   s           rR    _get_name_annotation_descriptionr     s     /55eAh?FuQxjPQR
 (-%j+%(?&+AhnnS!&<#J#**3/66s;JJ(K))[//1>E!"I>?FFtLK[((rT   F)r   indexc               T   d }t        t              5  | j                  j                  }|j                  r|j
                  j                  |   }n|j                  r|dk(  r|j
                  }|r%|j                  r|j
                  j                  |   }d d d        |S # 1 sw Y   |S xY w)Nr   )	r   	Exceptionrl   rf   is_generatorsliceelementsis_iteratoris_tuple)rI   	gen_indexr   r   rf   s        rR   _annotation_from_parentr     s     J	)	%%00
""#))229=J##	Q#))J
++#))2259J 
  
 s   BBB')returns_multiple_itemsreturns_named_valuec                  g }t        | f||d|\  }}t        |      D ]  \  }\  }	}
	 t        | |	|
|      \  }}}|rt	        ||       }n?t        | dt        |      dkD  |      }|"|rt        |      n|dz   }t        | |	d|        |j                  t        |xs d||              t        |      |fS # t        $ r Y w xY w)	NrJ   r   r   rA   r?   r   r   r   z)No type or annotation for returned value r@   r|   )r   	enumerater   ri   r!   r   rD   reprr    rG   r   r   )rI   rJ   r   r   rK   r/   rY   rL   r   rp   return_linesrd   rf   rg   returned_values                  rR   _read_returns_sectionr     s    G/' 	E: /8.>**\	,L)	-)D*k 3J	JJ 1aRUV[R\_`R`hmnJ!/3d!)[<efteu:vwDJB:[fgh- /?0 #7+Z77!  		   B;;	CCc                  g }t        | f||d|\  }}t        |      D ]  \  }\  }	}
	 t        | |	|
|      \  }}}|rt	        ||       }n?t        | dt        |      dkD  |      }|"|rt        |      n|dz   }t        | |	d|        |j                  t        |xs d||              t        |      |fS # t        $ r Y w xY w)	Nr   r   r   r?   r   z(No type or annotation for yielded value r@   r|   )r   r   r   ri   r!   r   rD   r   r    rG   r   r   )rI   rJ   r   r   rK   r0   rY   rL   r   rp   yield_linesrd   rf   rg   yielded_values                  rR   _read_yields_sectionr   '  s    F/' 	E: .7u-=))[	,L)	-)D*k 3J	JJ 1aRUV[R\_`R`hmnJ!.2T
	!)[<derds:tun$*"Ydef- .>0 "&):55!  		r   )receives_multiple_itemsreceives_named_valuec                  g }t        | f||d|\  }}t        |      D ]  \  }\  }	}
	 t        | |	|
|      \  }}}|rt	        ||       }nt        | dt        |      dkD  |      }|"|rt        |      n|dz   }t        | |	d|        |j                  t        |xs d||              t        |      |fS # t        $ r Y w xY w)Nr   r   r?   r   z)No type or annotation for received value r@   r|   )r   r   r   ri   r!   r   rD   r   r    rG   r   r   )rI   rJ   r   r   rK   r1   rY   rL   r   rp   receive_linesrd   rf   rg   received_values                  rR   _read_receives_sectionr   S  s    H/( 	E: 09/?++]	,L*	-)D*k 3J	JJ 1aRUV[R\_`R`hmnJ+/T$ZUQYNi8abpaq6rs(djbZ]hij- 0@0 $H-z99!  		r   )trim_doctest_flagsc               2   t        | fd|i|\  }}g }d}d}g }	g }
|j                  d      D ]g  }t        |      rK|r7|
r2|j                  t        j
                  dj                  |
      f       g }
d}H|	j                  |       Z|r@|r,t        j                  d|      }t        j                  d|      }|
j                  |       |j                  d      r| }|	j                  |       |r|	j                  |       |j                  d      rp|	rA|j                  t        j                  dj                  |	      j                  d      f       g }	d}|rt        j                  d|      }|
j                  |       W|	j                  |       j |	r@|j                  t        j                  dj                  |	      j                  d      f       n2|
r0|j                  t        j
                  dj                  |
      f       t        |      |fS )NrJ   FrV   r@   ```z>>>T)rZ   rh   rE   rG   r"   r2   rW   r=   subr<   rH   textrX   r   )rI   rJ   r   rK   r   rL   sub_sectionsin_code_examplein_code_blockcurrent_textcurrent_examplerP   s               rR   _read_examples_sectionr     s    #9GVGwGD*hjLOM L!#O

4 $" '')=)F)F		RaHb(cd&(O"'##D)!(,,R6,00T:""4(__U# --M%%__U###%9%>%>		,@W@^@^_c@d$ef!"O!(,,R6""4( %E !H 166		,8O8V8VW[8\]^	1::DIIo<VWX#L1:==rT   c                   t        | fd|i|\  }}	 |j                  dd      \  }}|j	                         }|j	                         }t        ||      |fS # t        $ r t        | |d|        d |fcY S w xY w)NrJ   r]   r?   z&Could not parse version, text at line )versionr   )rZ   rh   ri   r    rF   r   )rI   rJ   rK   r   rL   r   rg   s          rR   _read_deprecated_sectionr     s     #9GVGwGD* 

3*
 nnG++-K 	#7E    )Z3YZ`Ya1bcZ s   A A76A7c                $    | j                          S )N)rj   )rP   s    rR   rE   rE     s    zz|rT   ignore_init_summaryr   r   r[   r    returns_type_in_property_summaryc                  g }g }	d}
| j                   }||||||d|}|d   xr} | j                  duxrm | j                  j                  dk(  xrR | j                  j                  xr: | j                  j                  duxr  | j                  j                  j                  }|rdnd}|t        |      k  r||   j                         }|
r8|j                  d      j                  d	      rd}
|	j                  ||          nF|j                  d      j                  d	      rd
}
|	j                  ||          nt        j                  ||         x}r|j                         }|d   }|d   }|j                         t        v }|dkD  }| xs t        ||dz
           }|t        |      dz
  k  }|t        |      dz
  k  }|xr t        ||dz            }|xr t        ||dz            }|xr | xr ||dz      j                  d      }|xr | xr ||dz      j                  d      }|s|s|	j                  ||          |dz  }g }|rdnd}|s|r|s|j                  d|        |r|r|j                  d| d       |rNdj                  |      }t!        | |d| d| t"        j$                         |	j                  ||          |dz  }0|r|	rEt'        |	      r8|j                  t)        dj                  |	      j+                  d                   g }	t,        t        |j                               } || fd|dz   i|\  } }| r|| _        |j                  |        nt1        | |dz         \  }!}|!r|	rEt'        |	      r8|j                  t)        dj                  |	      j+                  d                   g }	||}|j                         j3                  dd      }|j                  t5        ||!|             nAt7        t8              5  |	j                  ||          ddd       n|	j                  ||          |dz  }|t        |      k  r|	r8|j                  t)        dj                  |	      j+                  d                   |r|r| j                  r| j                  j:                  rd| j                  j<                  v r|d   j>                  j                         jA                  d      }d|d   v rj|d   jA                  dd      \  }"}#|#g|dd }dj                  |      |d   _        |j                  tC        tE        ddtG        |"|             g             |S # 1 sw Y   6xY w)a  Parse a Google-style docstring.

    This function iterates on lines of a docstring to build sections.
    It then returns this list of sections.

    Parameters:
        docstring: The docstring to parse.
        ignore_init_summary: Whether to ignore the summary in `__init__` methods' docstrings.
        trim_doctest_flags: Whether to remove doctest flags from Python example blocks.
        returns_multiple_items: Whether the `Returns` section has multiple items.
        warn_unknown_params: Warn about documented parameters not appearing in the signature.
        returns_named_value: Whether to parse `thing: Description` in returns sections as a name and description,
            rather than a type and description. When true, type must be wrapped in parentheses: `(int): Description.`.
            When false, parentheses are optional but the items cannot be named: `int: Description`.
        returns_type_in_property_summary: Whether to parse the return type of properties
            at the beginning of their summary: `str: Summary of the property`.
        **options: Additional parsing options.

    Returns:
        A list of docstring sections.
    Fr   r   N__init__rA   r   rB   r   Ttitletyper?   section
admonitionzMissing blank line above zExtraneous blank line below z titlez; z	Possible z skipped, reasons: rV   rJ   )rJ   -)kindr   r   propertyr]   r@   )rg   rf   )$rC   rl   rd   is_functionis_classrD   lowerrF   rH   rG   r:   r   	groupdict_section_kindrE   rW   r    r#   debuganyr   rX   _section_readerr   rZ   replacer   r   
IndexErroris_attributelabelsre   rh   r   r   r!   )$rI   r   r   r   r[   r   r   rK   sectionscurrent_sectionr   rC   ignore_summaryrJ   
line_lowerr   r   r   admonition_type
is_sectionhas_previous_lineblank_line_abovehas_next_linehas_next_linesblank_line_belowblank_lines_belowindented_line_belowindented_lines_belowreasonsr   reasons_stringreaderr   contentsrf   rP   s$                                       rR   parse_googler     s   @ (*HOMOOE  30"822,L G 	%& 	-D(	-!!Z/	- ((	- ##4/		-
 ##,,  !QaF
3u:
6]((*
  %007 %""5=1s#..u5 M""5=1$**5=99U9__&F7OE$VnO(..0MAJ &
#44YuVVWZGX8Y"SZ!^3M#c%j1n4N,Rfqj@Q1R . T>%QR
BS3T"/"n8H4H"nUSY\]S]M^MiMijmMn#1#q:K6K#qPUV\_`V`PaPlPlmpPq '+?  &&uV}5!G *9D#';EU!:4&AB#(8!=dV6JK!%7!3!v%88HINN	  &&uV}5!"?+ (<TYY=W=^=^_c=d(ef&(O(7L7L7N)OP"("Q6A:"Q"Q$)GMOOG, $/y!#L &&/$OO,@?A[AbAbcgAh,ij*,} /&5&;&;&=&E&Ec3&OOOO$>OZbjo$pq!*-'..uV}= .- ""5=1!] 3u:
` ,TYY-G-N-Nt-TUV 	))))**111!!((*006%(?$Qx~~c15J&E!"I&E $		% 0HQKOO'$RRD^_iktDuvw O9 .-s   U66V )rI   r(   rJ   intrK   r%   return_ItemsBlock)rI   r(   rJ   r   rK   r%   r   ztuple[str, int])
rI   r(   rJ   r   r[   boolrK   r%   r   z$tuple[list[DocstringParameter], int])rI   r(   rJ   r   rK   r%   r   z-tuple[DocstringSectionParameters | None, int])
rI   r(   rJ   r   r[   r   rK   r%   r   z2tuple[DocstringSectionOtherParameters | None, int])rI   r(   rJ   r   rK   r%   r   z-tuple[DocstringSectionAttributes | None, int])rI   r(   rJ   r   rK   r%   r   z,tuple[DocstringSectionFunctions | None, int])rI   r(   rJ   r   rK   r%   r   z*tuple[DocstringSectionClasses | None, int])rI   r(   rJ   r   rK   r%   r   z*tuple[DocstringSectionModules | None, int])rI   r(   rJ   r   rK   r%   r   z)tuple[DocstringSectionRaises | None, int])rI   r(   rJ   r   rK   r%   r   z(tuple[DocstringSectionWarns | None, int])
rI   r(   rJ   r   r   r   rK   r%   r   r   )
rI   r(   rp   r   rC   z	list[str]r   r   r   ztuple[str | None, Any, str])
rI   r(   r   zLiteral[0, 1, 2]r   r   r   r   r   zstr | Expr | None)rI   r(   rJ   r   r   r   r   r   rK   r%   r   z*tuple[DocstringSectionReturns | None, int])rI   r(   rJ   r   r   r   r   r   rK   r%   r   z)tuple[DocstringSectionYields | None, int])rI   r(   rJ   r   r   r   r   r   rK   r%   r   z+tuple[DocstringSectionReceives | None, int])
rI   r(   rJ   r   r   r   rK   r%   r   z+tuple[DocstringSectionExamples | None, int])rI   r(   rJ   r   rK   r%   r   z-tuple[DocstringSectionDeprecated | None, int])rP   strr   r   )rI   r(   r   r   r   r   r   r   r[   r   r   r   r   r   rK   r%   r   zlist[DocstringSection])c
__future__r   re
contextlibr   typingr   _griffe.docstrings.modelsr   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   _griffe.docstrings.utilsr    r!   _griffe.enumerationsr"   r#   r$   r%   r&   _griffe.expressionsr'   _griffe.modelsr(   r,   other_parametersr-   r/   r0   r1   r2   r3   r4   r6   r7   r8   r   tupler   listr   
_BlockItem_BlockItemsr   compile
IGNORECASEr:   __annotations__r;   r<   r=   rS   rZ   ru   rx   rz   r   r   r   r   r   r   r   r   r   r   r   r   r   r   rE   
deprecatedr   object	_sentinelr    rT   rR   <module>r     s5   # 	         8 S ?#((
 ++%00 "-- &11	
 (99 ->> &77 +<< (99 ,== ")) &-- #++ ")) $--  $--!" &11#$ &//#--#++#++!''$**/4 3S	>"
:K$%$"**%\^`^k^kl l+52::6v+w  w!+,B!C w C'RZZ(?@ 7 @<!~9F !%	;";" ;" 	;"
 ;" *;"|>> > 	>
 3> !%	CC C 	C
 C 8C">"> "> 	">
 3">J < <  < 	 <
 2 <F 8 8  8 	 8
 0 8F88 8 	8
 082:: : 	:
 /:844 4 	4
 .4: 	
>
> 
> 	
>
 
> 
>$ ))) )
 ) !)B    	
  . $( $)8)8 )8 !	)8
 )8 )8 0)8` $( $)6)6 )6 !	)6
 )6 )6 /)6` %)!%):): ): "	):
 ): ): 1):`  $	8>8> 8> 	8>
 8> 18>v  	
 30
 ##%=))+I!5 3!!#9##%=""$;  "7  "7  "7!5!!#9##%=  H	 !&##' $ $-2`` ` 	`
 !` ` ` '+` ` `rT   