Sindbad~EG File Manager

Current Path : /usr/local/lib/python3.12/test/__pycache__/
Upload File :
Current File : //usr/local/lib/python3.12/test/__pycache__/test_named_expressions.cpython-312.opt-1.pyc

�

'Μg}v���ddlZdaGd�dej�ZGd�dej�ZGd�dej�Zedk(rej�yy)	�Nc��eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Zd
�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zy)�NamedExpressionInvalidTestc�x�d}|jtd�5t|ii�ddd�y#1swYyxYw)Nzx := 0�invalid syntax��assertRaisesRegex�SyntaxError�exec��self�codes  �8/usr/local/lib/python3.12/test/test_named_expressions.py� test_named_expression_invalid_01z;NamedExpressionInvalidTest.test_named_expression_invalid_01s1����
�
#�
#�K�1A�
B���r�2��C�
B�
B���0�9c�x�d}|jtd�5t|ii�ddd�y#1swYyxYw)Nz
x = y := 0rrrs  r� test_named_expression_invalid_02z;NamedExpressionInvalidTest.test_named_expression_invalid_02
s1����
�
#�
#�K�1A�
B���r�2��C�
B�
B�rc�x�d}|jtd�5t|ii�ddd�y#1swYyxYw)Nz	y := f(x)rrrs  r� test_named_expression_invalid_03z;NamedExpressionInvalidTest.test_named_expression_invalid_03s1����
�
#�
#�K�1A�
B���r�2��C�
B�
B�rc�x�d}|jtd�5t|ii�ddd�y#1swYyxYw)Nzy0 = y1 := f(x)rrrs  r� test_named_expression_invalid_04z;NamedExpressionInvalidTest.test_named_expression_invalid_04s1��$��
�
#�
#�K�1A�
B���r�2��C�
B�
B�rc�x�d}|jtd�5t|ii�ddd�y#1swYyxYw)Nz((a, b) := (1, 2))z,cannot use assignment expressions with tuplerrs  r� test_named_expression_invalid_06z;NamedExpressionInvalidTest.test_named_expression_invalid_06s1��'��
�
#�
#�K�1_�
`���r�2��a�
`�
`�rc�x�d}|jtd�5t|ii�ddd�y#1swYyxYw)Nzdef spam(a = b := 42): passrrrs  r� test_named_expression_invalid_07z;NamedExpressionInvalidTest.test_named_expression_invalid_07%s1��0��
�
#�
#�K�1A�
B���r�2��C�
B�
B�rc�x�d}|jtd�5t|ii�ddd�y#1swYyxYw)Nzdef spam(a: b := 42 = 5): passrrrs  r� test_named_expression_invalid_08z;NamedExpressionInvalidTest.test_named_expression_invalid_08+s1��3��
�
#�
#�K�1A�
B���r�2��C�
B�
B�rc�x�d}|jtd�5t|ii�ddd�y#1swYyxYw)Nzspam(a=b := 'c')rrrs  r� test_named_expression_invalid_09z;NamedExpressionInvalidTest.test_named_expression_invalid_091s1��%��
�
#�
#�K�1A�
B���r�2��C�
B�
B�rc�x�d}|jtd�5t|ii�ddd�y#1swYyxYw)Nzspam(x = y := f(x))rrrs  r� test_named_expression_invalid_10z;NamedExpressionInvalidTest.test_named_expression_invalid_107s1��(��
�
#�
#�K�1A�
B���r�2��C�
B�
B�rc�x�d}|jtd�5t|ii�ddd�y#1swYyxYw)Nzspam(a=1, b := 2)�,positional argument follows keyword argumentrrs  r� test_named_expression_invalid_11z;NamedExpressionInvalidTest.test_named_expression_invalid_11=s6��&��
�
#�
#�K�:�<���r�2��<�<�<�rc�x�d}|jtd�5t|ii�ddd�y#1swYyxYw�Nzspam(a=1, (b := 2))r"rrs  r� test_named_expression_invalid_12z;NamedExpressionInvalidTest.test_named_expression_invalid_12D�6��(��
�
#�
#�K�:�<���r�2��<�<�<�rc�x�d}|jtd�5t|ii�ddd�y#1swYyxYwr%rrs  r� test_named_expression_invalid_13z;NamedExpressionInvalidTest.test_named_expression_invalid_13Kr'rc�x�d}|jtd�5t|ii�ddd�y#1swYyxYw)Nz(x := lambda: y := 1)rrrs  r� test_named_expression_invalid_14z;NamedExpressionInvalidTest.test_named_expression_invalid_14Rs1��*��
�
#�
#�K�1A�
B���r�2��C�
B�
B�rc�x�d}|jtd�5t|ii�ddd�y#1swYyxYw)Nz(lambda: x := 1)z-cannot use assignment expressions with lambdarrs  r� test_named_expression_invalid_15z;NamedExpressionInvalidTest.test_named_expression_invalid_15Xs6��%��
�
#�
#�K�;�=���r�2��=�=�=�rc�x�d}|jtd�5t|ii�ddd�y#1swYyxYw)Nz + 1 for i in i := [1,2]]rrrs  r� test_named_expression_invalid_16z;NamedExpressionInvalidTest.test_named_expression_invalid_16_s1��,��
�
#�
#�K�1A�
B���r�2��C�
B�
B�rc�x�d}|jtd�5t|ii�ddd�y#1swYyxYw)Nz-[i := 0, j := 1 for i, j in [(1, 2), (3, 4)]]z;did you forget parentheses around the comprehension target?rrs  r� test_named_expression_invalid_17z;NamedExpressionInvalidTest.test_named_expression_invalid_17es:��>��
�
#�
#�K�M�O���r�2��O�O�O�rc�x�d}|jtd�5t|ii�ddd�y#1swYyxYw)NzNclass Foo():
            [(42, 1 + ((( j := i )))) for i in range(5)]
        zKassignment expression within a comprehension cannot be used in a class bodyrrs  r�+test_named_expression_invalid_in_class_bodyzFNamedExpressionInvalidTest.test_named_expression_invalid_in_class_bodyls>�����
#�
#�K�Y�[���r�2��[�[�[�rc	��gd�}|D]�\}}dD]�\}}|j||�}|j|||��5|jt�5t	|i�ddd�|jt�5t	|ii�ddd�t	d|��i�ddd�����y#1swY�PxYw#1swY�1xYw#1swY��xYw)N))zComplex expression: cz2{0}(c := 1) for a, (*b, c[d+e::f(g)], h.i) in j{1})zComplex expression: dz2{0}(d := 1) for a, (*b, c[d+e::f(g)], h.i) in j{1})zComplex expression: ez2{0}(e := 1) for a, (*b, c[d+e::f(g)], h.i) in j{1})zComplex expression: fz2{0}(f := 1) for a, (*b, c[d+e::f(g)], h.i) in j{1})zComplex expression: gz2{0}(g := 1) for a, (*b, c[d+e::f(g)], h.i) in j{1})zComplex expression: hz2{0}(h := 1) for a, (*b, c[d+e::f(g)], h.i) in j{1})zComplex expression: iz2{0}(i := 1) for a, (*b, c[d+e::f(g)], h.i) in j{1})zComplex expression: jz2{0}(j := 1) for a, (*b, c[d+e::f(g)], h.i) in j{1}�)�(�))�[�])�{�}��case�lpar�rpar�lambda: )�format�subTest�assertRaises�	NameErrorr
)r�cases�	test_caser
r>r?s      r�8test_named_expression_valid_rebinding_iteration_variablezSNamedExpressionInvalidTest.test_named_expression_valid_rebinding_iteration_variableus���
��& %�O�I�t�B�
��d��{�{�4��.���\�\�y�t�$�\�G�
�*�*�9�5��T�2��6��*�*�9�5��T�2�r�*�6��8�D�6�*�B�/�H�G�C� %�6�5��5�5��H�G�s;�C�
B-	�C�;B9	�	C�-B6
�2C�9C
�>C�Cc	�
�ddg}|D]�\}}}d|�d�}dD]�\}}|j||�}|j|||��5|jt|�5t	|i�ddd�|jt|�5t	|ii�ddd�|jt|�5t	d|��i�ddd�ddd�����y#1swY�pxYw#1swY�PxYw#1swY�.xYw#1swY��xYw)N)�Complex expression: a�az2{0}(a := 1) for a, (*b, c[d+e::f(g)], h.i) in j{1})�Complex expression: b�bz2{0}(b := 1) for a, (*b, c[d+e::f(g)], h.i) in j{1}�Fassignment expression cannot rebind comprehension iteration variable '�'r5r<r@)rArBrr	r
)rrErF�targetr
�msgr>r?s        r�:test_named_expression_invalid_rebinding_iteration_variablezUNamedExpressionInvalidTest.test_named_expression_invalid_rebinding_iteration_variable�s���

F�
F�	
��(-�#�I�v�t�Z�[a�Zb�bc�d�C�B�
��d��{�{�4��.���\�\�y�t�$�\�G�
�/�/��S�A��T�2��B��/�/��S�A��T�2�r�*�B��/�/��S�A��x��v�.��3�B�H�G�C�(-�B�A��A�A��A�A��H�G�sT�C9�
C	�&C9�C!	�C9�0C-	�C9�C
�C9�!C*
�&C9�-C6
�2C9�9Dc���gd�}|D]�\}}}d|�d�}|j|��5|jt|�5t|i�ddd�|jt|�5t|ii�ddd�|jt|�5td|��i�ddd�ddd���y#1swY�nxYw#1swY�NxYw#1swY�,xYw#1swY��xYw)N))�Local reuse�iz[i := 0 for i in range(5)])�Nested reuse�jz0[[(j := 0) for i in range(5)] for j in range(5)])�Reuse inner loop targetrVz.[(j := 0) for i in range(5) for j in range(5)])�Unpacking reuserTz[i := 0 for i, j in [(0, 1)]])�Reuse in loop conditionrTz#[i+1 for i in range(5) if (i := 0)])�Unreachable reuserTz#[False or (i:=0) for i in range(5)])�Unreachable nested reuserTz?[(i, j) for i in range(5) for j in range(5) if True or (i:=10)]rMrN�r=r@�rBrr	r
�rrEr=rOr
rPs      r�Mtest_named_expression_invalid_rebinding_list_comprehension_iteration_variablezhNamedExpressionInvalidTest.test_named_expression_invalid_rebinding_list_comprehension_iteration_variable�s���	
��#(��D�&�$�Z�[a�Zb�bc�d�C����4��(��+�+�K��=���r�N�>��+�+�K��=���r�2�&�>��+�+�K��=��8�D�6�*�B�/�>�)�(�#(�>�=��=�=��=�=��)�(��R�C�
B7�
C�(C�6C�C�$C�7C�<C�C�C�C�C�C$	c���ddg}|D]�\}}}d|�d�}|j|��5|jt|�5t|i�ddd�|jt|�5t|ii�ddd�|jt|�5td|��i�ddd�ddd���y#1swY�nxYw#1swY�NxYw#1swY�,xYw#1swY��xYw)N)�Inner reuserVz3[i for i in range(5) if (j := 0) for j in range(5)])�Inner unpacking reuserVz6[i for i in range(5) if (j := 0) for j, k in [(0, 1)]]�Ecomprehension inner loop cannot rebind assignment expression target 'rNr\r@r]r^s      r�Etest_named_expression_invalid_rebinding_list_comprehension_inner_loopz`NamedExpressionInvalidTest.test_named_expression_invalid_rebinding_list_comprehension_inner_loop�����W�d�
��#(��D�&�$�Y�Z`�Ya�ab�c�C����4��(��+�+�K��=���r�N�>��+�+�K��=���r�2�&�>��+�+�K��=��8�D�6�*�B�/�>�)�(�#(�>�=��=�=��=�=��)�(�r`c���gd�}d}|D]�\}}|j|��5|jt|�5t|i�ddd�|jt|�5t|ii�ddd�|jt|�5td|��i�ddd�ddd���y#1swY�nxYw#1swY�NxYw#1swY�,xYw#1swY��xYw)N)	)�	Top levelz[i for i in (i := range(5))])�Inside tuplez"[i for i in (2, 3, i := range(5))])�Inside listz"[i for i in [2, 3, i := range(5)]])�Different namez[i for i in (j := range(5))])�Lambda expressionz'[i for i in (lambda:(j := range(5)))()])�
Inner loopz.[i for i in range(5) for j in (i := range(5))])�Nested comprehensionz)[i for i in [j for j in (k := range(5))]])�Nested comprehension conditionz1[i for i in [j for j in range(5) if (j := True)]])�Nested comprehension bodyz,[i for i in [(j := True) for j in range(5)]]�Kassignment expression cannot be used in a comprehension iterable expressionr\r@r]�rrErPr=r
s     r�Dtest_named_expression_invalid_list_comprehension_iterable_expressionz_NamedExpressionInvalidTest.test_named_expression_invalid_list_comprehension_iterable_expression����

��\���J�D�$����4��(��+�+�K��=���r�N�>��+�+�K��=���r�2�&�>��+�+�K��=��8�D�6�*�B�/�>�)�(� �=�=��=�=��=�=��)�(��R�C�
B2�C�#B>�1C�C
�C�2B;�7C�>C�C�
C�C�C	c���gd�}|D]�\}}}d|�d�}|j|��5|jt|�5t|i�ddd�|jt|�5t|ii�ddd�|jt|�5td|��i�ddd�ddd���y#1swY�nxYw#1swY�NxYw#1swY�,xYw#1swY��xYw)N)	)rSrTz{i := 0 for i in range(5)})rUrVz0{{(j := 0) for i in range(5)} for j in range(5)})rWrVz.{(j := 0) for i in range(5) for j in range(5)})rXrTz{i := 0 for i, j in {(0, 1)}})rYrTz#{i+1 for i in range(5) if (i := 0)})rZrTz#{False or (i:=0) for i in range(5)})r[rTz?{(i, j) for i in range(5) for j in range(5) if True or (i:=10)})rIrJz.{(a := 1) for a, (*b, c[d+e::f(g)], h.i) in j})rKrLz.{(b := 1) for a, (*b, c[d+e::f(g)], h.i) in j}rMrNr\r@r]r^s      r�Ltest_named_expression_invalid_rebinding_set_comprehension_iteration_variablezgNamedExpressionInvalidTest.test_named_expression_invalid_rebinding_set_comprehension_iteration_variable�s���
��#(��D�&�$�Z�[a�Zb�bc�d�C����4��(��+�+�K��=���r�N�>��+�+�K��=���r�2�&�>��+�+�K��=��8�D�6�*�B�/�>�)�(�#(�>�=��=�=��=�=��)�(�r`c���ddg}|D]�\}}}d|�d�}|j|��5|jt|�5t|i�ddd�|jt|�5t|ii�ddd�|jt|�5td|��i�ddd�ddd���y#1swY�nxYw#1swY�NxYw#1swY�,xYw#1swY��xYw)N)rbrVz3{i for i in range(5) if (j := 0) for j in range(5)})rcrVz6{i for i in range(5) if (j := 0) for j, k in {(0, 1)}}rdrNr\r@r]r^s      r�Dtest_named_expression_invalid_rebinding_set_comprehension_inner_loopz_NamedExpressionInvalidTest.test_named_expression_invalid_rebinding_set_comprehension_inner_looprfr`c���gd�}d}|D]�\}}|j|��5|jt|�5t|i�ddd�|jt|�5t|ii�ddd�|jt|�5td|��i�ddd�ddd���y#1swY�nxYw#1swY�NxYw#1swY�,xYw#1swY��xYw)N)	)rhz{i for i in (i := range(5))})riz"{i for i in (2, 3, i := range(5))})rjz"{i for i in {2, 3, i := range(5)}})rkz{i for i in (j := range(5))})rlz'{i for i in (lambda:(j := range(5)))()})rmz.{i for i in range(5) for j in (i := range(5))})rnz){i for i in {j for j in (k := range(5))}})roz1{i for i in {j for j in range(5) if (j := True)}})rpz,{i for i in {(j := True) for j in range(5)}}rqr\r@r]rrs     r�Ctest_named_expression_invalid_set_comprehension_iterable_expressionz^NamedExpressionInvalidTest.test_named_expression_invalid_set_comprehension_iterable_expressionrtruc���gd�}|D]�\}}}d|�d�}|j|��5|jt|�5t|i�ddd�|jt|�5t|ii�ddd�|jt|�5td|��i�ddd�ddd���y#1swY�nxYw#1swY�NxYw#1swY�,xYw#1swY��xYw)N))z	Key reuserTz{(i := 0): 1 for i in range(5)})zValue reuserTz{1: (i := 0) for i in range(5)})z
Both reuserTz&{(i := 0): (i := 0) for i in range(5)})rUrVz3{{(j := 0): 1 for i in range(5)} for j in range(5)})rWrVz1{(j := 0): 1 for i in range(5) for j in range(5)})zUnpacking key reuserTz"{(i := 0): 1 for i, j in {(0, 1)}})zUnpacking value reuserTz"{1: (i := 0) for i, j in {(0, 1)}})rYrTz&{i+1: 1 for i in range(5) if (i := 0)})rZrTz({(False or (i:=0)): 1 for i in range(5)})r[rTz={i: j for i in range(5) for j in range(5) if True or (i:=10)})rIrJz1{(a := 1): 1 for a, (*b, c[d+e::f(g)], h.i) in j})rKrLz1{(b := 1): 1 for a, (*b, c[d+e::f(g)], h.i) in j}rMrNr\r@r]r^s      r�Mtest_named_expression_invalid_rebinding_dict_comprehension_iteration_variablezhNamedExpressionInvalidTest.test_named_expression_invalid_rebinding_dict_comprehension_iteration_variable-s���
��$#(��D�&�$�Z�[a�Zb�bc�d�C����4��(��+�+�K��=���r�N�>��+�+�K��=���r�2�&�>��+�+�K��=��8�D�6�*�B�/�>�)�(�#(�>�=��=�=��=�=��)�(�r`c���ddg}|D]�\}}}d|�d�}|j|��5|jt|�5t|i�ddd�|jt|�5t|ii�ddd�|jt|�5td|��i�ddd�ddd���y#1swY�nxYw#1swY�NxYw#1swY�,xYw#1swY��xYw)N)rbrVz6{i: 1 for i in range(5) if (j := 0) for j in range(5)})rcrVz9{i: 1 for i in range(5) if (j := 0) for j, k in {(0, 1)}}rdrNr\r@r]r^s      r�Etest_named_expression_invalid_rebinding_dict_comprehension_inner_loopz`NamedExpressionInvalidTest.test_named_expression_invalid_rebinding_dict_comprehension_inner_loopJs���Z�g�
��#(��D�&�$�Y�Z`�Ya�ab�c�C����4��(��+�+�K��=���r�N�>��+�+�K��=���r�2�&�>��+�+�K��=��8�D�6�*�B�/�>�)�(�#(�>�=��=�=��=�=��)�(�r`c���gd�}d}|D]�\}}|j|��5|jt|�5t|i�ddd�|jt|�5t|ii�ddd�|jt|�5td|��i�ddd�ddd���y#1swY�nxYw#1swY�NxYw#1swY�,xYw#1swY��xYw)N)	)rhz{i: 1 for i in (i := range(5))})riz%{i: 1 for i in (2, 3, i := range(5))})rjz%{i: 1 for i in [2, 3, i := range(5)]})rkz{i: 1 for i in (j := range(5))})rlz*{i: 1 for i in (lambda:(j := range(5)))()})rmz1{i: 1 for i in range(5) for j in (i := range(5))})rnz/{i: 1 for i in {j: 2 for j in (k := range(5))}})roz7{i: 1 for i in {j: 2 for j in range(5) if (j := True)}})rpz/{i: 1 for i in {(j := True) for j in range(5)}}rqr\r@r]rrs     r�Dtest_named_expression_invalid_dict_comprehension_iterable_expressionz_NamedExpressionInvalidTest.test_named_expression_invalid_dict_comprehension_iterable_expressionYrtruc�x�d}|jtd�5t|ii�ddd�y#1swYyxYw)Nzqclass Foo:
            def bar(self):
                [[(__x:=2) for _ in range(2)] for __x in range(2)]
        zJassignment expression cannot rebind comprehension iteration variable '__x'rrs  r�5test_named_expression_invalid_mangled_class_variableszPNamedExpressionInvalidTest.test_named_expression_invalid_mangled_class_variablesos>����
�
#�
#�K�X�Z���r�2��Z�Z�Z�rN) �__name__�
__module__�__qualname__rrrrrrrrr r#r&r)r+r-r/r1r3rGrQr_rersrwryr{r}rr�r���rrrs��������������������#0�J4�40�*
0�0�,0�4
0�0�,0�:
0�0�,r�rc�x�eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Zd
�Zd�Zd�Zd�Zd�Zd�Zy)�NamedExpressionAssignmentTestc�0�dx}|j|d�y)N�
��assertEqual�rrJs  r�#test_named_expression_assignment_01zANamedExpressionAssignmentTest.test_named_expression_assignment_01|s���������B�r�c�4�d}|x}|j|d�y�N�r�r�s  r�#test_named_expression_assignment_02zANamedExpressionAssignmentTest.test_named_expression_assignment_02�s�����������B�r�c�0�dx}|j|d�y)N�r�)r�totals  r�#test_named_expression_assignment_03zANamedExpressionAssignmentTest.test_named_expression_assignment_03�s����������"r�c�0�dx}|j|d�y)N���r�r�)r�infos  r�#test_named_expression_assignment_04zANamedExpressionAssignmentTest.test_named_expression_assignment_04�s���	������y�)r�c�4�dx}df|j|d�y�Nr�r�r�)r�xs  r�#test_named_expression_assignment_05zANamedExpressionAssignmentTest.test_named_expression_assignment_05�s�����������A�r�c��dx}x}x}|j|d�|j|d�|j|d�y)Nrr�)rr��y�zs    r�#test_named_expression_assignment_06zANamedExpressionAssignmentTest.test_named_expression_assignment_06�sB���V�Q�}�q�	������A������A������A�r�c�0�dx}|j|d�y)N�r�r�r�)r�locs  r�#test_named_expression_assignment_07zANamedExpressionAssignmentTest.test_named_expression_assignment_07�s���������f�%r�c�T�dx}r|j|d�y|jd�y)N�eggs�0variable was not assigned using named expression�r��fail�r�spams  r�#test_named_expression_assignment_08zANamedExpressionAssignmentTest.test_named_expression_assignment_08�s(���>�4�>����T�6�*��i�i�J�Kr�c�R�dx}r|j|�y|jd�y)NTr�)�
assertTruer�r�s  r�#test_named_expression_assignment_09zANamedExpressionAssignmentTest.test_named_expression_assignment_09�s$��!�\�T�\��O�O�D�!��i�i�J�Kr�c�Z�dx}dk(r|j|d�y|jd�y)Nr�r�r�)r�matchs  r�#test_named_expression_assignment_10zANamedExpressionAssignmentTest.test_named_expression_assignment_10�s+���K�E�B�����U�B�'��i�i�J�Kr�c��d�}gd�}|D�cgc]}||�x}dkDs�||||zf��}}|j|gd��ycc}w)Nc��|S�Nr��rJs rr�zONamedExpressionAssignmentTest.test_named_expression_assignment_11.<locals>.spam�����Hr�r�r�)r�r���?)r�r�r�)r�r�r�r��rr��
input_datar�r��ress      r�#test_named_expression_assignment_11zANamedExpressionAssignmentTest.test_named_expression_assignment_11�sP��	��
�$.�E�J�q��Q��<�1�1�2D��1�a��c�{�J��E�����E�F��Fs
�A�
Ac��d�}tdd�D�cgc]}||�x}||zg��}}|j|ddgddgddgddgg�ycc}w)Nc��|Sr�r�r�s rr�zONamedExpressionAssignmentTest.test_named_expression_assignment_12.<locals>.spam�r�r�r��r�r�r����ranger��rr�r�r�r�s     r�#test_named_expression_assignment_12zANamedExpressionAssignmentTest.test_named_expression_assignment_12�s`��	�,1�!�Q�K�8�K�q�T�!�W���a��c�"�K��8������3�x�!�S��A�s�8�a��X�F�G��9s�A	c�n�tddgx}�}|j|d�|j|ddg�yr���lenr�)r�lines�lengths   r�#test_named_expression_assignment_13zANamedExpressionAssignmentTest.test_named_expression_assignment_13�s8���q�!�f�_�U�%�������#������1��&r�c��d}d}d}||||dz
zzx}kDr|dz
|z|z|z}||||dz
zzx}kDr�|j|d�y)z�
        Where all variables are positive integers, and a is at least as large
        as the n'th root of x, this algorithm returns the floor of the n'th
        root of x (and roughly doubling the number of accurate bits per
        iteration):
        �	r�r�r�Nr�)rrJ�nr��ds     r�#test_named_expression_assignment_14zANamedExpressionAssignmentTest.test_named_expression_assignment_14�so��
��
��
����Q��1��X�
�%�1�&��A�#�q��1���"�A���Q��1��X�
�%�1�&�	
����A�r�c�\�dx}r|jd�dx}r�|j|d�y)NFzWhile body executed)r�r�r�s  r�#test_named_expression_assignment_15zANamedExpressionAssignmentTest.test_named_expression_assignment_15�s5���j�a�j��I�I�+�,��j�a�j�	
����E�"r�c
��d\}}td�D�cic]}|x}|x}||zx}z|z
��}}|j|ddddddd	��ycc}w)
Nr��r�r�r���
�)r�r�r�r�r�r�r�)rrJrL�__�c�fibs      r�#test_named_expression_assignment_16zANamedExpressionAssignmentTest.test_named_expression_assignment_16�se�����1�?D�Q�x�H�x��Q���q�&�!�!�a�%�Z�Q�0�1�4�4�x��H�����!��a�A�"�"�E�F��Is�Ac�f�dg}|dx}}|j|d�|j||d�y)Nr�rr�)rrJrL�elements    r�#test_named_expression_assignment_17zANamedExpressionAssignmentTest.test_named_expression_assignment_17�s:��
�C���q�D�A�'������A������!�A�$�'r�c���Gd�d�}|dgdgg�}|dx}dx}f}|j|d�|j|d�|j||j||�y)Nc��eZdZd�Zd�Zy)�]NamedExpressionAssignmentTest.test_named_expression_assignment_18.<locals>.TwoDimensionalListc��||_yr���two_dimensional_list)rr�s  r�__init__zfNamedExpressionAssignmentTest.test_named_expression_assignment_18.<locals>.TwoDimensionalList.__init__�s
��,@��)r�c�2�|j|d|dS)Nrr�r�)r�indexs  r�__getitem__ziNamedExpressionAssignmentTest.test_named_expression_assignment_18.<locals>.TwoDimensionalList.__getitem__�s ���0�0��q��:�5��8�D�Dr�N)r�r�r�r�r�r�r�r�TwoDimensionalListr��s��
A�
Er�r�r�r�r)r�r�)rr�rJrLr�r�s      r�#test_named_expression_assignment_18zANamedExpressionAssignmentTest.test_named_expression_assignment_18�sw��	E�	E�
���a�S�z�*���q�D�A�Q�$�!�J�-������A������A������!�"8�"8��";�A�">�?r�N)r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�rr�r�zsc�� �
 �#�
*�
�
�&�
L�
L�
L�
G�H�'�� #�G�
(�@r�r�c��eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Zd
�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zy)�NamedExpressionScopeTestc�x�d}|jtd�5t|ii�ddd�y#1swYyxYw)Nz!def spam():
    (a := 5)
print(a)zname 'a' is not defined)rrDr
rs  r�test_named_expression_scope_01z7NamedExpressionScopeTest.test_named_expression_scope_01�s5�����
#�
#�I�/H�
I���r�2��J�
I�
I�rc��d}td�D�cgc]	}||zx}��}}|j|gd��|j|d�ycc}w�Nrr�)rr�r�r�r�r�r�)rr��v�partial_sumss    r�test_named_expression_scope_02z7NamedExpressionScopeTest.test_named_expression_scope_02sQ����49�!�H�=�H�q����*��*�H��=�����'7�8������#��>��Ac�t��t�fd�dD��}|j|�|j�d�y)Nc3�,�K�|]}|x�dk(���
y�w)r�Nr�)�.0�num�lastNums  �r�	<genexpr>zJNamedExpressionScopeTest.test_named_expression_scope_03.<locals>.<genexpr>	s�����E�9�C�c�>�7�a�/�9���r�r�)�anyr�r�)r�containsOner�s  @r�test_named_expression_scope_03z7NamedExpressionScopeTest.test_named_expression_scope_03s/����E�9�E�E������$�����!�$r�c��d�}tdd�D�cgc]}||�x}||zg��}}|jd�ycc}w)Nc��|Sr�r�r�s rr�zENamedExpressionScopeTest.test_named_expression_scope_04.<locals>.spamr�r�r�r�r�r�r�s     r�test_named_expression_scope_04z7NamedExpressionScopeTest.test_named_expression_scope_04sG��	�,1�!�Q�K�8�K�q�T�!�W���a��c�"�K��8�����A���9s�=c��d�}gd�}|D�cgc]}||�x}dkDs�||||zf��}}|j|gd��|jd�ycc}w)Nc��|Sr�r�r�s rr�zENamedExpressionScopeTest.test_named_expression_scope_05.<locals>.spamr�r�r�rr�r�r�r�s      r�test_named_expression_scope_05z7NamedExpressionScopeTest.test_named_expression_scope_05s`��	��
�$.�E�J�q��Q��<�1�1�2D��1�a��c�{�J��E�����E�F�����A���Fs
�A�
Ac	���td�D��cgc]}td�D�cgc]}|x}��c}��}}}|j|gd�gd�g�|jd�ycc}wcc}}w)Nr�r��rr�r�r�)rrVrTr�r�s     r�test_named_expression_scope_06z7NamedExpressionScopeTest.test_named_expression_scope_06s`��6;�A�h�?�h��5��8�,�8�a��	��	�8�,�h��?�����y�)�4�5�����q�!��-��?s�A$�A�A$�A$c�J�tddgx}�|j|ddg�yr�r�)rr�s  r�test_named_expression_scope_07z7NamedExpressionScopeTest.test_named_expression_scope_07$s&���a��V�O�E�������A��'r�c	���d�}d�}td�D�cgc]}|||x}�x}���}}|j|ddg�|jd�|jd�ycc}w)Nc��|Sr�r�r�s rr�zENamedExpressionScopeTest.test_named_expression_scope_08.<locals>.spam*r�r�c��|dzS�Nr�r��rLs rr�zENamedExpressionScopeTest.test_named_expression_scope_08.<locals>.eggs-����q�5�Lr�r�rr�r�)rr�r��hrLrJr�s       r�test_named_expression_scope_08z7NamedExpressionScopeTest.test_named_expression_scope_08)sq��	�	�16�a��9��1�t��1�f�a��%�A�&���9�����q�!�f�%�����A������A���	:s�A(c	��d�}d�}td�D�cgc]}|||x}�x}���}}|j|ddg�|jd�ycc}w)Nc��|Sr�r�r�s rr�zENamedExpressionScopeTest.test_named_expression_scope_09.<locals>.spam7r�r�c��|dzSrr�rs rr�zENamedExpressionScopeTest.test_named_expression_scope_09.<locals>.eggs:rr�r�rr�)rr�r�rrJr�s      r�test_named_expression_scope_09z7NamedExpressionScopeTest.test_named_expression_scope_096sa��	�	�16�a��9��1�t��1�f�a��%�A�&���9�����q�!�f�%�����A���:s�Ac	��td�D��cgc]}td�D�cgc]}dx}��c}x}��!}}}|j|ddgddgg�|jd�|jddg�ycc}wcc}}w)Nr�r�r�)rrVrTrJrLr�s      r�test_named_expression_scope_10z7NamedExpressionScopeTest.test_named_expression_scope_10Bs���8=�a��A��1�U�1�X�.�X��!�V�Q�V�X�.�.�q�.���A������1�v��1�v�.�/�����A������Q��F�#��	/��As�A:�A5�A:�5A:c��td�D�cgc]}|x}��}}|j|gd��|jd�ycc}w)Nr�)rr�r�r�r�r�r�)rrTrVr�s    r�test_named_expression_scope_11z7NamedExpressionScopeTest.test_named_expression_scope_11IsE��$�Q�x�(�x�!�A�v�q�v�x��(�����o�.�����A���)s�Ac��d}td�D�cgc]	}||zx}��}}|j|gd��|j|d�ycc}wr�r�)rrLrTr�s    r�test_named_expression_scope_17z7NamedExpressionScopeTest.test_named_expression_scope_17OsO��
��#(��8�,�8�a�A��E�z�q�z�8��,�����.�/�����B���-r�c�f�d�}|dx}�}|j|d�|j|d�y)Nc��|Sr�r�r�s rr�zENamedExpressionScopeTest.test_named_expression_scope_18.<locals>.spamWr�r�r�r��rr�rLr�s    r�test_named_expression_scope_18z7NamedExpressionScopeTest.test_named_expression_scope_18Vs6��	���6�1�l������a� �����A�r�c�f�d�}|dx}�}|j|d�|j|d�y)Nc��|Sr�r�r�s rr�zENamedExpressionScopeTest.test_named_expression_scope_19.<locals>.spam`r�r�r�r�r$s    r�test_named_expression_scope_19z7NamedExpressionScopeTest.test_named_expression_scope_19_s6��	���F�A�n������a� �����A�r�c�h�d�}|dx}��}|j|d�|j|d�y)Nc��|Sr�r�r�s rr�zENamedExpressionScopeTest.test_named_expression_scope_20.<locals>.spamir�r�r�r�r�r$s    r�test_named_expression_scope_20z7NamedExpressionScopeTest.test_named_expression_scope_20hs7��	��1�f�a�������a� �����A�r�c�j�d�}|dx}d��}|j|d�|j|d�y)Nc��||zSr�r��rJrLs  rr�zENamedExpressionScopeTest.test_named_expression_scope_21.<locals>.spamrrr�r�r�rr�r��rr�r�r�s    r�test_named_expression_scope_21z7NamedExpressionScopeTest.test_named_expression_scope_21qs9��	���6�1�Q�������a� �����A�r�c�j�d�}|dx}d��}|j|d�|j|d�y)Nc��||zSr�r�r.s  rr�zENamedExpressionScopeTest.test_named_expression_scope_22.<locals>.spam{rr�r�r�rr�r�r/s    r�test_named_expression_scope_22z7NamedExpressionScopeTest.test_named_expression_scope_22zs9��	���F�A�q�!������a� �����A�r�c�j�d�}|dx}d��}|j|d�|j|d�y)Nc��||zSr�r�r.s  rr�zENamedExpressionScopeTest.test_named_expression_scope_23.<locals>.spam�rr�r�r�)rLrJr�r�r/s    r�test_named_expression_scope_23z7NamedExpressionScopeTest.test_named_expression_scope_23�s9��	��1�f�a��#������a� �����A�r�c�F��d��fd�}|�|j�d�y)Nr�c���dx�yr�r�r�s�rr�zENamedExpressionScopeTest.test_named_expression_scope_24.<locals>.spam�s
����W�Qr�r�r�)rr�rJs  @r�test_named_expression_scope_24z7NamedExpressionScopeTest.test_named_expression_scope_24�s$�����	�	
������B�r�c�P�i}d}t||i�|j|dd�y)Nz4a = 10
def spam():
    global a
    (a := 20)
spam()rJr�)r
r�)r�nsr
s   r�test_named_expression_scope_25z7NamedExpressionScopeTest.test_named_expression_scope_25�s0��
��
��	
�T�2�r������C��"�%r�c�V�d}d}d}d}dd|��fdd|�d	�fd
d|��fdd|�d	�fdd|��fd
d|�d	�fdd|��fdd|�d	�fg}|D]Z\}}|j|��5i}t||�|j|dd�|j|dgd��ddd��\y#1swY�gxYw)Nz/[x := i for i in range(3) if (x := i) or not x]z([x := i for i in range(3) if x or not x]z*[x for i in range(3) if (x := i) or not x]zF[j for i in range(3) if x or not x for j in range(3) if (x := i)][:-3]z
Rebind globalzx = 1; result = zRebind nonlocalzresult, x = (lambda x=1: (z, x))()z
Filter globalzFilter nonlocalzBody globalz
Body nonlocalz
Nested globalzNested nonlocalr\r�r��resultr)rBr
r�)	r�	rebinding�
filter_ref�body_ref�
nested_refrEr=r
r;s	         r�6test_named_expression_variable_reuse_in_comprehensionszONamedExpressionScopeTest.test_named_expression_variable_reuse_in_comprehensions�s��F�	�?�
�?��]�
�
� 0���<�=�
�"<�Y�K�w� O�P�
� 0���=�>�
�"<�Z�L�� P�Q�
�.�x�j�9�:�
� :�8�*�G�L�M�
� 0���=�>�
�"<�Z�L�� P�Q�	
�� �J�D�$����4��(����T�2��� � ��C��!�,�� � ��H��y�9�	)�(� �(�(�s�;B�B(	c�v���t����fd�}	|��jt��day#dawxYw)Nc�x��td�D��cgc]}�xa��c}}�jt��ycc}}w�Nr�)r��
GLOBAL_VARr�)�_rGr�sentinels  ��r�fzFNamedExpressionScopeTest.test_named_expression_global_scope.<locals>.f�s6���-2�1�X�6�X��8�
#�Z�
#�X�6����Z��2��
7s�6��objectr�rG�rrJrIs` @r�"test_named_expression_global_scopez;NamedExpressionScopeTest.test_named_expression_global_scope�s4����8��	3�	�
�C����Z��2��J���J�s�4�8c�b���t����fd�}|��jtd�y)Nc�n��d}td�D�cgc]}�x}��c}�j|��ycc}wrFr�)rGrHrrIs  ��rrJzXNamedExpressionScopeTest.test_named_expression_global_scope_no_global_keyword.<locals>.f�s;����J�-2�1�X�6�X��8�
#�Z�
#�X�6����Z��2��
7s�2rKrMs` @r�4test_named_expression_global_scope_no_global_keywordzMNamedExpressionScopeTest.test_named_expression_global_scope_no_global_keyword�s&����8��	3�	
������T�*r�c�6���t����fd�}|�y)Nc�J���d���fd�}|��j���y)Nc�F��td�D�cgc]}�x���c}ycc}wrF�r��rH�nonlocal_varrIs ��r�gzSNamedExpressionScopeTest.test_named_expression_nonlocal_scope.<locals>.f.<locals>.g�s$���38��8�<�8�a��)��)�8�<��<��r�)rXrWrrIs @��rrJzHNamedExpressionScopeTest.test_named_expression_nonlocal_scope.<locals>.f�s$����L�
=�
�C����\�8�4r��rLrMs` @r�$test_named_expression_nonlocal_scopez=NamedExpressionScopeTest.test_named_expression_nonlocal_scope�s����8��	5�	
�r�c�6���t����fd�}|�y)Nc�F��d}�fd�}|��j|d�y)Nc�F��td�D�cgc]}�x}��c}ycc}wrFrUrVs  �rrXzgNamedExpressionScopeTest.test_named_expression_nonlocal_scope_no_nonlocal_keyword.<locals>.f.<locals>.g�s$���38��8�<�8�a��)��)�8�<��<rYr�)rWrXrrIs  ��rrJz\NamedExpressionScopeTest.test_named_expression_nonlocal_scope_no_nonlocal_keyword.<locals>.f�s"����L�
=�
�C����\�4�0r�rZrMs` @r�8test_named_expression_nonlocal_scope_no_nonlocal_keywordzQNamedExpressionScopeTest.test_named_expression_nonlocal_scope_no_nonlocal_keyword�s����8��	1�	
�r�c����d�gd�}��fd�|D�}|jdt��t|�D]\}}|j|||�z��y)Nr�)r�r�r�r�c3�,�K�|]}|�zx����
y�wr�r�)r�rTrJr�s  ��rrzQNamedExpressionScopeTest.test_named_expression_scope_in_genexp.<locals>.<genexpr>�s�����(�a��q�1�u�*�!�*�a�rr�)�assertNotIn�locals�	enumerater�)rrL�genexp�idx�elemrJr�s     @@r�%test_named_expression_scope_in_genexpz>NamedExpressionScopeTest.test_named_expression_scope_in_genexp�sT���
����(�a�(������f�h�'�"�6�*�I�C�����T�1�S�6�A�:�.�+r�c�t��G�fd�d�}|�j��jtd�y)Nc���eZdZ�fd�Zy)�ONamedExpressionScopeTest.test_named_expression_scope_mangled_names.<locals>.Fooc����dadD��cgc]}dxa��c}}�jtd�dD��cgc]}dxa��c}}�jtd�ycc}}wcc}}w)Nr)r�r�)r�r�)�_Foo__x1r�)�self_rJrmrs   �rrJzQNamedExpressionScopeTest.test_named_expression_scope_mangled_names.<locals>.Foo.f�s`�����(+�,��1�Q�����,�� � ��q�)�$'�(�C�q�����C�(�� � ��q�)��-��(s
�A�AN)r�r�r�rJ)rs�r�Foork�s���
*r�ror�)rJr�rm)rros` r�)test_named_expression_scope_mangled_nameszBNamedExpressionScopeTest.test_named_expression_scope_mangled_names�s*���	*�	*�	����	�����1�%r�N)r�r�r�r�r�rrr
r
rrrrrr!r%r(r+r0r3r6r9r<rCrNrQr[r_rhrpr�r�rr�r��s����$�%���"�(�
�
�$�� ������� �
&�:�8�+�	��/�&r�r��__main__)�unittestrG�TestCaserr�r�r��mainr�r�r�<module>rush���
�
�r��!2�!2�r�jy@�H�$5�$5�y@�zE&�x�0�0�E&�N�z���H�M�M�O�r�

Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists