403Webshell
Server IP : 80.87.202.40  /  Your IP : 216.73.216.169
Web Server : Apache
System : Linux rospirotorg.ru 5.14.0-539.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Dec 5 22:26:13 UTC 2024 x86_64
User : bitrix ( 600)
PHP Version : 8.2.27
Disable Function : NONE
MySQL : OFF |  cURL : ON |  WGET : ON |  Perl : ON |  Python : OFF |  Sudo : ON |  Pkexec : ON
Directory :  /lib/python3.11/site-packages/pycparser/__pycache__/

Upload File :
current_dir [ Writeable] document_root [ Writeable]

 

Command :


[ Back ]     

Current File : /lib/python3.11/site-packages/pycparser/__pycache__/ast_transforms.cpython-311.pyc
�

��_^@���ddlmZd�Zd�ZdS)�)�c_astc�&�t|tj��sJ�t|jtj��s|Stjg|jj��}d}|jjpgD]�}t|tjtjf��r=|j�	|��t||j��|jd}�e|�|j�	|����|j�	|����||_|S)a� The 'case' statements in a 'switch' come out of parsing with one
        child node, so subsequent statements are just tucked to the parent
        Compound. Additionally, consecutive (fall-through) case statements
        come out messy. This is a peculiarity of the C grammar. The following:

            switch (myvar) {
                case 10:
                    k = 10;
                    p = k + 1;
                    return 10;
                case 20:
                case 30:
                    return 20;
                default:
                    break;
            }

        Creates this tree (pseudo-dump):

            Switch
                ID: myvar
                Compound:
                    Case 10:
                        k = 10
                    p = k + 1
                    return 10
                    Case 20:
                        Case 30:
                            return 20
                    Default:
                        break

        The goal of this transform is to fix this mess, turning it into the
        following:

            Switch
                ID: myvar
                Compound:
                    Case 10:
                        k = 10
                        p = k + 1
                        return 10
                    Case 20:
                    Case 30:
                        return 20
                    Default:
                        break

        A fixed AST node is returned. The argument may be modified.
    N���)�
isinstancer�Switch�stmt�Compound�coord�block_items�Case�Default�append�_extract_nested_case�stmts)�switch_node�new_compound�	last_case�childs    �=/usr/lib/python3.11/site-packages/pycparser/ast_transforms.py�fix_switch_casesr
s��f�k�5�<�0�0�0�0�0��k�&���7�7�����>�"�k�&6�&<�=�=�L��I�
�"�.�4�"�.�.���e�e�j�%�-�8�9�9�	.�

�$�+�+�E�2�2�2� ���(@�A�A�A�$�0��4�I�I�� ��(�/�/��6�6�6�6���&�&�u�-�-�-�-�#�K����c���t|jdtjtjf��rD|�|j�����t|d|��dSdS)z� Recursively extract consecutive Case statements that are made nested
        by the parser and add them to the stmts_list.
    �rN)rrrrr
r�popr)�	case_node�
stmts_lists  rrrcsl���)�/�!�$�u�z�5�=�&A�B�B�9����)�/�-�-�/�/�0�0�0��Z��^�Z�8�8�8�8�8�9�9rN)�rrr�rr�<module>rsE��������S�S�S�l9�9�9�9�9r

Youez - 2016 - github.com/yon3zu
LinuXploit