
    ~Ti-                       U d Z ddlmZ ddlZddlmZ ddlmZmZ ddl	m
Z
 ddlmZmZmZ ddlmZ dd	lmZ dd
lmZmZmZ ddlmZmZ ddlmZ ddlmZ ddlmZm Z m!Z!m"Z"m#Z# erddlm$Z$m%Z% ddl&m'Z'  G d de%      Z( e)dhe      Z*de+d<   de#f	 	 	 	 	 	 	 	 	 ddZ, G d de      Z-	 d	 	 	 	 	 	 	 	 	 ddZ.	 d	 	 	 	 	 	 	 	 	 d dZ/y)!zImporter utilities for autodoc    )annotationsN)EXTENSION_SUFFIXES)TYPE_CHECKING
NamedTuple)PycodeError)_find_type_stub_spec_reload_module_StubFileLoader)_import_module)_mangle_name)_filter_enum_dict_is_native_enum_apiunmangle)ismock
undecorate)LOGGER)ModuleAnalyzer)getannotationsgetmrogetslotsisenumclasssafe_getattr)AnyProtocolObjectMemberc                      e Zd ZdddZy)_AttrGetterc                    y N )selfobjnamedefaults       N/home/agent/.local/lib/python3.12/site-packages/sphinx/ext/autodoc/importer.py__call__z_AttrGetter.__call__)   s        N).)r#   r   r$   strr%   r   returnr   )__name__
__module____qualname__r'   r!   r(   r&   r   r   (   s    Rr(   r   z.pyxzfrozenset[str]_NATIVE_SUFFIXES c                   |r't        j                  d| dj                  |             nt        j                  d|        	 d }d }|j                         }|(	 t	        | d      }t        j                  d| |       |(|}d }	d }
|D ]H  }|}	t        j                  d
|       t        ||      } |||      }	 t        j                  d|       |}
J ||	|
|gS # t
        $ rO}t        j                  d|        |}d| v r(| j                  dd      \  } }|j                  d	|       n Y d }~d }~ww xY w# t        $ r t        j                  d|f       Y w xY w# t        t
        f$ r}t        |t              rr|}|rd|ddj                  |      d| }nd| d| }t        |t
              ru|j                  d	   }t        j                  |      }t        |t              r|dz  }nUt        |t
              r"|j                  r|d|j                  d	   z  z  }n#|d|z  z  }n|dt        j                          z  z  }t        j                  |       t        |      |d }~ww xY w)Nz[autodoc] from %s import %s.z[autodoc] import %sT)
try_reloadz[autodoc] import %s => %rz[autodoc] import %s => failed   r   z[autodoc] getattr(_, %r)z[autodoc] => %rzautodoc: failed to import  z from module zJ; the module executes module level statement and it might call sys.exit().z(; the following exception was raised:
%s)r   debugjoincopyimport_moduleImportErrorrsplitinsertmangle	TypeErrorAttributeError
isinstanceargs	tracebackformat_exception
SystemExit
format_exc)modnameobjpathobjtype
attrgettermoduleexc_on_importingexcr$   r#   parentobject_nameattrnamemangled_nameerrmsgreal_exctraceback_msgs                   r&   import_objectrS   0   sz    2GSXXg=NO*G4F+,,.n&w4@8'6J n  	#HFLL3X>!#x0LS,/C8.4 #K	# S117  <gF#& '>$+NN3$:MGTNN1d+ ,*  8 .78 K( "+c>*/?"C!F 2'!G;GFc;' xx{H%66s;M(J/4 Hk2x}}EVWHXXXEUU;i>R>R>TTF 	V&!s*E"+sn   E $C <E ?8E 8D3	E 	D0!AD+&E +D00E 3 EE EE I&(C9I!!I&c                  ,    e Zd ZU ded<   ded<   ded<   y)	Attributer)   r$   booldirectly_definedr   valueN)r+   r,   r-   __annotations__r!   r(   r&   rU   rU      s    
IJr(   rU   c                   ddl m}  || di       }i }t        |       r8t        | ||      D ](  \  }}}	t	        ||      x}
st        |
|| u |	      ||
<   * 	 t        |       }|rddl m} |D ]  }t        |d|      ||<    t        |       D ]3  }	  || |      }	||v }t	        | |      }
|
r|
|vrt        |
||	      ||
<   5 t        |       D ]9  }t        |      D ])  }t	        ||      }
|
s|
|vst        |
|| u |      ||
<   + ; |rEdj                  |      }|j                         D ]!  \  }}||k(  s||vst        |d|      ||<   # |S # t        t        f$ r Y w xY w# t        $ r Y w xY w)z,Get members and attributes of target object.r   INSTANCEATTR__dict__)r$   rW   rX   	SLOTSATTRTr1   )1sphinx.ext.autodoc._legacy_class_based._sentinelsr\   r   r   r   rU   r   r_   r=   
ValueErrordirr>   r   r   r6   find_attr_docs)subjectrF   rH   analyzerr\   obj_dictmembersr$   defining_classrX   	unmangledsubject___slots__r_   rW   cls	namespacenss                    r&   get_object_membersrn      s    O ':r2H$&G 7+<Z,
 
	'D.%
 %^T::y:%."%3w%>&	"
	
$W-S)  )I! G 
		w-E#x/ $/IYg5%."5EU&	"
 g "3' 	D d+IYg5%."SG^<&	"	 HHW%	 //1 	HBB4w#6 )L!	 NE z"   		s$   +E 0E(E%$E%(	E43E4c           
     @   ddl m} ddlm}  || di       }i }t	        |       r3t        | ||      D ]#  \  }}	}
t        |	|      x}s |||
|	      ||<   % 	 t        |       }|r-ddlm} |j                         D ]  \  }} |||| |      ||<    t        |       D ]S  }	  || |      }
t        |
      rt        |
      }
t        | |      }|r#||vr||v r |||
|       ||<   n |||
      ||<   U 	 t!        |       D ]C  }	 t#        |d      }t#        |d	      }t%        j&                  |      }|j)                          t-        |      D ]Z  }t        ||      }|s||vs|r1|f|j.                  v r!dj1                  |j.                  ||f         }nd
} |||||      ||<   \ |s|j.                  j                         D ]z  \  \  }}}|k(  r#||vr ||||dj1                  |            ||<   1||k(  s7|s:t3        ||   |      sJ||   j4                  rZ|| k7  r|sbdj1                  |      ||   _        | F 	 |S # t        t        f$ r Y w xY w# t        $ r Y w xY w# t        $ r d
}d
}Y >t*        $ r d
}Y Kw xY w# t        $ r Y |S w xY w)z+Get members and attributes of target class.r   r   r[   r]   )class_r^   )rp   	docstringr,   r-   N
)3sphinx.ext.autodoc._legacy_class_based._documentersr   r`   r\   r   r   r   r   r_   itemsr=   ra   rb   r   r   r>   r   r   r   
for_moduleanalyzer   r   	attr_docsr6   r?   rq   )rd   rF   rH   inherit_docstringsr   r\   rf   rg   r$   rh   rX   ri   rj   r_   rq   rk   rE   qualnamere   rm   s                       r&   get_class_membersrz      s)    QN ':r2H')G 7+<Z,
 	'D.%
 %^T::y:%1u^&	"	
$W-S#4#:#:#< i ,)Gy! G 	w-Ee}"5) $/IYg58#)5iw)WGI&)5i)GGI&4'? 1	GC	 &sL9'^<)44W=  " 's+ 
$S$/	'!9Xy$9X=O=O$O$(IIh.@.@9AT.U$V	$(	)5!<y*GI&
 -5-?-?-E-E-G G)JR	X~$g*=(4 (#&&*ii	&:	) h%&wt}lC ' 7 7'>2D % 37))I2F/-G71	Gj NS z"    		 "     R  Ns   :I	 !AI4J =I/J J #AJ ,AJ =J  J J  &J 	II	I,+I,/J<J ?
J	J JJ 	JJ)
rE   r)   rF   	list[str]rG   r)   rH   r   r*   r   r    )
rd   r   rF   r{   rH   r   re   zModuleAnalyzer | Noner*   zdict[str, Attribute])T)
rd   r   rF   r   rH   r   rx   rV   r*   zdict[str, ObjectMember])0__doc__
__future__r   rA   importlib.machineryr   typingr   r   sphinx.errorsr   %sphinx.ext.autodoc._dynamic._importerr   r	   r
   r   r8   r   r<   *sphinx.ext.autodoc._dynamic._member_finderr   r   r   !sphinx.ext.autodoc._dynamic._mockr   r   sphinx.ext.autodoc._sharedr   sphinx.pycoder   sphinx.util.inspectr   r   r   r   r   r   r   rs   r   r   	frozensetr.   rY   rS   rU   rn   rz   r!   r(   r&   <module>r      sG   $ "  2 , % 
 I 
 A - (  $PSh S $-f-J7I-J#K . K *	Q+Q+Q+ Q+ 	Q+
 	Q+j
  '+	HHH H $	H
 HZ UYkkk,7kMQkkr(   