o
    ØÝ2gÈ>  ã                
   @  sú   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
mZ er*ddlZddlZedƒZee
dd	G d
d„ dee ƒƒƒZee
dd	G dd„ dee ƒƒƒZee
dd	G dd„ dee ƒƒƒZee
dd	G dd„ dee ee ee ee ƒƒƒZdS )z)Generic abstract syntax tree node visitoré    )Úannotations)Úabstractmethod)ÚTYPE_CHECKINGÚGenericÚTypeVar)Ú
mypyc_attrÚtraitNÚTT)Úallow_interpreted_subclassesc                   @  st  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ddd„ƒZedŽdd„ƒZ	eddd„ƒZ
edd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)d*„ƒZed–d,d-„ƒZed—d/d0„ƒZed˜d2d3„ƒZed™d5d6„ƒZedšd8d9„ƒZed›d;d<„ƒZedœd>d?„ƒZeddAdB„ƒZedždDdE„ƒZedŸdGdH„ƒZed dJdK„ƒZed¡dMdN„ƒZed¢dPdQ„ƒZed£dSdT„ƒZed¤dVdW„ƒZed¥dYdZ„ƒZ ed¦d\d]„ƒZ!ed§d_d`„ƒZ"ed¨dbdc„ƒZ#ed©dedf„ƒZ$edªdhdi„ƒZ%ed«dkdl„ƒZ&ed¬dndo„ƒZ'ed­dqdr„ƒZ(ed®dtdu„ƒZ)ed¯dwdx„ƒZ*ed°dzd{„ƒZ+ed±d}d~„ƒZ,ed²d€d„ƒZ-ed³dƒd„„ƒZ.ed´d†d‡„ƒZ/dˆS )µÚExpressionVisitorÚoúmypy.nodes.IntExprÚreturnr	   c                 C  ó   d S ©N© ©Úselfr   r   r   úD/home/garg/my-data/venv/lib/python3.10/site-packages/mypy/visitor.pyÚvisit_int_expr   ó   z ExpressionVisitor.visit_int_exprúmypy.nodes.StrExprc                 C  r   r   r   r   r   r   r   Úvisit_str_expr   r   z ExpressionVisitor.visit_str_exprúmypy.nodes.BytesExprc                 C  r   r   r   r   r   r   r   Úvisit_bytes_expr   r   z"ExpressionVisitor.visit_bytes_exprúmypy.nodes.FloatExprc                 C  r   r   r   r   r   r   r   Úvisit_float_expr"   r   z"ExpressionVisitor.visit_float_exprúmypy.nodes.ComplexExprc                 C  r   r   r   r   r   r   r   Úvisit_complex_expr&   r   z$ExpressionVisitor.visit_complex_exprúmypy.nodes.EllipsisExprc                 C  r   r   r   r   r   r   r   Úvisit_ellipsis*   r   z ExpressionVisitor.visit_ellipsisúmypy.nodes.StarExprc                 C  r   r   r   r   r   r   r   Úvisit_star_expr.   r   z!ExpressionVisitor.visit_star_exprúmypy.nodes.NameExprc                 C  r   r   r   r   r   r   r   Úvisit_name_expr2   r   z!ExpressionVisitor.visit_name_exprúmypy.nodes.MemberExprc                 C  r   r   r   r   r   r   r   Úvisit_member_expr6   r   z#ExpressionVisitor.visit_member_exprúmypy.nodes.YieldFromExprc                 C  r   r   r   r   r   r   r   Úvisit_yield_from_expr:   r   z'ExpressionVisitor.visit_yield_from_exprúmypy.nodes.YieldExprc                 C  r   r   r   r   r   r   r   Úvisit_yield_expr>   r   z"ExpressionVisitor.visit_yield_exprúmypy.nodes.CallExprc                 C  r   r   r   r   r   r   r   Úvisit_call_exprB   r   z!ExpressionVisitor.visit_call_exprúmypy.nodes.OpExprc                 C  r   r   r   r   r   r   r   Úvisit_op_exprF   r   zExpressionVisitor.visit_op_exprúmypy.nodes.ComparisonExprc                 C  r   r   r   r   r   r   r   Úvisit_comparison_exprJ   r   z'ExpressionVisitor.visit_comparison_exprúmypy.nodes.CastExprc                 C  r   r   r   r   r   r   r   Úvisit_cast_exprN   r   z!ExpressionVisitor.visit_cast_exprúmypy.nodes.AssertTypeExprc                 C  r   r   r   r   r   r   r   Úvisit_assert_type_exprR   r   z(ExpressionVisitor.visit_assert_type_exprúmypy.nodes.RevealExprc                 C  r   r   r   r   r   r   r   Úvisit_reveal_exprV   r   z#ExpressionVisitor.visit_reveal_exprúmypy.nodes.SuperExprc                 C  r   r   r   r   r   r   r   Úvisit_super_exprZ   r   z"ExpressionVisitor.visit_super_exprúmypy.nodes.UnaryExprc                 C  r   r   r   r   r   r   r   Úvisit_unary_expr^   r   z"ExpressionVisitor.visit_unary_exprúmypy.nodes.AssignmentExprc                 C  r   r   r   r   r   r   r   Úvisit_assignment_exprb   r   z'ExpressionVisitor.visit_assignment_exprúmypy.nodes.ListExprc                 C  r   r   r   r   r   r   r   Úvisit_list_exprf   r   z!ExpressionVisitor.visit_list_exprúmypy.nodes.DictExprc                 C  r   r   r   r   r   r   r   Úvisit_dict_exprj   r   z!ExpressionVisitor.visit_dict_exprúmypy.nodes.TupleExprc                 C  r   r   r   r   r   r   r   Úvisit_tuple_exprn   r   z"ExpressionVisitor.visit_tuple_exprúmypy.nodes.SetExprc                 C  r   r   r   r   r   r   r   Úvisit_set_exprr   r   z ExpressionVisitor.visit_set_exprúmypy.nodes.IndexExprc                 C  r   r   r   r   r   r   r   Úvisit_index_exprv   r   z"ExpressionVisitor.visit_index_exprúmypy.nodes.TypeApplicationc                 C  r   r   r   r   r   r   r   Úvisit_type_applicationz   r   z(ExpressionVisitor.visit_type_applicationúmypy.nodes.LambdaExprc                 C  r   r   r   r   r   r   r   Úvisit_lambda_expr~   r   z#ExpressionVisitor.visit_lambda_exprúmypy.nodes.ListComprehensionc                 C  r   r   r   r   r   r   r   Úvisit_list_comprehension‚   r   z*ExpressionVisitor.visit_list_comprehensionúmypy.nodes.SetComprehensionc                 C  r   r   r   r   r   r   r   Úvisit_set_comprehension†   r   z)ExpressionVisitor.visit_set_comprehensionú"mypy.nodes.DictionaryComprehensionc                 C  r   r   r   r   r   r   r   Úvisit_dictionary_comprehensionŠ   r   z0ExpressionVisitor.visit_dictionary_comprehensionúmypy.nodes.GeneratorExprc                 C  r   r   r   r   r   r   r   Úvisit_generator_exprŽ   r   z&ExpressionVisitor.visit_generator_exprúmypy.nodes.SliceExprc                 C  r   r   r   r   r   r   r   Úvisit_slice_expr’   r   z"ExpressionVisitor.visit_slice_exprúmypy.nodes.ConditionalExprc                 C  r   r   r   r   r   r   r   Úvisit_conditional_expr–   r   z(ExpressionVisitor.visit_conditional_exprúmypy.nodes.TypeVarExprc                 C  r   r   r   r   r   r   r   Úvisit_type_var_exprš   r   z%ExpressionVisitor.visit_type_var_exprúmypy.nodes.ParamSpecExprc                 C  r   r   r   r   r   r   r   Úvisit_paramspec_exprž   r   z&ExpressionVisitor.visit_paramspec_exprúmypy.nodes.TypeVarTupleExprc                 C  r   r   r   r   r   r   r   Úvisit_type_var_tuple_expr¢   r   z+ExpressionVisitor.visit_type_var_tuple_exprúmypy.nodes.TypeAliasExprc                 C  r   r   r   r   r   r   r   Úvisit_type_alias_expr¦   r   z'ExpressionVisitor.visit_type_alias_exprúmypy.nodes.NamedTupleExprc                 C  r   r   r   r   r   r   r   Úvisit_namedtuple_exprª   r   z'ExpressionVisitor.visit_namedtuple_exprúmypy.nodes.EnumCallExprc                 C  r   r   r   r   r   r   r   Úvisit_enum_call_expr®   r   z&ExpressionVisitor.visit_enum_call_exprúmypy.nodes.TypedDictExprc                 C  r   r   r   r   r   r   r   Úvisit_typeddict_expr²   r   z&ExpressionVisitor.visit_typeddict_exprúmypy.nodes.NewTypeExprc                 C  r   r   r   r   r   r   r   Úvisit_newtype_expr¶   r   z$ExpressionVisitor.visit_newtype_exprúmypy.nodes.PromoteExprc                 C  r   r   r   r   r   r   r   Úvisit__promote_exprº   r   z%ExpressionVisitor.visit__promote_exprúmypy.nodes.AwaitExprc                 C  r   r   r   r   r   r   r   Úvisit_await_expr¾   r   z"ExpressionVisitor.visit_await_exprúmypy.nodes.TempNodec                 C  r   r   r   r   r   r   r   Úvisit_temp_nodeÂ   r   z!ExpressionVisitor.visit_temp_nodeN©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   r'   r   r	   ©r   r)   r   r	   ©r   r+   r   r	   ©r   r-   r   r	   ©r   r/   r   r	   ©r   r1   r   r	   ©r   r3   r   r	   ©r   r5   r   r	   ©r   r7   r   r	   ©r   r9   r   r	   ©r   r;   r   r	   ©r   r=   r   r	   ©r   r?   r   r	   ©r   rA   r   r	   ©r   rC   r   r	   ©r   rE   r   r	   ©r   rG   r   r	   ©r   rI   r   r	   ©r   rK   r   r	   ©r   rM   r   r	   ©r   rO   r   r	   ©r   rQ   r   r	   ©r   rS   r   r	   ©r   rU   r   r	   ©r   rW   r   r	   ©r   rY   r   r	   ©r   r[   r   r	   ©r   r]   r   r	   ©r   r_   r   r	   ©r   ra   r   r	   ©r   rc   r   r	   ©r   re   r   r	   ©r   rg   r   r	   ©r   ri   r   r	   ©r   rk   r   r	   )0Ú__name__Ú
__module__Ú__qualname__r   r   r   r   r   r   r    r"   r$   r&   r(   r*   r,   r.   r0   r2   r4   r6   r8   r:   r<   r>   r@   rB   rD   rF   rH   rJ   rL   rN   rP   rR   rT   rV   rX   rZ   r\   r^   r`   rb   rd   rf   rh   rj   rl   r   r   r   r   r      s²    r   c                   @  s†  e Zd ZedVdd„ƒZedWdd	„ƒZedXdd„ƒZedYdd„ƒZedZd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 d!„ƒZed`d#d$„ƒZedad&d'„ƒZedbd)d*„ƒZedcd,d-„ƒZeddd/d0„ƒZeded2d3„ƒZedfd5d6„ƒZedgd8d9„ƒZedhd;d<„ƒZedid>d?„ƒZedjdAdB„ƒZedkdDdE„ƒZedldGdH„ƒZedmdJdK„ƒZedndMdN„ƒZedodPdQ„ƒZedpdSdT„ƒZdUS )qÚStatementVisitorr   úmypy.nodes.AssignmentStmtr   r	   c                 C  r   r   r   r   r   r   r   Úvisit_assignment_stmtÌ   r   z&StatementVisitor.visit_assignment_stmtúmypy.nodes.ForStmtc                 C  r   r   r   r   r   r   r   Úvisit_for_stmtÐ   r   zStatementVisitor.visit_for_stmtúmypy.nodes.WithStmtc                 C  r   r   r   r   r   r   r   Úvisit_with_stmtÔ   r   z StatementVisitor.visit_with_stmtúmypy.nodes.DelStmtc                 C  r   r   r   r   r   r   r   Úvisit_del_stmtØ   r   zStatementVisitor.visit_del_stmtúmypy.nodes.FuncDefc                 C  r   r   r   r   r   r   r   Úvisit_func_defÜ   r   zStatementVisitor.visit_func_defúmypy.nodes.OverloadedFuncDefc                 C  r   r   r   r   r   r   r   Úvisit_overloaded_func_defà   r   z*StatementVisitor.visit_overloaded_func_defúmypy.nodes.ClassDefc                 C  r   r   r   r   r   r   r   Úvisit_class_defä   r   z StatementVisitor.visit_class_defúmypy.nodes.GlobalDeclc                 C  r   r   r   r   r   r   r   Úvisit_global_declè   r   z"StatementVisitor.visit_global_declúmypy.nodes.NonlocalDeclc                 C  r   r   r   r   r   r   r   Úvisit_nonlocal_declì   r   z$StatementVisitor.visit_nonlocal_declúmypy.nodes.Decoratorc                 C  r   r   r   r   r   r   r   Úvisit_decoratorð   r   z StatementVisitor.visit_decoratorúmypy.nodes.Importc                 C  r   r   r   r   r   r   r   Úvisit_importö   r   zStatementVisitor.visit_importúmypy.nodes.ImportFromc                 C  r   r   r   r   r   r   r   Úvisit_import_fromú   r   z"StatementVisitor.visit_import_fromúmypy.nodes.ImportAllc                 C  r   r   r   r   r   r   r   Úvisit_import_allþ   r   z!StatementVisitor.visit_import_allúmypy.nodes.Blockc                 C  r   r   r   r   r   r   r   Úvisit_block  r   zStatementVisitor.visit_blockúmypy.nodes.ExpressionStmtc                 C  r   r   r   r   r   r   r   Úvisit_expression_stmt  r   z&StatementVisitor.visit_expression_stmtú!mypy.nodes.OperatorAssignmentStmtc                 C  r   r   r   r   r   r   r   Úvisit_operator_assignment_stmt  r   z/StatementVisitor.visit_operator_assignment_stmtúmypy.nodes.WhileStmtc                 C  r   r   r   r   r   r   r   Úvisit_while_stmt  r   z!StatementVisitor.visit_while_stmtúmypy.nodes.ReturnStmtc                 C  r   r   r   r   r   r   r   Úvisit_return_stmt  r   z"StatementVisitor.visit_return_stmtúmypy.nodes.AssertStmtc                 C  r   r   r   r   r   r   r   Úvisit_assert_stmt  r   z"StatementVisitor.visit_assert_stmtúmypy.nodes.IfStmtc                 C  r   r   r   r   r   r   r   Úvisit_if_stmt  r   zStatementVisitor.visit_if_stmtúmypy.nodes.BreakStmtc                 C  r   r   r   r   r   r   r   Úvisit_break_stmt   r   z!StatementVisitor.visit_break_stmtúmypy.nodes.ContinueStmtc                 C  r   r   r   r   r   r   r   Úvisit_continue_stmt$  r   z$StatementVisitor.visit_continue_stmtúmypy.nodes.PassStmtc                 C  r   r   r   r   r   r   r   Úvisit_pass_stmt(  r   z StatementVisitor.visit_pass_stmtúmypy.nodes.RaiseStmtc                 C  r   r   r   r   r   r   r   Úvisit_raise_stmt,  r   z!StatementVisitor.visit_raise_stmtúmypy.nodes.TryStmtc                 C  r   r   r   r   r   r   r   Úvisit_try_stmt0  r   zStatementVisitor.visit_try_stmtúmypy.nodes.MatchStmtc                 C  r   r   r   r   r   r   r   Úvisit_match_stmt4  r   z!StatementVisitor.visit_match_stmtúmypy.nodes.TypeAliasStmtc                 C  r   r   r   r   r   r   r   Úvisit_type_alias_stmt8  r   z&StatementVisitor.visit_type_alias_stmtN©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   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Á   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›   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œ   Ç   sn    rœ   c                   @  s|   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d„ƒZed"dd„ƒZ	ed#dd„ƒZ
ed$dd„ƒZdS )%ÚPatternVisitorr   úmypy.patterns.AsPatternr   r	   c                 C  r   r   r   r   r   r   r   Úvisit_as_pattern@  r   zPatternVisitor.visit_as_patternúmypy.patterns.OrPatternc                 C  r   r   r   r   r   r   r   Úvisit_or_patternD  r   zPatternVisitor.visit_or_patternúmypy.patterns.ValuePatternc                 C  r   r   r   r   r   r   r   Úvisit_value_patternH  r   z"PatternVisitor.visit_value_patternúmypy.patterns.SingletonPatternc                 C  r   r   r   r   r   r   r   Úvisit_singleton_patternL  r   z&PatternVisitor.visit_singleton_patternúmypy.patterns.SequencePatternc                 C  r   r   r   r   r   r   r   Úvisit_sequence_patternP  r   z%PatternVisitor.visit_sequence_patternúmypy.patterns.StarredPatternc                 C  r   r   r   r   r   r   r   Úvisit_starred_patternT  r   z$PatternVisitor.visit_starred_patternúmypy.patterns.MappingPatternc                 C  r   r   r   r   r   r   r   Úvisit_mapping_patternX  r   z$PatternVisitor.visit_mapping_patternúmypy.patterns.ClassPatternc                 C  r   r   r   r   r   r   r   Úvisit_class_pattern\  r   z"PatternVisitor.visit_class_patternN©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ð   rò   rô   rö   rø   rú   rü   rþ   r   r   r   r   rî   =  s"    rî   c                   @  sò  e Zd ZdZdÿdd„Zd d	d
„Zddd„Zddd„Zddd„Zddd„Z	ddd„Z
ddd„Zddd„Zdd!d"„Zd	d$d%„Zd
d'd(„Zdd*d+„Zdd-d.„Zdd0d1„Zdd3d4„Zdd6d7„Zdd9d:„Zdd<d=„Zdd?d@„ZddBdC„ZddEdF„ZddHdI„ZddKdL„ZddNdO„ZddQdR„ZddTdU„ZddWdX„ZddZd[„Z dd]d^„Z!dd`da„Z"ddcdd„Z#ddfdg„Z$d didj„Z%d!dldm„Z&d"dodp„Z'd#drds„Z(d$dudv„Z)d%dxdy„Z*d&d{d|„Z+d'd~d„Z,d(dd‚„Z-d)d„d…„Z.d*d‡dˆ„Z/d+dŠd‹„Z0d,ddŽ„Z1d-dd‘„Z2d.d“d”„Z3d/d–d—„Z4d0d™dš„Z5d1dœd„Z6d2dŸd „Z7d3d¢d£„Z8d4d¥d¦„Z9d5d¨d©„Z:d6d«d¬„Z;d7d®d¯„Z<d8d±d²„Z=d9d´dµ„Z>d:d·d¸„Z?d;dºd»„Z@d<d½d¾„ZAd=dÀdÁ„ZBd>dÃdÄ„ZCd?dÆdÇ„ZDd@dÉdÊ„ZEdAdÌdÍ„ZFdBdÏdÐ„ZGdCdÒdÓ„ZHdDdÕdÖ„ZIdEdØdÙ„ZJdFdÛdÜ„ZKdGdÞdß„ZLdHdádâ„ZMdIdädå„ZNdJdçdè„ZOdKdêdë„ZPdLdídî„ZQdMdðdñ„ZRdNdódô„ZSdOdöd÷„ZTdPdùdú„ZUdQdüdý„ZVdþS (R  ÚNodeVisitorai  Empty base class for parse tree node visitors.

    The T type argument specifies the return type of the visit
    methods. As all methods defined here return None by default,
    subclasses do not always need to override all the methods.

    TODO: make the default return value explicit, then turn on
          empty body checking in mypy_self_check.ini.
    r   úmypy.nodes.MypyFiler   r	   c                 C  r   r   r   r   r   r   r   Úvisit_mypy_filep  ó   zNodeVisitor.visit_mypy_fileúmypy.nodes.Varc                 C  r   r   r   r   r   r   r   Ú	visit_varv  r
  zNodeVisitor.visit_varr±   c                 C  r   r   r   r   r   r   r   r²   {  r
  zNodeVisitor.visit_importr³   c                 C  r   r   r   r   r   r   r   r´   ~  r
  zNodeVisitor.visit_import_fromrµ   c                 C  r   r   r   r   r   r   r   r¶     r
  zNodeVisitor.visit_import_allr¥   c                 C  r   r   r   r   r   r   r   r¦   †  r
  zNodeVisitor.visit_func_defr§   c                 C  r   r   r   r   r   r   r   r¨   ‰  r
  z%NodeVisitor.visit_overloaded_func_defr©   c                 C  r   r   r   r   r   r   r   rª   Œ  r
  zNodeVisitor.visit_class_defr«   c                 C  r   r   r   r   r   r   r   r¬     r
  zNodeVisitor.visit_global_declr­   c                 C  r   r   r   r   r   r   r   r®   ’  r
  zNodeVisitor.visit_nonlocal_declr¯   c                 C  r   r   r   r   r   r   r   r°   •  r
  zNodeVisitor.visit_decoratorúmypy.nodes.TypeAliasc                 C  r   r   r   r   r   r   r   Úvisit_type_alias˜  r
  zNodeVisitor.visit_type_aliasúmypy.nodes.PlaceholderNodec                 C  r   r   r   r   r   r   r   Úvisit_placeholder_node›  r
  z"NodeVisitor.visit_placeholder_noder·   c                 C  r   r   r   r   r   r   r   r¸      r
  zNodeVisitor.visit_blockr¹   c                 C  r   r   r   r   r   r   r   rº   £  r
  z!NodeVisitor.visit_expression_stmtr   c                 C  r   r   r   r   r   r   r   rž   ¦  r
  z!NodeVisitor.visit_assignment_stmtr»   c                 C  r   r   r   r   r   r   r   r¼   ©  r
  z*NodeVisitor.visit_operator_assignment_stmtr½   c                 C  r   r   r   r   r   r   r   r¾   ¬  r
  zNodeVisitor.visit_while_stmtrŸ   c                 C  r   r   r   r   r   r   r   r    ¯  r
  zNodeVisitor.visit_for_stmtr¿   c                 C  r   r   r   r   r   r   r   rÀ   ²  r
  zNodeVisitor.visit_return_stmtrÁ   c                 C  r   r   r   r   r   r   r   rÂ   µ  r
  zNodeVisitor.visit_assert_stmtr£   c                 C  r   r   r   r   r   r   r   r¤   ¸  r
  zNodeVisitor.visit_del_stmtrÃ   c                 C  r   r   r   r   r   r   r   rÄ   »  r
  zNodeVisitor.visit_if_stmtrÅ   c                 C  r   r   r   r   r   r   r   rÆ   ¾  r
  zNodeVisitor.visit_break_stmtrÇ   c                 C  r   r   r   r   r   r   r   rÈ   Á  r
  zNodeVisitor.visit_continue_stmtrÉ   c                 C  r   r   r   r   r   r   r   rÊ   Ä  r
  zNodeVisitor.visit_pass_stmtrË   c                 C  r   r   r   r   r   r   r   rÌ   Ç  r
  zNodeVisitor.visit_raise_stmtrÍ   c                 C  r   r   r   r   r   r   r   rÎ   Ê  r
  zNodeVisitor.visit_try_stmtr¡   c                 C  r   r   r   r   r   r   r   r¢   Í  r
  zNodeVisitor.visit_with_stmtrÏ   c                 C  r   r   r   r   r   r   r   rÐ   Ð  r
  zNodeVisitor.visit_match_stmtrÑ   c                 C  r   r   r   r   r   r   r   rÒ   Ó  r
  z!NodeVisitor.visit_type_alias_stmtr   c                 C  r   r   r   r   r   r   r   r   Ø  r
  zNodeVisitor.visit_int_exprr   c                 C  r   r   r   r   r   r   r   r   Û  r
  zNodeVisitor.visit_str_exprr   c                 C  r   r   r   r   r   r   r   r   Þ  r
  zNodeVisitor.visit_bytes_exprr   c                 C  r   r   r   r   r   r   r   r   á  r
  zNodeVisitor.visit_float_exprr   c                 C  r   r   r   r   r   r   r   r   ä  r
  zNodeVisitor.visit_complex_exprr   c                 C  r   r   r   r   r   r   r   r    ç  r
  zNodeVisitor.visit_ellipsisr!   c                 C  r   r   r   r   r   r   r   r"   ê  r
  zNodeVisitor.visit_star_exprr#   c                 C  r   r   r   r   r   r   r   r$   í  r
  zNodeVisitor.visit_name_exprr%   c                 C  r   r   r   r   r   r   r   r&   ð  r
  zNodeVisitor.visit_member_exprr'   c                 C  r   r   r   r   r   r   r   r(   ó  r
  z!NodeVisitor.visit_yield_from_exprr)   c                 C  r   r   r   r   r   r   r   r*   ö  r
  zNodeVisitor.visit_yield_exprr+   c                 C  r   r   r   r   r   r   r   r,   ù  r
  zNodeVisitor.visit_call_exprr-   c                 C  r   r   r   r   r   r   r   r.   ü  r
  zNodeVisitor.visit_op_exprr/   c                 C  r   r   r   r   r   r   r   r0   ÿ  r
  z!NodeVisitor.visit_comparison_exprr1   c                 C  r   r   r   r   r   r   r   r2     r
  zNodeVisitor.visit_cast_exprr3   c                 C  r   r   r   r   r   r   r   r4     r
  z"NodeVisitor.visit_assert_type_exprr5   c                 C  r   r   r   r   r   r   r   r6     r
  zNodeVisitor.visit_reveal_exprr7   c                 C  r   r   r   r   r   r   r   r8     r
  zNodeVisitor.visit_super_exprr;   c                 C  r   r   r   r   r   r   r   r<     r
  z!NodeVisitor.visit_assignment_exprr9   c                 C  r   r   r   r   r   r   r   r:     r
  zNodeVisitor.visit_unary_exprr=   c                 C  r   r   r   r   r   r   r   r>     r
  zNodeVisitor.visit_list_exprr?   c                 C  r   r   r   r   r   r   r   r@     r
  zNodeVisitor.visit_dict_exprrA   c                 C  r   r   r   r   r   r   r   rB     r
  zNodeVisitor.visit_tuple_exprrC   c                 C  r   r   r   r   r   r   r   rD     r
  zNodeVisitor.visit_set_exprrE   c                 C  r   r   r   r   r   r   r   rF      r
  zNodeVisitor.visit_index_exprrG   c                 C  r   r   r   r   r   r   r   rH   #  r
  z"NodeVisitor.visit_type_applicationrI   c                 C  r   r   r   r   r   r   r   rJ   &  r
  zNodeVisitor.visit_lambda_exprrK   c                 C  r   r   r   r   r   r   r   rL   )  r
  z$NodeVisitor.visit_list_comprehensionrM   c                 C  r   r   r   r   r   r   r   rN   ,  r
  z#NodeVisitor.visit_set_comprehensionrO   c                 C  r   r   r   r   r   r   r   rP   /  r
  z*NodeVisitor.visit_dictionary_comprehensionrQ   c                 C  r   r   r   r   r   r   r   rR   2  r
  z NodeVisitor.visit_generator_exprrS   c                 C  r   r   r   r   r   r   r   rT   5  r
  zNodeVisitor.visit_slice_exprrU   c                 C  r   r   r   r   r   r   r   rV   8  r
  z"NodeVisitor.visit_conditional_exprrW   c                 C  r   r   r   r   r   r   r   rX   ;  r
  zNodeVisitor.visit_type_var_exprrY   c                 C  r   r   r   r   r   r   r   rZ   >  r
  z NodeVisitor.visit_paramspec_exprr[   c                 C  r   r   r   r   r   r   r   r\   A  r
  z%NodeVisitor.visit_type_var_tuple_exprr]   c                 C  r   r   r   r   r   r   r   r^   D  r
  z!NodeVisitor.visit_type_alias_exprr_   c                 C  r   r   r   r   r   r   r   r`   G  r
  z!NodeVisitor.visit_namedtuple_exprra   c                 C  r   r   r   r   r   r   r   rb   J  r
  z NodeVisitor.visit_enum_call_exprrc   c                 C  r   r   r   r   r   r   r   rd   M  r
  z NodeVisitor.visit_typeddict_exprre   c                 C  r   r   r   r   r   r   r   rf   P  r
  zNodeVisitor.visit_newtype_exprrg   c                 C  r   r   r   r   r   r   r   rh   S  r
  zNodeVisitor.visit__promote_exprri   c                 C  r   r   r   r   r   r   r   rj   V  r
  zNodeVisitor.visit_await_exprrk   c                 C  r   r   r   r   r   r   r   rl   Y  r
  zNodeVisitor.visit_temp_noderï   c                 C  r   r   r   r   r   r   r   rð   ^  r
  zNodeVisitor.visit_as_patternrñ   c                 C  r   r   r   r   r   r   r   rò   a  r
  zNodeVisitor.visit_or_patternró   c                 C  r   r   r   r   r   r   r   rô   d  r
  zNodeVisitor.visit_value_patternrõ   c                 C  r   r   r   r   r   r   r   rö   g  r
  z#NodeVisitor.visit_singleton_patternr÷   c                 C  r   r   r   r   r   r   r   rø   j  r
  z"NodeVisitor.visit_sequence_patternrù   c                 C  r   r   r   r   r   r   r   rú   m  r
  z!NodeVisitor.visit_starred_patternrû   c                 C  r   r   r   r   r   r   r   rü   p  r
  z!NodeVisitor.visit_mapping_patternrý   c                 C  r   r   r   r   r   r   r   rþ   s  r
  zNodeVisitor.visit_class_patternN)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è   ré   rê   rë   rÕ   rì   rí   rm   rn   ro   rp   rq   rr   rs   rt   ru   rv   rw   rx   ry   rz   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  r  )Wr™   rš   r›   Ú__doc__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    r"   r$   r&   r(   r*   r,   r.   r0   r2   r4   r6   r8   r<   r:   r>   r@   rB   rD   rF   rH   rJ   rL   rN   rP   rR   rT   rV   rX   rZ   r\   r^   r`   rb   rd   rf   rh   rj   rl   rð   rò   rô   rö   rø   rú   rü   rþ   r   r   r   r   r  a  sª    
r  )r  Ú
__future__r   Úabcr   Útypingr   r   r   Úmypy_extensionsr   r   Ú
mypy.nodesÚmypyÚmypy.patternsr	   r   rœ   rî   r  r   r   r   r   Ú<module>   s,     3t".