Sindbad~EG File Manager

Current Path : /usr/local/share/gdb/python/gdb/dap/__pycache__/
Upload File :
Current File : /usr/local/share/gdb/python/gdb/dap/__pycache__/scopes.cpython-311.pyc

�

��gn��H�ddlZddlmZddlmZddlmZddlmZia	da
ed���Zejj
�e��ed���Zed	���ZGd
�de��ZGd�d
e��ZGd�de��Zed��defd���ZdS)�N�)�frame_for_id)�request)�
in_gdb_thread)�
BaseReferencec��iadadS�N)�frame_to_scope�_last_return_value)�events �./gdb/dap/scopes.py�clear_scopesr#s���N�����c�
�|adS)z)Set the current 'finish' value on a stop.N)r)�vals r
�set_finish_valuer.s�����rc�t�|���}|���t|�����}|���}|�(|����|��}n.t|tj��st
j|��}||fSr	)�inferior_frame�select�str�symbol�value�
isinstance�gdb�Value)�sym�frame�	inf_frame�namers     r
�symbol_valuer :s����$�$�&�&�I��������s�z�z�|�|���D�

�)�)�+�+�C�
�{��j�j�l�l� � ��+�+���
��S�Y�
'�
'���i��n�n���#�;�rc�J��eZdZ�fd�Z�fd�Zd�Zd�Zed���Z�xZ	S)�_ScopeReferencec�$��t���|��||_||_|���|_|���|_|���|_t|��|_
dSr	)�super�__init__�hintrrr�function�func�line�tuple�var_list)�selfrr&rr+�	__class__s     �r
r%z_ScopeReference.__init__Mso���
�����������	���
��-�-�/�/����N�N�$�$��	��J�J�L�L��	��h����
�
�
rc���t�����}|j|d<d|d<|���|d<|j�
|j|d<|S)N�presentationHintF�	expensive�namedVariablesr))r$�	to_objectr&�child_countr))r,�resultr-s  �r
r2z_ScopeReference.to_objectXs^������"�"�$�$��%)�Y��!�"�#��{��#'�#3�#3�#5�#5��� ��9� �!�Y�F�6�N��
rc��dS)NT��r,s r
�has_childrenz_ScopeReference.has_childrencs���trc�*�t|j��Sr	)�lenr+r7s r
r3z_ScopeReference.child_countfs���4�=�!�!�!rc�B�t|j||j��Sr	)r r+r�r,�idxs  r
�fetch_one_childz_ScopeReference.fetch_one_childis���D�M�#�.��
�;�;�;r)
�__name__�
__module__�__qualname__r%r2r8r3rr>�
__classcell__�r-s@r
r"r"Ls��������	(�	(�	(�	(�	(�	�	�	�	�	����"�"�"��<�<��]�<�<�<�<�<rr"c�2��eZdZ�fd�Z�fd�Z�fd�Z�xZS)�_FinishScopeReferencec�4��t��j|�dSr	)r$r%)r,�argsr-s  �r
r%z_FinishScopeReference.__init__qs��������$����rc�J��t�����dzS)Nr)r$r3)r,r-s �r
r3z!_FinishScopeReference.child_countts����w�w�"�"�$�$�q�(�(rc�j��|dkr	dtfSt���|dz
��S)Nrz(return)r)rr$r>)r,r=r-s  �r
r>z%_FinishScopeReference.fetch_one_childws4����!�8�8�� 2�3�3��w�w�&�&�s�Q�w�/�/�/r)r?r@rAr%r3r>rBrCs@r
rErEpsj������� � � � � �)�)�)�)�)�0�0�0�0�0�0�0�0�0rrEc�4��eZdZ�fd�Zed���Z�xZS)�_RegisterReferencec���t���|d||�����������dS)N�	registers)r$r%r�architecturerM)r,rrr-s   �r
r%z_RegisterReference.__init__sV���
������+�u�e�&:�&:�&<�&<�&I�&I�&K�&K�&U�&U�&W�&W�	
�	
�	
�	
�	
rc�p�|j|j|j�|j|��fSr	)r+rr�
read_registerr<s  r
r>z"_RegisterReference.fetch_one_child�s5��
�M�#��#��N�(�(���s�);�<�<�
�	
r)r?r@rAr%rr>rBrCs@r
rKrK~sS�������
�
�
�
�
�
�
�
��]�
�
�
�
�
rrK�scopes�frameIdc�`�|tvrt|}�n	t|��}g}t|���pd��}|r%|�tdd||����|dkotdu}t|���pd��}|r&|�tdd||����n'|r%|�tdd||����|�td|����|t|<dd	�|D��iS)
Nr6�	Arguments�	argumentsr�Locals�locals�	RegistersrQc�6�g|]}|�����Sr6)r2)�.0�xs  r
�
<listcomp>zscopes.<locals>.<listcomp>�s ��5�5�5��q�{�{�}�}�5�5�5r)
r
rr*�
frame_args�appendr"r�frame_localsrErK)rR�extrarQrrG�has_return_value�locss       r
rQrQ�sB���.� � ���(����W�%�%�����U�%�%�'�'�-�2�.�.���	R��M�M�/�+�{�E�4�P�P�Q�Q�Q�"�a�<�J�,>�d�,J���U�'�'�)�)�/�R�0�0���	L��M�M�/��(�E�4�P�P�Q�Q�Q�Q�
�	L��M�M�/�(�H�e�T�J�J�K�K�K��
�
�(��e�<�<�=�=�=�"(��w���5�5�f�5�5�5�6�6r)r�framesr�serverr�startupr�varrefrr
rr�events�cont�connectrr r"rErK�intrQr6rr
�<module>rks��� �
�
�
� � � � � � �������"�"�"�"�"�"�!�!�!�!�!�!�����
�������
�����%�%�%�������������"<�<�<�<�<�m�<�<�<�H0�0�0�0�0�O�0�0�0�
�
�
�
�
��
�
�
�	�����7�s�7�7�7���7�7�7r

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