Ë
    pPêjú*  ã                  ój  — d 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 ddlmZmZ ddlmZ ddl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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)m*Z*m+Z+m,Z,m-Z-m.Z.m/Z/m0Z0m1Z1 ddl2m3Z3  G d„ d«      Z4e G d„ d«      «       Z5e G d„ de%«      «       Z6 G d„ d«      Z7y)z;Shared definitions used by different parts of type checker.é    )Úannotations)Úabstractmethod)ÚIteratorÚSequenceÚSet)Úcontextmanager)ÚFinalÚoverload)Útrait)Ú	ErrorCode)ÚErrorWatcher)ÚErrorMessage)ÚArgKindÚContextÚ
ExpressionÚFuncBaseÚFuncItemÚ
LambdaExprÚMypyFileÚNodeÚRefExprÚ
SymbolNodeÚTypeInfoÚVar)ÚCheckerPluginInterfaceÚPlugin)
ÚCallableTypeÚFunctionLikeÚInstanceÚLiteralValueÚ
OverloadedÚPartialTypeÚ	TupleTypeÚTypeÚTypedDictTypeÚTypeType)Úfill_typevarsc                  ó   — e Zd Zdd„Zy)Ú	TypeRangec                ó    — || _         || _        y ©N)ÚitemÚis_upper_bound)Úselfr,   r-   s      úX/home/oem/CyberBrain26-unified/.venv/lib/python3.12/site-packages/mypy/checker_shared.pyÚ__init__zTypeRange.__init__0   s   € ØˆŒ	Ø%3ˆÕó    N)r,   r$   r-   ÚboolÚreturnÚNone)Ú__name__Ú
__module__Ú__qualname__r0   © r1   r/   r)   r)   /   s   „ ô4r1   r)   c                  ót  — e Zd Ze	 	 	 	 d	 	 	 	 	 	 	 	 	 	 	 dd„«       Zeddd„«       Ze	 	 	 	 	 d	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 dd„«       Ze	 	 d	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 dd„«       Zedd„«       Ze	 d	 	 	 	 	 	 	 	 	 	 	 	 	 dd„«       Z	e	 d	 	 	 	 	 	 	 dd	„«       Z
edd
„«       Zedddœ	 	 	 	 	 	 	 	 	 	 	 dd„«       Zy)ÚExpressionCheckerSharedApiNFc                ó   — t         ‚r+   ©ÚNotImplementedError)r.   ÚnodeÚtype_contextÚallow_none_returnÚalways_allow_anyÚ	is_callees         r/   Úacceptz!ExpressionCheckerSharedApi.accept7   ó
   € ô "Ð!r1   c                ó   — t         ‚r+   r<   )r.   ÚeÚlvalues      r/   Úanalyze_ref_exprz+ExpressionCheckerSharedApi.analyze_ref_exprB   ó   € ä!Ð!r1   c
                ó   — t         ‚r+   r<   )
r.   ÚcalleeÚargsÚ	arg_kindsÚcontextÚ	arg_namesÚcallable_nodeÚcallable_nameÚobject_typeÚoriginal_types
             r/   Ú
check_callz%ExpressionCheckerSharedApi.check_callF   s
   € ô "Ð!r1   c                ó   — t         ‚r+   r<   )r.   rQ   rK   rL   rM   rN   rO   rR   s           r/   Útransform_callee_typez0ExpressionCheckerSharedApi.transform_callee_typeU   s
   € ô "Ð!r1   c                ó   — t         ‚r+   r<   )r.   rR   Úmethod_names      r/   Úmethod_fullnamez*ExpressionCheckerSharedApi.method_fullnameb   rI   r1   c                ó   — t         ‚r+   r<   )r.   ÚmethodÚ	base_typerL   rM   rN   rS   s          r/   Úcheck_method_call_by_namez4ExpressionCheckerSharedApi.check_method_call_by_namef   ó
   € ô "Ð!r1   c                ó   — t         ‚r+   r<   )r.   Útd_typeÚindexÚsetitems       r/   Úvisit_typeddict_index_exprz5ExpressionCheckerSharedApi.visit_typeddict_index_exprr   ó
   € ô "Ð!r1   c                ó   — t         ‚r+   r<   )r.   ÚvalueÚfallback_names      r/   Úinfer_literal_expr_typez2ExpressionCheckerSharedApi.infer_literal_expr_typex   rI   r1   T)Úinclude_modulesÚsuppress_errorsc               ó   — t         ‚r+   r<   )r.   r>   ÚctxÚ	is_lvalueri   rj   s         r/   Úanalyze_static_referencez3ExpressionCheckerSharedApi.analyze_static_reference|   r^   r1   )NFFF)r>   r   r?   úType | Noner@   r2   rA   r2   rB   r2   r3   r$   )F)rF   r   rG   r2   r3   r$   )NNNNN)rK   r$   rL   úlist[Expression]rM   úlist[ArgKind]rN   r   rO   úSequence[str | None] | NonerP   zExpression | NonerQ   ú
str | NonerR   ro   rS   ro   r3   útuple[Type, Type]©NN)rQ   rs   rK   r$   rL   rp   rM   rq   rN   r   rO   rr   rR   ro   r3   r$   )rR   r$   rX   Ústrr3   rs   r+   )r[   rv   r\   r$   rL   rp   rM   rq   rN   r   rS   ro   r3   rt   )r`   r%   ra   r   rb   r2   r3   ztuple[Type, set[str]])rf   r    rg   rv   r3   r$   )r>   r   rl   r   rm   r2   ri   r2   rj   r2   r3   r$   )r5   r6   r7   r   rC   rH   rT   rV   rY   r]   rc   rh   rn   r8   r1   r/   r:   r:   5   ss  „ àð %)Ø"'Ø!&Øð"àð"ð "ð"ð  ð	"ð
 ð"ð ð"ð 
ò"ó ð"ð ó"ó ð"ð ð 26Ø+/Ø$(Ø#'Ø%)ð"àð"ð ð"ð !ð	"ð
 ð"ð /ð"ð )ð"ð "ð"ð !ð"ð #ð"ð 
ò"ó ð"ð ð 26Ø#'ð
"à!ð
"ð ð
"ð ð	
"ð
 !ð
"ð ð
"ð /ð
"ð !ð
"ð 
ò
"ó ð
"ð ò"ó ð"ð ð &*ð	"àð	"ð ð	"ð ð		"ð
 !ð	"ð ð	"ð #ð	"ð 
ò	"ó ð	"ð àINð"Ø$ð"Ø-7ð"ØBFð"à	ò"ó ð"ð
 ò"ó ð"ð ð !%Ø %ñ	"àð	"ð ð	"ð ð		"ð ð	"ð ð	"ð 
ò	"ó ñ	"r1   r:   c                  ó.  — e Zd ZU ded<   ded<   ded<   ded<   ded	<   eed$d
„«       «       Zed%d„«       Zed&d„«       Zed'd„«       Z	ed(d„«       Z
ed)d„«       Ze	 	 	 	 	 	 	 	 	 	 d*d„«       Zee	 	 d+ddddœ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 d,d„«       «       Zee	 	 d+dddœ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 d-d„«       «       Ze	 	 d+ddddœ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 d.d„«       Zed/d„«       Zee	 d0	 	 	 	 	 	 	 	 	 d1d„«       «       Zee	 	 	 	 	 	 	 	 	 	 d2d„«       «       Ze	 d0	 	 	 	 	 	 	 	 	 d3d„«       Ze	 	 	 	 	 	 	 	 	 	 	 	 d4d„«       Zed5d„«       Zed5d„«       Zed6d„«       Ze	 	 	 	 	 	 d7d„«       Zeed8d „«       «       Zed9d!„«       Zed:d"„«       Zed;d#„«       Zy)<ÚTypeCheckerSharedApir   Úpluginzset[str]Úmodule_refsÚCheckerScopeÚscoper2   Úchecking_missing_awaitÚallow_constructor_cachec                ó   — t         ‚r+   r<   ©r.   s    r/   Úexpr_checkerz!TypeCheckerSharedApi.expr_checker‘   ó
   € ô "Ð!r1   c                ó   — t         ‚r+   r<   )r.   Únames     r/   Ú
named_typezTypeCheckerSharedApi.named_type–   rI   r1   c                ó   — t         ‚r+   r<   )r.   Úfuncs     r/   Úfunction_typez"TypeCheckerSharedApi.function_typeš   rI   r1   c                ó   — t         ‚r+   r<   )r.   Úfullnames     r/   Úlookup_typeinfoz$TypeCheckerSharedApi.lookup_typeinfož   rI   r1   c                ó   — t         ‚r+   r<   )r.   r>   s     r/   Úlookup_typez TypeCheckerSharedApi.lookup_type¢   rI   r1   c                ó   — t         ‚r+   r<   )r.   r„   rN   s      r/   Úhandle_cannot_determine_typez1TypeCheckerSharedApi.handle_cannot_determine_type¦   rI   r1   c                ó   — t         ‚r+   r<   )r.   Útyprm   r>   rN   s        r/   Úhandle_partial_var_typez,TypeCheckerSharedApi.handle_partial_var_typeª   rd   r1   N)ÚnotesÚcodeÚouter_contextc                ó   — y r+   r8   ©
r.   ÚsubtypeÚ	supertyperN   ÚmsgÚsubtype_labelÚsupertype_labelr“   r”   r•   s
             r/   Úcheck_subtypez"TypeCheckerSharedApi.check_subtype°   s   € ð r1   )r“   r•   c                ó   — y r+   r8   )	r.   r˜   r™   rN   rš   r›   rœ   r“   r•   s	            r/   r�   z"TypeCheckerSharedApi.check_subtypeÀ   s   € ð r1   c               ó   — t         ‚r+   r<   r—   s
             r/   r�   z"TypeCheckerSharedApi.check_subtypeÐ   s
   € ô "Ð!r1   c                ó   — t         ‚r+   r<   r€   s    r/   Úget_final_contextz&TypeCheckerSharedApi.get_final_contextà   rI   r1   c                 ó   — y r+   r8   ©r.   Ú	expr_typeÚtype_rangesrl   Údefaults        r/   Ú#conditional_types_with_intersectionz8TypeCheckerSharedApi.conditional_types_with_intersectionä   s   € ð +.r1   c                 ó   — y r+   r8   r£   s        r/   r§   z8TypeCheckerSharedApi.conditional_types_with_intersectionî   s   € ð  r1   c                ó   — t         ‚r+   r<   r£   s        r/   r§   z8TypeCheckerSharedApi.conditional_types_with_intersectionõ   s
   € ô "Ð!r1   c                ó   — t         ‚r+   r<   )r.   ÚoperatorÚoperandsÚoperand_typesÚexpr_indicesÚnarrowable_indicess         r/   Ú narrow_type_by_identity_equalityz5TypeCheckerSharedApi.narrow_type_by_identity_equalityÿ   rD   r1   c                ó   — t         ‚r+   r<   ©r.   r>   rN   s      r/   Úcheck_deprecatedz%TypeCheckerSharedApi.check_deprecated
  rI   r1   c                ó   — t         ‚r+   r<   r²   s      r/   Úwarn_deprecatedz$TypeCheckerSharedApi.warn_deprecated  rI   r1   c                ó   — t         ‚r+   r<   )r.   Útypes     r/   Útype_is_iterablez%TypeCheckerSharedApi.type_is_iterable  rI   r1   c                ó   — t         ‚r+   r<   )r.   ÚitrN   s      r/   Úiterable_item_typez'TypeCheckerSharedApi.iterable_item_type  rd   r1   c                ó   — t         ‚r+   r<   r€   s    r/   Úchecking_await_setz'TypeCheckerSharedApi.checking_await_set  r‚   r1   c                ó   — t         ‚r+   r<   )r.   r‘   Úlocal_errorss      r/   Úget_precise_awaitable_typez/TypeCheckerSharedApi.get_precise_awaitable_type!  rI   r1   c                ó   — t         ‚r+   r<   )r.   r‘   r„   s      r/   Úadd_any_attribute_to_typez.TypeCheckerSharedApi.add_any_attribute_to_type%  rI   r1   c               ó   — t         ‚r+   r<   )r.   r‘   s     r/   Úis_defined_in_stubz'TypeCheckerSharedApi.is_defined_in_stub)  rI   r1   )r3   r:   )r„   rv   r3   r   )r‡   r   r3   r   )rŠ   rv   r3   r   )r>   r   r3   r$   )r„   rv   rN   r   r3   r4   )
r‘   r"   rm   r2   r>   r   rN   r   r3   r$   ru   )r˜   r$   r™   r$   rN   r   rš   rv   r›   rs   rœ   rs   r“   úlist[str] | Noner”   úErrorCode | Noner•   úContext | Noner3   r2   )r˜   r$   r™   r$   rN   r   rš   r   r›   rs   rœ   rs   r“   rÅ   r•   rÇ   r3   r2   )r˜   r$   r™   r$   rN   r   rš   zstr | ErrorMessager›   rs   rœ   rs   r“   rÅ   r”   rÆ   r•   rÇ   r3   r2   ©r3   r2   r+   )
r¤   r$   r¥   úlist[TypeRange] | Nonerl   r   r¦   r4   r3   útuple[Type | None, Type | None])
r¤   r$   r¥   rÉ   rl   r   r¦   r$   r3   rt   )
r¤   r$   r¥   rÉ   rl   r   r¦   ro   r3   rÊ   )r«   rv   r¬   rp   r­   z
list[Type]r®   z	list[int]r¯   zAbstractSet[int]r3   zCtuple[dict[Expression, Type] | None, dict[Expression, Type] | None])r>   zNode | NonerN   r   r3   r4   )r·   r$   r3   r2   )rº   z/Instance | CallableType | TypeType | OverloadedrN   r   r3   r$   )r3   úIterator[None])r‘   r$   r¿   r   r3   ro   )r‘   r$   r„   rv   r3   r$   )r‘   r   r3   r2   )r5   r6   r7   Ú__annotations__Úpropertyr   r�   r…   rˆ   r‹   r�   r�   r’   r
   r�   r¡   r§   r°   r³   rµ   r¸   r»   r   r½   rÀ   rÂ   rÄ   r8   r1   r/   rx   rx   ‰   s‡  … àƒNØÓØÓØ Ó Ø!Ó!àØò"ó ó ð"ð ò"ó ð"ð ò"ó ð"ð ò"ó ð"ð ò"ó ð"ð ò"ó ð"ð ð"Øð"Ø+/ð"Ø7:ð"ØELð"à	ò"ó ð"ð
 Øð %)Ø&*ðð #'Ø!%Ø(,ñàðð ðð ð	ð
 ðð "ðð $ðð  ðð ðð &ðð 
òó ó ðð Øð %)Ø&*ðð #'Ø(,ñàðð ðð ð	ð
 ðð "ðð $ðð  ðð &ðð 
òó ó ðð ð %)Ø&*ð"ð #'Ø!%Ø(,ñ"àð"ð ð"ð ð	"ð
  ð"ð "ð"ð $ð"ð  ð"ð ð"ð &ð"ð 
ò"ó ð"ð ò"ó ð"ð Øð ð.àð.ð ,ð.ð ð	.ð
 ð.ð 
)ò.ó ó ð.ð Øð Øð Ø,Bð ØIPð Ø[_ð à	ò ó ó ð ð
 ð  $ð"àð"ð ,ð"ð ð	"ð
 ð"ð 
)ò"ó ð"ð ð"àð"ð #ð"ð "ð	"ð
  ð"ð -ð"ð 
Mò"ó ð"ð ò"ó ð"ð ò"ó ð"ð ò"ó ð"ð ð"ØAð"ØLSð"à	ò"ó ð"ð
 Øò"ó ó ð"ð ò"ó ð"ð ò"ó ð"ð ò"ó ñ"r1   rx   c                  ó†   — e Zd ZU ded<   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edd„«       Zedd„«       Zy)r{   z$list[TypeInfo | FuncItem | MypyFile]Ústackc                ó   — |g| _         y r+   )rÏ   )r.   Úmodules     r/   r0   zCheckerScope.__init__2  s   € Ø�Xˆ�
r1   c                ó`   — t        | j                  «      D ]  }t        |t        «      sŒ|c S  y r+   )ÚreversedrÏ   Ú
isinstancer   ©r.   rF   s     r/   Úcurrent_functionzCheckerScope.current_function5  s.   € Ü˜$Ÿ*™*Ó%ò 	ˆAÜ˜!œXÕ&Ø’ð	ð r1   c                óp   — | j                   D ]'  }t        |t        «      sŒt        |t        «      rŒ%|c S  y)z%Return top-level non-lambda function.N)rÏ   rÔ   r   r   rÕ   s     r/   Útop_level_functionzCheckerScope.top_level_function;  s2   € à—‘ò 	ˆAÜ˜!œXÕ&¬z¸!¼ZÕ/HØ’ð	ð r1   c                ó\   — t        | j                  d   t        «      r| j                  d   S y )Néÿÿÿÿ)rÔ   rÏ   r   r€   s    r/   Úactive_classzCheckerScope.active_classB  s%   € Ü�d—j‘j ‘n¤hÔ/Ø—:‘:˜b‘>Ð!Ør1   Nc                óÎ   — |xs | j                  «       }|sJ d«       ‚| j                  j                  |«      }|sJ d«       ‚| j                  |dz
     }t        |t        «      r|S y)z4Is there a class *directly* enclosing this function?z1This method must be called from inside a functionz2CheckerScope stack must always start with a moduleé   N)rÖ   rÏ   ra   rÔ   r   )r.   r‡   ra   Ú	enclosings       r/   Úenclosing_classzCheckerScope.enclosing_classG  sj   € àÒ.�t×,Ñ,Ó.ˆÙÐHÐHÓHˆtØ—
‘
× Ñ  Ó&ˆÙÐJÐJÓJˆuØ—J‘J˜u q™yÑ)ˆ	Ü�i¤Ô*ØÐØr1   c                ó‚   — | j                  «       }|s | j                  «       r| j                  «       }|rt        |«      S y)zÖAn instance or tuple type representing the current class.

        This returns None unless we are in class body or in a method.
        In particular, inside a function nested in method this returns None.
        N)rÛ   rÖ   rß   r'   ©r.   Úinfos     r/   Úactive_self_typezCheckerScope.active_self_typeR  s?   € ð × Ñ Ó"ˆÙ˜×-Ñ-Ô/Ø×'Ñ'Ó)ˆDÙÜ  Ó&Ð&Ør1   c                ó>   — | j                  «       x}�t        |«      S y)zBSame as active_self_type() but handle functions nested in methods.N)Úcurrent_classr'   ©r.   r,   s     r/   Úcurrent_self_typezCheckerScope.current_self_type_  s$   € à×&Ñ&Ó(Ð(ˆDÐ5Ü  Ó&Ð&Ør1   c                ó`   — t        | j                  «      D ]  }t        |t        «      sŒ|c S  y r+   )rÓ   rÏ   rÔ   r   ræ   s     r/   rå   zCheckerScope.current_classe  s.   € Ü˜TŸZ™ZÓ(ò 	ˆDÜ˜$¤Õ)Ø’ð	ð r1   c                ó2   — t        | j                  «      dk(  S )z5Is current scope top-level (no classes or functions)?rÝ   )ÚlenrÏ   r€   s    r/   Úis_top_levelzCheckerScope.is_top_levelk  s   € ä�4—:‘:‹ !Ñ#Ð#r1   c              #  ó~   K  — | j                   j                  |«       d –— | j                   j                  «        y ­wr+   ©rÏ   ÚappendÚpopræ   s     r/   Úpush_functionzCheckerScope.push_functiono  ó)   è ø€ à�
‰
×Ñ˜$ÔÛØ�
‰
�‰Õùó   ‚;=c              #  ó~   K  — | j                   j                  |«       d –— | j                   j                  «        y ­wr+   rí   rá   s     r/   Ú
push_classzCheckerScope.push_classu  rñ   rò   )rÑ   r   r3   r4   )r3   úFuncItem | None)r3   úTypeInfo | Noner+   )r‡   rõ   r3   rö   )r3   zInstance | TupleType | NonerÈ   )r,   r   r3   rË   )râ   r   r3   rË   )r5   r6   r7   rÌ   r0   rÖ   rØ   rÛ   rß   rã   rç   rå   rë   r   rð   rô   r8   r1   r/   r{   r{   .  s]   … à/Ó/óóóóô
	óóóó$ð òó ðð
 òó ñr1   r{   N)8Ú__doc__Ú
__future__r   Úabcr   Úcollections.abcr   r   r   ÚAbstractSetÚ
contextlibr   Útypingr	   r
   Úmypy_extensionsr   Úmypy.errorcodesr   Úmypy.errorsr   Úmypy.message_registryr   Ú
mypy.nodesr   r   r   r   r   r   r   r   r   r   r   r   Úmypy.pluginr   r   Ú
mypy.typesr   r   r   r    r!   r"   r#   r$   r%   r&   Úmypy.typevarsr'   r)   r:   rx   r{   r8   r1   r/   ú<module>r     s¦   ðÙ Aå "å ß BÑ BÝ %ß "å !å %Ý $Ý .÷÷ ÷ ó ÷ 7÷÷ ÷ õ (÷
4ñ 4ð ÷P"ð P"ó ðP"ðf ôa"Ð1ó a"ó ða"÷HKò Kr1   