403Webshell
Server IP : 88.99.149.37  /  Your IP : 216.73.216.141
Web Server : nginx/1.31.2
System : Linux server-88-99-149-37 6.12.0-124.56.5.el10_1.x86_64 #1 SMP PREEMPT_DYNAMIC Fri May 15 06:12:08 EDT 2026 x86_64
User : muralimurth ( 1015)
PHP Version : 8.4.23
Disable Function : exec,system,passthru,shell_exec,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : ON
Directory :  /usr/share/gcc-14/python/libstdcxx/v6/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /usr/share/gcc-14/python/libstdcxx/v6/__pycache__/xmethods.cpython-312.pyc
�

��iq��B�ddlZddlZddlZdZd�Zd�ZdZd�ZGd�dejj�Z
Gd	�d
ejj�ZGd�de�Z
Gd
�de�ZGd�de�ZGd�de�ZGd�de�ZGd�de�ZGd�dejj&�ZGd�dejj�ZGd�de�ZGd�de�ZGd�d e�ZGd!�d"e�ZGd#�d$e�ZGd%�d&e�ZGd'�d(ejj&�ZGd)�d*ejj&�ZGd+�d,e�ZGd-�d.e�ZGd/�d0ejj&�Z Gd1�d2ejj�Z!Gd3�d4e!�Z"Gd5�d6e!�Z#Gd7�d8e!�Z$Gd9�d:e!�Z%Gd;�d<ejj&�Z&Gd=�d>ejj�Z'Gd?�d@e'�Z(GdA�dBe'�Z)GdC�dDe'�Z*GdE�dFe'�Z+GdG�dHe'�Z,GdI�dJe'�Z-GdK�dLejj&�Z.GdM�dNejj�Z/GdO�dPe/�Z0GdQ�dRe/�Z1GdS�dTejj&�Z2GdU�dVejj�Z3GdW�dXe3�Z4GdY�dZe3�Z5Gd[�d\ejj&�Z6Gd]�d^ejj�Z7Gd_�d`e7�Z8Gda�dbe7�Z9Gdc�ddejj�Z:Gde�dfe:�Z;Gdg�dhejj&�Z<di�Z=y)j�Nzlibstdc++::c�,�tjd�S�N�bool��gdb�lookup_type���1/usr/share/gcc-14/python/libstdcxx/v6/xmethods.py�
get_bool_typers���?�?�6�"�"r
c�,�tjd�S)Nzstd::size_trr	r
r�get_std_size_typers���?�?�=�)�)r
z__8::c��t|tj�r|j}dt�d|��}tjd|z|�duS)z�
    Test whether a type is a specialization of the named class template.
    The type can be specified as a string or a gdb.Type object.
    The template should be the name of a class template as a string,
    without any 'std' qualification.
    �(z)?z^std::(__\d::)?%s<.*>$N)�
isinstancer�Type�tag�_versioned_namespace�re�match)�x�
template_names  r�is_specialization_ofr!sB���!�S�X�X��
�E�E���!5�}�E�M�
�8�8�-�
�=�q�A��M�Mr
c��eZdZd�Zy)�LibStdCxxXMethodc�f�tjjj||�||_y�N)r�xmethod�XMethod�__init__�worker_class)�self�namer!s   rr zLibStdCxxXMethod.__init__.s$�������$�$�T�4�0�(��r
N)�__name__�
__module__�__qualname__r r	r
rrr-s��)r
rc��eZdZd�Zd�Zy)�ArrayWorkerBasec� �||_||_yr)�	_val_type�_size�r"�val_type�sizes   rr zArrayWorkerBase.__init__6s��!�����
r
c��tjd�}|j|jj	��j�S)Nz
(void *) 0)r�parse_and_eval�castr*�pointer�dereference)r"�nullptrs  r�
null_valuezArrayWorkerBase.null_value:s7���$�$�\�2���|�|�D�N�N�2�2�4�5�A�A�C�Cr
N)r$r%r&r r5r	r
rr(r(5s
���Dr
r(c�$�eZdZd�Zd�Zd�Zd�Zy)�ArraySizeWorkerc�2�tj|||�yr�r(r r,s   rr zArraySizeWorker.__init__@���� � ��x��6r
c��yrr	�r"s r�
get_arg_typeszArraySizeWorker.get_arg_typesC���r
c��t�Sr�r�r"�objs  r�get_result_typezArraySizeWorker.get_result_typeF��� �"�"r
c��|jSr)r+rAs  r�__call__zArraySizeWorker.__call__Is���z�z�r
N�r$r%r&r r=rCrFr	r
rr7r7?s��7��#�r
r7c�$�eZdZd�Zd�Zd�Zd�Zy)�ArrayEmptyWorkerc�2�tj|||�yrr9r,s   rr zArrayEmptyWorker.__init__Nr:r
c��yrr	r<s rr=zArrayEmptyWorker.get_arg_typesQr>r
c��t�Sr�rrAs  rrCz ArrayEmptyWorker.get_result_typeT�
����r
c�2�t|j�dk(S�Nr)�intr+rAs  rrFzArrayEmptyWorker.__call__Ws���D�J�J��1�$�%r
NrGr	r
rrIrIMs��7���&r
rIc�$�eZdZd�Zd�Zd�Zd�Zy)�ArrayFrontWorkerc�2�tj|||�yrr9r,s   rr zArrayFrontWorker.__init__\r:r
c��yrr	r<s rr=zArrayFrontWorker.get_arg_types_r>r
c��|jSr�r*rAs  rrCz ArrayFrontWorker.get_result_typeb����~�~�r
c�b�t|j�dkDr|ddS|j�S�Nr�_M_elems�rQr+r5rAs  rrFzArrayFrontWorker.__call__es.���t�z�z�?�Q���z�?�1�%�%��?�?�$�$r
NrGr	r
rrSrS[���7���%r
rSc�$�eZdZd�Zd�Zd�Zd�Zy)�ArrayBackWorkerc�2�tj|||�yrr9r,s   rr zArrayBackWorker.__init__mr:r
c��yrr	r<s rr=zArrayBackWorker.get_arg_typespr>r
c��|jSrrWrAs  rrCzArrayBackWorker.get_result_typesrXr
c�|�t|j�dkDr|d|jdz
S|j�S)Nrr[�r\rAs  rrFzArrayBackWorker.__call__vs6���t�z�z�?�Q���z�?�4�:�:��>�2�2��?�?�$�$r
NrGr	r
rr_r_lr]r
r_c�$�eZdZd�Zd�Zd�Zd�Zy)�
ArrayAtWorkerc�2�tj|||�yrr9r,s   rr zArrayAtWorker.__init__~r:r
c��t�Srr@r<s rr=zArrayAtWorker.get_arg_types�rDr
c��|jSrrW�r"rB�indexs   rrCzArrayAtWorker.get_result_type�rXr
c��t|�t|j�k\r#tdt|�|jfz��|d|S)Nz%Array index "%d" should not be >= %d.r[)rQr+�
IndexErrorrjs   rrFzArrayAtWorker.__call__�sJ���u�:��T�Z�Z��(��D�"�5�z�4�:�:�6�8�9�
9��:��u�%�%r
NrGr	r
rrfrf}s��7�#��&r
rfc�$�eZdZd�Zd�Zd�Zd�Zy)�ArraySubscriptWorkerc�2�tj|||�yrr9r,s   rr zArraySubscriptWorker.__init__�r:r
c��t�Srr@r<s rr=z"ArraySubscriptWorker.get_arg_types�rDr
c��|jSrrWrjs   rrCz$ArraySubscriptWorker.get_result_type�rXr
c�b�t|j�dkDr|d|S|j�SrZr\rjs   rrFzArraySubscriptWorker.__call__�s.���t�z�z�?�Q���z�?�5�)�)��?�?�$�$r
NrGr	r
rroro�s��7�#��%r
roc��eZdZd�Zd�Zy)�ArrayMethodsMatcherc	��tjjj|tdz�tdt�tdt�tdt�tdt�tdt�tdt�d�|_|jD�cgc]}|j|��c}|_
ycc}w)	N�arrayr.�empty�front�back�at�
operator[]�r.rxryrzr{r|)rr�XMethodMatcherr �matcher_name_prefixrr7rIrSr_rfro�_method_dict�methods�r"�ms  rr zArrayMethodsMatcher.__init__�s������"�"�+�+�D�,?�'�,I�	K�%�V�_�=�%�g�/?�@�%�g�/?�@�$�V�_�=�"�4��7�*�<�9M�N�

���7;�6G�6G�H�6G���)�)�!�,�6G�H����H��"Cc���t|d�sy|jj|�}|�|jsy	|j	d�}|j	d�}|j||�S#YyxYw)Nrwrrd)rr��get�enabled�template_argumentr!)r"�
class_type�method_name�method�
value_typer.s      rrzArrayMethodsMatcher.match�sw��#�J��8���"�"�&�&�{�3���>�����	�#�5�5�a�8�J��/�/��2�D��"�"�:�t�4�4��	��s�"A-�-A1N�r$r%r&r rr	r
rruru�s
��I�5r
ruc��eZdZd�Zd�Zd�Zy)�DequeWorkerBasec�B�||_d|jzxsd|_y)Nird)r*�sizeof�_bufsize�r"r-s  rr zDequeWorkerBase.__init__�s��!����x���.�3�!��
r
c��|dd}|dd}|d|dk(ry|j|d|dz
dz
z|d|dz
z|d	|dz
zS)
N�_M_impl�_M_start�	_M_finish�_M_curr�_M_noderd�_M_first�_M_last�r�)r"rB�start�finishs    rr.zDequeWorkerBase.size�s����I��z�*���Y���,����?�f�X�.�.���
�
��)�$�u�Y�'7�7�!�;�=��(�#�f�Z�&8�8�:���#�e�H�o�5�7�	8r
c��|dd}|d|dz
}||kr|d|S||z
}|ddt|�|jzz}|||jzS)Nr�r�r�r�r�rd)rQr�)r"rB�idxr��first_node_size�
index_nodes      rrkzDequeWorkerBase.index�sy���I��z�*���	�*�U�8�_�<���� ���?�3�'�'��O�#���9�%�a�#�c�(�d�m�m�*C�&C�D�
��#��
�
�-�.�.r
N)r$r%r&r r.rkr	r
rr�r��s��4�8�/r
r�c��eZdZd�Zd�Zd�Zy)�DequeEmptyWorkerc��yrr	r<s rr=zDequeEmptyWorker.get_arg_types�r>r
c��t�SrrMrAs  rrCz DequeEmptyWorker.get_result_type�rNr
c�0�|ddd|dddk(S)Nr�r�r�r�r	rAs  rrFzDequeEmptyWorker.__call__�s.���I��z�*�8�4��I��{�+�H�5�6�	7r
N�r$r%r&r=rCrFr	r
rr�r��s����7r
r�c��eZdZd�Zd�Zd�Zy)�DequeSizeWorkerc��yrr	r<s rr=zDequeSizeWorker.get_arg_types�r>r
c��t�Srr@rAs  rrCzDequeSizeWorker.get_result_type�rDr
c�$�|j|�Sr�r.rAs  rrFzDequeSizeWorker.__call__�����y�y��~�r
Nr�r	r
rr�r������#�r
r�c��eZdZd�Zd�Zd�Zy)�DequeFrontWorkerc��yrr	r<s rr=zDequeFrontWorker.get_arg_types�r>r
c��|jSrrWrAs  rrCz DequeFrontWorker.get_result_type�rXr
c��|ddddS)Nr�r�r�rr	rAs  rrFzDequeFrontWorker.__call__�s���9�~�j�)�(�3�A�6�6r
Nr�r	r
rr�r��s����7r
r�c��eZdZd�Zd�Zd�Zy)�DequeBackWorkerc��yrr	r<s rr=zDequeBackWorker.get_arg_types�r>r
c��|jSrrWrAs  rrCzDequeBackWorker.get_result_type�rXr
c��|ddd|dddk(r#|ddddz
}|d|jdz
S|ddddS)	Nr�r�r�r�r�rdr���r��r"rB�	prev_nodes   rrFzDequeBackWorker.__call__sr���	�N�;�'��1��I��{�+�J�7�
8��I��{�3�I�>��B�I��Q�<��
�
�� 1�2�2��y�>�+�.�x�8��<�<r
Nr�r	r
rr�r��s����=r
r�c��eZdZd�Zd�Zd�Zy)�DequeSubscriptWorkerc��t�Srr@r<s rr=z"DequeSubscriptWorker.get_arg_types
rDr
c��|jSrrW�r"rB�	subscripts   rrCz$DequeSubscriptWorker.get_result_type
rXr
c�&�|j||�Sr)rkr�s   rrFzDequeSubscriptWorker.__call__s���z�z�#�y�)�)r
Nr�r	r
rr�r�	s��#��*r
r�c��eZdZd�Zd�Zd�Zy)�
DequeAtWorkerc��t�Srr@r<s rr=zDequeAtWorker.get_arg_typesrDr
c��|jSrrWrjs   rrCzDequeAtWorker.get_result_typerXr
c��t|j|��}t|�|k\rtdt|�|fz��|j||�S)Nz%Deque index "%d" should not be >= %d.)rQr.rmrk)r"rBrk�
deque_sizes    rrFzDequeAtWorker.__call__sT������3��(�
��u�:��#��D�!�%�j�*�5�6�7�
7��:�:�c�5�)�)r
Nr�r	r
rr�r�s��#��*r
r�c��eZdZd�Zd�Zy)�DequeMethodsMatcherc	��tjjj|tdz�tdt�tdt�tdt�tdt�tdt�tdt�d�|_|jD�cgc]}|j|��c}|_
ycc}w)	N�dequerxr.ryrzr|r{)rxr.ryrzr|r{)rrr~r rrr�r�r�r�r�r�r�r�r�s  rr zDequeMethodsMatcher.__init__%s������"�"�+�+�D�,?�'�,I�	K�&�g�/?�@�$�V�_�=�%�g�/?�@�$�V�_�=�*�<�9M�N�"�4��7�

���7;�6G�6G�H�6G���)�)�!�,�6G�H����Hr�c��t|d�sy|jj|�}|�|jsy|j	|jd��S)Nr�r�rr�r�r�r!r��r"r�r�r�s    rrzDequeMethodsMatcher.match2sO��#�J��8���"�"�&�&�{�3���>������"�"�:�#?�#?��#B�C�Cr
Nr�r	r
rr�r�$s��I�Dr
r�c��eZdZd�Zd�Zy)�ForwardListWorkerBasec� �||_||_yr�r*�
_node_type�r"r-�	node_types   rr zForwardListWorkerBase.__init__>���!���#��r
c��yrr	r<s rr=z#ForwardListWorkerBase.get_arg_typesBr>r
N)r$r%r&r r=r	r
rr�r�=s��$�r
r�c��eZdZd�Zd�Zy)�ForwardListEmptyWorkerc��t�SrrMrAs  rrCz&ForwardListEmptyWorker.get_result_typeGrNr
c��|ddddk(S)Nr��_M_head�_M_nextrr	rAs  rrFzForwardListEmptyWorker.__call__Js���9�~�i�(��3�q�8�8r
N�r$r%r&rCrFr	r
rr�r�Fs���9r
r�c��eZdZd�Zd�Zy)�ForwardListFrontWorkerc��|jSrrWrAs  rrCz&ForwardListFrontWorker.get_result_typeOrXr
c���|dddj|j�}|ddj}|j|jj	��j�S)Nr�r�r��
_M_storage)r1r��addressr*r2r3)r"rB�node�val_addresss    rrFzForwardListFrontWorker.__call__Rs`���9�~�i�(��3�8�8����I���<�(��6�>�>�������� 6� 6� 8�9�E�E�G�Gr
Nr�r	r
rr�r�Ns
���Hr
r�c��eZdZd�Zd�Zy)�ForwardListMethodsMatcherc��tdz}tjjj	||�tdt�tdt�d�|_|jD�cgc]}|j|��c}|_	ycc}w)N�forward_listrxry)rxry)
rrrr~r rr�r�r�r�)r"�matcher_namer�s   rr z"ForwardListMethodsMatcher.__init__Yst��*�^�;�����"�"�+�+�D�,�?�%�g�/E�F�%�g�/E�F�
���7;�6G�6G�H�6G���)�)�!�,�6G�H����Hs�(Bc��t|d�sy|jj|�}|�|jsy|j	d�}tjt|�dz�j�}|j||�S)Nr�r�::_Node�
rr�r�r�r�rr�strr2r!�r"r�r�r�r-r�s      rrzForwardListMethodsMatcher.matchbsv��#�J��?���"�"�&�&�{�3���>������/�/��2���O�O�C�
�O�i�$?�@�H�H�J�	��"�"�8�Y�7�7r
Nr�r	r
rr�r�Xs
��I�8r
r�c��eZdZd�Zd�Zd�Zy)�ListWorkerBasec� �||_||_yrr�r�s   rr zListWorkerBase.__init__pr�r
c��yrr	r<s rr=zListWorkerBase.get_arg_typestr>r
c��|j�}|jj�djdk(r|dS|dj}|j|jj��j�S)Nrd�_M_datar�)r3�type�fieldsr#r�r1r*r2)r"r��addrs   r�get_value_from_nodez"ListWorkerBase.get_value_from_nodewso�����!���9�9����a� �%�%��2��	�?�"��L�!�)�)���y�y����/�/�1�2�>�>�@�@r
N)r$r%r&r r=r�r	r
rr�r�os��$��Ar
r�c��eZdZd�Zd�Zy)�ListEmptyWorkerc��t�SrrMrAs  rrCzListEmptyWorker.get_result_type�rNr
c�:�|dd}|d|jk(ryy)Nr�r�r�TF�r�)r"rB�	base_nodes   rrFzListEmptyWorker.__call__�s)���	�N�9�-�	��Y��9�#4�#4�4��r
Nr�r	r
rr�r��s���r
r�c��eZdZd�Zd�Zy)�ListSizeWorkerc��t�Srr@rAs  rrCzListSizeWorker.get_result_type�rDr
c�n�|ddd}|ddj}d}||k7r|d}|dz
}||k7r�|S)Nr�r�r�rrdr)r"rB�
begin_node�end_noder.s     rrFzListSizeWorker.__call__�sZ����^�I�.�y�9�
��y�>�)�,�4�4�����H�$�#�I�.�J��A�I�D��H�$��r
Nr�r	r
rrr�s��#�r
rc��eZdZd�Zd�Zy)�ListFrontWorkerc��|jSrrWrAs  rrCzListFrontWorker.get_result_type�rXr
c�l�|dddj|j�}|j|�S)Nr�r�r��r1r�r�)r"rBr�s   rrFzListFrontWorker.__call__�s5���9�~�i�(��3�8�8����I���'�'��-�-r
Nr�r	r
rrr�s���.r
rc��eZdZd�Zd�Zy)�ListBackWorkerc��|jSrrWrAs  rrCzListBackWorker.get_result_type�rXr
c�l�|dddj|j�}|j|�S)Nr�r��_M_prevrr�s   rrFzListBackWorker.__call__�s5���	�N�9�-�i�8�=�=�d�o�o�N�	��'�'�	�2�2r
Nr�r	r
rrr�s���3r
rc��eZdZd�Zd�Zy)�ListMethodsMatcherc�P�tjjj|tdz�tdt�tdt�tdt�tdt�d�|_
|jD�cgc]}|j|��c}|_ycc}w)N�listrxr.ryrz)rxr.ryrz)rrr~r rrr�rrrr�r�r�s  rr zListMethodsMatcher.__init__�s������"�"�+�+�D�,?�&�,H�	J�&�g��?�$�V�^�<�%�g��?�$�V�^�<�	
���7;�6G�6G�H�6G���)�)�!�,�6G�H����H��B#c��t|d�sy|jj|�}|�|jsy|j	d�}tjt|�dz�j�}|j||�S)Nz(__cxx11::)?listrr�r�r�s      rrzListMethodsMatcher.match�sw��#�J�0B�C���"�"�&�&�{�3���>������/�/��2���O�O�C�
�O�i�$?�@�H�H�J�	��"�"�8�Y�7�7r
Nr�r	r
rrr�s
��	I�8r
rc��eZdZd�Zd�Zd�Zy)�VectorWorkerBasec��||_yrrWr�s  rr zVectorWorkerBase.__init__�s	��!��r
c��|jjtjk(rS|ddd}|ddd}|ddd}|j	�j
jdz}||z
|z|zS|dd|ddz
S)Nr�r��_M_pr��	_M_offset��r*�coder�TYPE_CODE_BOOLr3r�r�)r"rBr�r��
finish_offset�bit_sizes      rr.zVectorWorkerBase.size�s����>�>���#�"4�"4�4��	�N�:�.�v�6�E���^�K�0��8�F��	�N�;�7��D�M��(�(�*�/�/�6�6��:�H��U�N�h�.��>�>��y�>�+�.��Y��
�1K�K�Kr
c��|jjtjk(rX|ddd}|j	�j
jdz}|||zz}||z}|j	�d|zzdkDS|dd|S)Nr�r�rr rdrr!)r"rBrkr�r%�valp�offsets       rr�zVectorWorkerBase.get�s����>�>���#�"4�"4�4��	�N�:�.�v�6�E��(�(�*�/�/�6�6��:�H��5�H�,�,�D��X�%�F��$�$�&�!�v�+�6�!�;�;��y�>�*�-�e�4�4r
N)r$r%r&r r.r�r	r
rrr�s��"�L�5r
rc��eZdZd�Zd�Zd�Zy)�VectorEmptyWorkerc��yrr	r<s rr=zVectorEmptyWorker.get_arg_types�r>r
c��t�SrrMrAs  rrCz!VectorEmptyWorker.get_result_type�rNr
c�<�t|j|��dk(SrP)rQr.rAs  rrFzVectorEmptyWorker.__call__�s���4�9�9�S�>�"�a�'�'r
Nr�r	r
rr*r*�s����(r
r*c��eZdZd�Zd�Zd�Zy)�VectorSizeWorkerc��yrr	r<s rr=zVectorSizeWorker.get_arg_types�r>r
c��t�Srr@rAs  rrCz VectorSizeWorker.get_result_type�rDr
c�$�|j|�Srr�rAs  rrFzVectorSizeWorker.__call__�r�r
Nr�r	r
rr/r/�r�r
r/c��eZdZd�Zd�Zd�Zy)�VectorFrontWorkerc��yrr	r<s rr=zVectorFrontWorker.get_arg_types�r>r
c��|jSrrWrAs  rrCz!VectorFrontWorker.get_result_type�rXr
c�&�|j|d�SrP)r�rAs  rrFzVectorFrontWorker.__call__�s���x�x��Q��r
Nr�r	r
rr4r4�s���� r
r4c��eZdZd�Zd�Zd�Zy)�VectorBackWorkerc��yrr	r<s rr=zVectorBackWorker.get_arg_typesr>r
c��|jSrrWrAs  rrCz VectorBackWorker.get_result_typerXr
c�\�|j|t|j|��dz
�S�Nrd)r�rQr.rAs  rrFzVectorBackWorker.__call__s%���x�x��S����3��0�1�4�5�5r
Nr�r	r
rr9r9s����6r
r9c��eZdZd�Zd�Zd�Zy)�VectorAtWorkerc��t�Srr@r<s rr=zVectorAtWorker.get_arg_typesrDr
c��|jSrrWrjs   rrCzVectorAtWorker.get_result_typerXr
c��t|j|��}t|�|k\rtdt|�|fz��|j|t|��S)Nz&Vector index "%d" should not be >= %d.)rQr.rmr�)r"rBrkr.s    rrFzVectorAtWorker.__call__sV���4�9�9�S�>�"���u�:����E�"�5�z�4�0�2�3�
3��x�x��S��Z�(�(r
Nr�r	r
rr?r?s��#��)r
r?c��eZdZd�Zd�Zd�Zy)�VectorSubscriptWorkerc��t�Srr@r<s rr=z#VectorSubscriptWorker.get_arg_typesrDr
c��|jSrrWr�s   rrCz%VectorSubscriptWorker.get_result_typerXr
c�8�|j|t|��Sr)r�rQr�s   rrFzVectorSubscriptWorker.__call__!s���x�x��S��^�,�,r
Nr�r	r
rrDrDs��#��-r
rDc��eZdZd�Zd�Zy)�VectorMethodsMatcherc	��tjjj|tdz�tdt�tdt�tdt�tdt�tdt�tdt�d�|_|jD�cgc]}|j|��c}|_
ycc}w)	N�vectorr.rxryrzr{r|r})rrr~r rrr/r*r4r9r?rDr�r�r�s  rr zVectorMethodsMatcher.__init__&s������"�"�+�+�D�,?�(�,J�	L�%�V�-=�>�%�g�/@�A�%�g�/@�A�$�V�-=�>�"�4��8�*�<�+@�B�

���7;�6G�6G�H�6G���)�)�!�,�6G�H����Hr�c��t|d�sy|jj|�}|�|jsy|j	|jd��S)NrKrr�r�s    rrzVectorMethodsMatcher.match4sO��#�J��9���"�"�&�&�{�3���>������"�"�:�#?�#?��#B�C�Cr
Nr�r	r
rrIrI%s��I�Dr
rIc��eZdZd�Zd�Zd�Zy)�AssociativeContainerWorkerBasec��||_yr��
_unordered)r"�	unordereds  rr z'AssociativeContainerWorkerBase.__init__@s	��#��r
c�@�|jr|ddS|dddS)N�_M_h�_M_element_count�_M_tr��
_M_node_countrPrAs  r�
node_countz)AssociativeContainerWorkerBase.node_countCs-���?�?��v�;�1�2�2��v�;�y�)�/�:�:r
c��yrr	r<s rr=z,AssociativeContainerWorkerBase.get_arg_typesIr>r
N)r$r%r&r rXr=r	r
rrNrN?s��$�;�r
rNc��eZdZd�Zd�Zy)�AssociativeContainerEmptyWorkerc��t�SrrMrAs  rrCz/AssociativeContainerEmptyWorker.get_result_typeNrNr
c�<�t|j|��dk(SrP)rQrXrAs  rrFz(AssociativeContainerEmptyWorker.__call__Qs���4�?�?�3�'�(�A�-�-r
Nr�r	r
rr[r[Ms���.r
r[c��eZdZd�Zd�Zy)�AssociativeContainerSizeWorkerc��t�Srr@rAs  rrCz.AssociativeContainerSizeWorker.get_result_typeVrDr
c�$�|j|�Sr)rXrAs  rrFz'AssociativeContainerSizeWorker.__call__Ys�����s�#�#r
Nr�r	r
rr_r_Us��#�$r
r_c��eZdZd�Zd�Zy)�"AssociativeContainerMethodsMatcherc�"�tjjj|t|z�||_t
dt�t
dt�d�|_	|jD�cgc]}|j|��c}|_
ycc}w)Nr.rx)r.rx)rrr~r r�_namerr_r[r�r�)r"r#r�s   rr z+AssociativeContainerMethodsMatcher.__init__^s}�����"�"�+�+�D�,?�$�,F�	H���
�$�V�-K�L�%�g�&E�G�
���
7;�6G�6G�H�6G���)�)�!�,�6G�H����Hs�-Bc���t||j�sy|jj|�}|�|jsyd|jv}|j|�S)NrR)rrer�r�r�r!)r"r�r�r�rRs     rrz(AssociativeContainerMethodsMatcher.matchisV��#�J��
�
�;���"�"�&�&�{�3���>������4�:�:�-�	��"�"�9�-�-r
Nr�r	r
rrcrc]s
��	I�.r
rcc�.�eZdZdZd�Zd�Zd�Zd�Zd�Zy)�UniquePtrGetWorkerzS
    Implement std::unique_ptr<T>::get() and std::unique_ptr<T>::operator->().
    c��|jtjk(|_|jr|j	�|_y||_yr�r"r�TYPE_CODE_ARRAY�	_is_array�target�
_elem_type�r"�	elem_types  rr zUniquePtrGetWorker.__init__z�6��"���3�+>�+>�>����>�>�'�.�.�0�D�O�'�D�Or
c��yrr	r<s rr=z UniquePtrGetWorker.get_arg_types�r>r
c�6�|jj�Sr�rnr2rAs  rrCz"UniquePtrGetWorker.get_result_type�������&�&�(�(r
c�*�|dk(xs
|jS�Nr��rl�r"r�s  r�	_supportszUniquePtrGetWorker._supports�����e�#�9�4�>�>�'9�9r
c��|j�jj�djj}t	|d�r	|dd}nt	|d�r|d}ny|jj�dj}|j�dj}|j�d}|j
dk(r|j
|�dS|jr|j
|j�Sy)Nrz__uniq_ptr_(data|impl)rV�tuplerd�_M_head_impl)r3r�r�rrr#r1�
is_base_class)r"rB�	impl_type�tuple_member�tuple_impl_type�tuple_head_type�
head_fields       rrFzUniquePtrGetWorker.__call__�s����O�O�%�*�*�1�1�3�A�6�;�;�?�?�	��	�+C�D��v�;�v�.�L�
!�)�W�
5��v�;�L��&�+�+�2�2�4�Q�7�<�<��)�0�0�2�1�5�:�:��$�+�+�-�a�0�
��?�?�n�,��$�$�_�5�n�E�E�
�
%�
%��$�$�Z�_�_�5�5�r
N�	r$r%r&�__doc__r r=rCrzrFr	r
rrhrhus ���(��)�:�r
rhc�(�eZdZdZd�Zd�Zd�Zd�Zy)�UniquePtrDerefWorkerz*Implement std::unique_ptr<T>::operator*().c�0�tj||�yr�rhr ros  rr zUniquePtrDerefWorker.__init__�����#�#�D�)�4r
c��|jSr�rnrAs  rrCz$UniquePtrDerefWorker.get_result_type�������r
c��|jSrrxrys  rrzzUniquePtrDerefWorker._supports�����>�>�!�!r
c�J�tj||�j�Sr)rhrFr3rAs  rrFzUniquePtrDerefWorker.__call__����!�*�*�4��5�A�A�C�Cr
N�r$r%r&r�r rCrzrFr	r
rr�r�����4�5��"�Dr
r�c�.�eZdZdZd�Zd�Zd�Zd�Zd�Zy)�UniquePtrSubscriptWorkerz1Implement std::unique_ptr<T>::operator[](size_t).c�0�tj||�yrr�ros  rr z!UniquePtrSubscriptWorker.__init__�r�r
c��t�Srr@r<s rr=z&UniquePtrSubscriptWorker.get_arg_types�rDr
c��|jSrr�rjs   rrCz(UniquePtrSubscriptWorker.get_result_type�r�r
c��|jSrrxrys  rrzz"UniquePtrSubscriptWorker._supports�����~�~�r
c�4�tj||�|Sr)rhrFrjs   rrFz!UniquePtrSubscriptWorker.__call__�s��!�*�*�4��5�e�<�<r
Nr�r	r
rr�r��s��;�5�#���=r
r�c��eZdZd�Zd�Zy)�UniquePtrMethodsMatcherc�P�tjjj|tdz�tdt�tdt�tdt�tdt�d�|_	|jD�cgc]}|j|��c}|_
ycc}w)N�
unique_ptrr��
operator->�	operator*r|)r�r�r�r|)rrr~r rrrhr�r�r�r�r�s  rr z UniquePtrMethodsMatcher.__init__�s������"�"�+�+�D�,?�,�,N�	P�$�E�+=�>�*�<�9K�L�)�+�7K�L�*�<�9Q�R�	
���7;�6G�6G�H�6G���)�)�!�,�6G�H����Hrc���t|d�sy|jj|�}|�|jsy|j	|jd��}|j
|�r|Sy)Nr�r�rr�r�r�r!r�rz�r"r�r�r��workers     rrzUniquePtrMethodsMatcher.match��d��#�J��=���"�"�&�&�{�3���>������$�$�Z�%A�%A�!�%D�E�����K�(��M�r
Nr�r	r
rr�r��s
��	I�	r
r�c�.�eZdZdZd�Zd�Zd�Zd�Zd�Zy)�SharedPtrGetWorkerzT
    Implements std::shared_ptr<T>::get() and std::shared_ptr<T>::operator->().
    c��|jtjk(|_|jr|j	�|_y||_yrrjros  rr zSharedPtrGetWorker.__init__�rqr
c��yrr	r<s rr=z SharedPtrGetWorker.get_arg_types�r>r
c�6�|jj�SrrtrAs  rrCz"SharedPtrGetWorker.get_result_type�rur
c�*�|dk(xs
|jSrwrxrys  rrzzSharedPtrGetWorker._supports�r{r
c��|dS)N�_M_ptrr	rAs  rrFzSharedPtrGetWorker.__call__�s���8�}�r
Nr�r	r
rr�r��s ���(��)�:�r
r�c�(�eZdZdZd�Zd�Zd�Zd�Zy)�SharedPtrDerefWorkerz*Implement std::shared_ptr<T>::operator*().c�0�tj||�yr�r�r ros  rr zSharedPtrDerefWorker.__init__�r�r
c��|jSrr�rAs  rrCz$SharedPtrDerefWorker.get_result_type�r�r
c��|jSrrxrys  rrzzSharedPtrDerefWorker._supportsr�r
c�J�tj||�j�Sr)r�rFr3rAs  rrFzSharedPtrDerefWorker.__call__r�r
Nr�r	r
rr�r��r�r
r�c�.�eZdZdZd�Zd�Zd�Zd�Zd�Zy)�SharedPtrSubscriptWorkerz1Implement std::shared_ptr<T>::operator[](size_t).c�0�tj||�yrr�ros  rr z!SharedPtrSubscriptWorker.__init__r�r
c��t�Srr@r<s rr=z&SharedPtrSubscriptWorker.get_arg_typesrDr
c��|jSrr�rjs   rrCz(SharedPtrSubscriptWorker.get_result_typer�r
c��|jSrrxrys  rrzz"SharedPtrSubscriptWorker._supportsr�r
c
�<�tjdt|j��}|rY|t	|jd��k\r<t
d|jt	|�t	|jd��fz��tj||�|S)Nz.*\[(\d+)]$rdz.shared_ptr<%s> index "%d" should not be >= %d.)	rrr�rnrQ�grouprmr�rF)r"rBrkr�s    rrFz!SharedPtrSubscriptWorker.__call__s���H�H�^�S����%9�:����#�a�g�g�a�j�/�)��M�"�o�o�s�5�z�3�q�w�w�q�z�?�K�L�M�
M�!�*�*�4��5�e�<�<r
Nr�r	r
rr�r�	s��;�5�#���=r
r�c�.�eZdZdZd�Zd�Zd�Zd�Zd�Zy)�SharedPtrUseCountWorkerz*Implement std::shared_ptr<T>::use_count().c��yrr	ros  rr z SharedPtrUseCountWorker.__init__%s��r
c��yrr	r<s rr=z%SharedPtrUseCountWorker.get_arg_types(r>r
c�,�tjd�S)N�longrrAs  rrCz'SharedPtrUseCountWorker.get_result_type+������v�&�&r
c��y)NTr	rys  rrzz!SharedPtrUseCountWorker._supports.r>r
c�$�|dd}|r|dSdS)N�_M_refcount�_M_pi�_M_use_countrr	)r"rB�	refcountss   rrFz SharedPtrUseCountWorker.__call__1s#���
�&�w�/�	�,5�y��(�<�1�<r
Nr�r	r
rr�r�"s��4�
��'��=r
r�c�"�eZdZdZd�Zd�Zd�Zy)�SharedPtrUniqueWorkerz'Implement std::shared_ptr<T>::unique().c�0�tj||�yr)r�r ros  rr zSharedPtrUniqueWorker.__init__9s���(�(��y�9r
c�,�tjd�SrrrAs  rrCz%SharedPtrUniqueWorker.get_result_type<r�r
c�4�tj||�dk(Sr=)r�rFrAs  rrFzSharedPtrUniqueWorker.__call__?s��&�/�/��c�:�a�?�?r
N)r$r%r&r�r rCrFr	r
rr�r�6s��1�:�'�@r
r�c��eZdZd�Zd�Zy)�SharedPtrMethodsMatcherc	��tjjj|tdz�tdt�tdt�tdt�tdt�tdt�tdt�d�|_|jD�cgc]}|j|��c}|_ycc}w)	N�
shared_ptrr�r�r�r|�	use_count�unique)r�r�r�r|r�r�)
rrr~r rrr�r�r�r�r�r�r�r�s  rr z SharedPtrMethodsMatcher.__init__Ds������"�"�+�+�D�,?�,�,N�	P�$�E�+=�>�*�<�9K�L�)�+�7K�L�*�<�9Q�R�)�+�7N�O�&�x�1F�G�

���7;�6G�6G�H�6G���)�)�!�,�6G�H����Hr�c���t|d�sy|jj|�}|�|jsy|j	|jd��}|j
|�r|Sy)Nr�rr�r�s     rrzSharedPtrMethodsMatcher.matchQr�r
Nr�r	r
rr�r�Cs
��I�	r
r�c���tjj|t��tjj|t	��tjj|t��tjj|t
��tjj|t��tjj|td��tjj|td��tjj|td��tjj|td��tjj|td��tjj|td��tjj|td��tjj|td��tjj|t��tjj|t��y)	N�set�map�multiset�multimap�
unordered_set�
unordered_map�unordered_multiset�unordered_multimap)rr�register_xmethod_matcherrur�r�rrIrcr�r�)�locuss r�register_libstdcxx_xmethodsr�]s����K�K�(�(��0C�0E�F��K�K�(�(��0I�0K�L��K�K�(�(��0C�0E�F��K�K�(�(��0B�0D�E��K�K�(�(��0D�0F�G��K�K�(�(�
�1�%�8�:��K�K�(�(�
�1�%�8�:��K�K�(�(�
�1�*�=�?��K�K�(�(�
�1�*�=�?��K�K�(�(�
�1�/�B�D��K�K�(�(�
�1�/�B�D��K�K�(�(�
�1�2F�G�I��K�K�(�(�
�1�2F�G�I��K�K�(�(��0G�0I�J��K�K�(�(��0G�0I�Jr
)>r�gdb.xmethodrrrrrrrrr�
XMethodWorkerr(r7rIrSr_rfror~rur�r�r�r�r�r�r�r�r�r�r�r�r�r�rrrrrr*r/r4r9r?rDrIrNr[r_rcrhr�r�r�r�r�r�r�r�r�r�r	r
r�<module>r�sT��$��	�#��#�*���
N�)�s�{�{�*�*�)�D�c�k�k�/�/�D��o��&��&�%��%�"%�o�%�"&�O�&�"%�?�%�"5�#�+�+�4�4�5�>/�c�k�k�/�/�/�2	7��	7��o��7��7�
=�o�
=� *�?�*�
*�O�
*� D�#�+�+�4�4�D�2�C�K�K�6�6��9�2�9�H�2�H�8���� :� :�8�.A�S�[�[�.�.�A�$	�n�	��^��.�n�.�3�^�3�8����3�3�8�25�s�{�{�0�0�5�2(�(�(��'�� �(� �6�'�6�)�%�)�-�,�-�D�3�;�;�5�5�D�4�S�[�[�%>�%>��.�&D�.�$�%C�$�.����)C�)C�.�0'����2�2�'�TD�-�D�"=�1�=�(�c�k�k�8�8��4����2�2��4D�-�D�"=�1�=�2=�c�k�k�7�7�=�(
@�3�
@��c�k�k�8�8��4Kr

Youez - 2016 - github.com/yon3zu
LinuXploit