BYPASS SHELL BY ./RAZORGANZ
Server: nginx/1.20.1
System: Linux iZdzfnv9mwfppeZ 5.10.134-19.2.al8.x86_64 #1 SMP Wed Oct 29 22:47:09 CST 2025 x86_64
User: apache (48)
PHP: 8.2.30
Disabled: NONE
Upload Files
File: //usr/share/glib-2.0/codegen/__pycache__/parser.cpython-36.pyc
3

]xa�2�@s:ddlZddlmZddlmZGdd�d�Zdd�ZdS)	�N�)�	dbustypes)�print_errorc@sjeZdZdZdZdZdZdZdZdZ	dZ
d	Zddd�Zd
Z
dZdZdZdd�Zdd�Zdd�Zdd�ZdS)�
DBusXMLParser�topZnodeZ	interface�method�signal�property�argZ
annotationZignoredTcCsxtjjj�|_|j|j_|j|j_|j	|j_
|j|j_g|_
d|_tj|_g|_d|_g|_d|_||_|jj|�dS)N�)�xmlZparsersZexpatZParserCreateZ_parser�handle_commentZCommentHandler�handle_char_dataZCharacterDataHandler�handle_start_elementZStartElementHandler�handle_end_elementZEndElementHandler�parsed_interfaces�_cur_objectr�	STATE_TOP�state�state_stack�_cur_object_stack�doc_comment_last_symbol�_h_type_implies_unix_fdZParse)�self�xml_data�h_type_implies_unix_fd�r�&./usr/share/glib-2.0/codegen/parser.py�__init__'s



zDBusXMLParser.__init__Zbegin�params�body�skipcCs�tj}|jd�}d}d}d}i}�x�|D�]�}|}	|j�}|tjkr�t|�dkr�|jd�}
|
d
kr�|jd�r�|dt|�d�}tj}q�tj}nB|d|
�}||
dd�j	�}t|�dkr�|d	|d
7}tj}q(|tjk�r�|j
d��rL|jd�}
|
dk�r&tj}|�s|d	7}d}||	d7}n$|d|
�}||
dd�}
|
||<n2tj}t|�dk�r�|�sr|d	7}d}||	d7}q(|tjkr(t|�dk�r�|�s�|d	7}d}||	d7}q(|r(|d
7}d}q(W|�r�|d
7}|dk�r�||_||_
||_dS)N�
rFrz: r�:�z<para>z</para>�@T���r&)r�COMMENT_STATE_BEGIN�split�lstrip�len�find�endswith�COMMENT_STATE_PARAMS�COMMENT_STATE_SKIP�strip�
startswith�COMMENT_STATE_BODYr�doc_comment_params�doc_comment_body)r�dataZ
comment_state�linesZsymbolr Zin_parar�lineZ	orig_lineZcolon_indexZrest_of_lineZparamZdocsrrrr
Asn








zDBusXMLParser.handle_commentcCsdS)Nr)rr4rrrr�szDBusXMLParser.handle_char_datacCs|j}|j}|jtjkr$tj|_�n�|jtjkrP|tjkrDtj|_ntj|_�n�|jtjk�r8|tjkr�tj|_tj|d�}||_|j	j
|�nD|tjkr�tj|_tj|d|d�}|jj
j
|�||_ntj|_d|ko�|j|dk�r�|j|j_d|jk�r|jd}||j_d|jk�r�|jdj�|j_�n�|jtjk�r�|tjk�r�tj|_tj|d|jd�}|jjj
|�||_n�|tjk�r�tj|_tj|d�}	|jjj
|	�|	|_n�|tjk�rtj|_tj|d|d|d�}
|jjj
|
�|
|_nF|tjk�r>tj|_tj|d|d�}|jj
j
|�||_ntj|_d|k�r�|j|dk�r�|j|j_d|jk�r�|jdj�|j_�np|jtjk�r�|tjk�r*tj|_d}d|k�r�|d}tj ||d�}|j!dd	�}
|
d	k�r�|jj"j
|�n(|
d
k�r|jj#j
|�nt$dj%|
��||_nF|tjk�rhtj|_tj|d|d�}|jj
j
|�||_ntj|_|j|j&k�r�d|k�r�|d|jk�r�|j|d}|dk	�r�||j_d|jk�r�|jdj�|j_�n"|jtjk�r�|tjk�r8tj|_d}d|k�r|d}tj ||d�}|jj'j
|�||_nF|tjk�rvtj|_tj|d|d�}|jj
j
|�||_ntj|_|j|j&k�r�d|k�r�|d|jk�r�|j|d}|dk	�r�||j_d|jk�r�|jdj�|j_�n|jtjk�r>|tjk�r4tj|_tj|d|d�}|jj
j
|�||_ntj|_n�|jtjk�r�|tjk�r�tj|_tj|d|d�}|jj
j
|�||_ntj|_nh|jtjk�r�|tjk�r�tj|_tj|d|d�}|jj
j
|�||_ntj|_nt$dj%|j|��|j(j
|�|j)j
|�dS)
N�name�value�short_description�since)r�type�access�	direction�in�outzInvalid direction "{}"z:Unhandled state "{}" while entering element with name "{}")*rrr�
STATE_IGNOREDr�
STATE_NODE�STATE_INTERFACErZ	Interfacer�append�STATE_ANNOTATIONZ
AnnotationZannotationsrr3�
doc_stringr2Zdoc_string_briefr/r:�STATE_METHODZMethodr�methods�STATE_SIGNALZSignalZsignals�STATE_PROPERTYZPropertyZ
properties�	STATE_ARGZArg�getZin_argsZout_argsr�formatr7�argsrr)rr7ZattrsZ	old_stateZold_cur_objectZifaceZannor9rrZpropZarg_namer
r=rErrrr�s















z"DBusXMLParser.handle_start_elementcCs|jj�|_|jj�|_dS)N)r�poprrr)rr7rrrr(sz DBusXMLParser.handle_end_elementN)T)�__name__�
__module__�__qualname__rrArBrFrHrIrJrDr@rr'r-r1r.r
rrrrrrrrs&
?%rcCst||�}|jS)N)rr)rr�parserrrr�parse_dbus_xml-s
rS)Zxml.parsers.expatrrrZutilsrrrSrrrr�<module>s