HEX
Server: nginx/1.24.0
System: Linux localhost 5.15.0-46-generic #49-Ubuntu SMP Thu Aug 4 18:03:25 UTC 2022 x86_64
User: www (1000)
PHP: 8.3.27
Disabled: passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv
Upload Files
File: //usr/share/glib-2.0/codegen/__pycache__/parser.cpython-310.pyc
o

�*c�2�@s:ddlZddlmZddlmZGdd�d�Zdd�ZdS)	�N�)�	dbustypes)�print_errorc@sjeZdZdZdZdZdZdZdZdZ	dZ
d	Zddd�Zd
Z
dZdZdZdd�Zdd�Zdd�Zdd�ZdS)�
DBusXMLParser�top�node�	interface�method�signal�property�arg�
annotation�ignoredTcCsxtjj��|_|j|j_|j|j_|j	|j_
|j|j_g|_
d|_tj|_g|_d|_g|_d|_||_|j�|�dS)N�)�xml�parsers�expat�ParserCreate�_parser�handle_comment�CommentHandler�handle_char_data�CharacterDataHandler�handle_start_element�StartElementHandler�handle_end_element�EndElementHandler�parsed_interfaces�_cur_objectr�	STATE_TOP�state�state_stack�_cur_object_stack�doc_comment_last_symbol�_h_type_implies_unix_fd�Parse)�self�xml_data�h_type_implies_unix_fd�r)�%/usr/share/glib-2.0/codegen/parser.py�__init__'s



zDBusXMLParser.__init__�begin�params�body�skipcCs�tj}|�d�}d}d}d}i}|D]�}|}	|��}|tjkrft|�dkre|�d�}
|
dkrE|�d�rA|dt|�d�}tj}qtj}q|d|
�}||
d	d��	�}t|�dkrb||�d�7}tj}q|tjkr�|�
d
�r�|�d�}
|
dkr�tj}|s�|d7}d}||	�d�7}q|d|
�}||
d	d�}
|
||<qtj}t|�dkr�|s�|d7}d}||	d7}q|tjkr�t|�dkr�|s�d}||	d7}q|r�|d7}d}q|r�|d7}|dkr�||_||_
||_dSdS)N�
rFrz: ����:r��@T)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&�data�
comment_state�lines�symbolr.�in_parar-�line�	orig_line�colon_index�rest_of_line�param�docsr)r)r*rAst



�



�
�
�zDBusXMLParser.handle_commentcCsdS�Nr))r&rBr)r)r*rszDBusXMLParser.handle_char_datacCs
|j}|j}|jtjkrtj|_�n�|jtjkr)|tjkr#tj|_�n�tj|_�n�|jtjkr�|tjkrItj|_t�|d�}||_|j	�
|�n"|tjkrgtj|_t�|d|d�}|jj
�
|�||_ntj|_d|vr�|j|dkr�|j|j_d|jvr�|jd}||j_d|jvr�|jd��|j_�n^|jtjk�r@|tjkr�tj|_tj|d|jd�}|jj�
|�||_n_|tjkr�tj|_t�|d�}	|jj�
|	�|	|_nD|tjkr�tj|_t�|d|d|d�}
|jj�
|
�|
|_n#|tjk�rtj|_t�|d|d�}|jj
�
|�||_ntj|_d|v�r>|j|dk�r>|j|j_d|jv�r>|jd��|j_�n�|jtjk�r�|tjk�r�tj|_d}d|v�r\|d}t� ||d�}|�!dd	�}
|
d	k�rw|jj"�
|�n|
d
k�r�|jj#�
|�nt$d�%|
��||_n#|tjk�r�tj|_t�|d|d�}|jj
�
|�||_ntj|_|j|j&k�r�d|v�r�|d|jv�r�|j|d}|du�r�||j_d|jv�r�|jd��|j_�n|jtjk�rm|tjk�rtj|_d}d|v�r|d}t� ||d�}|jj'�
|�||_n#|tjk�r5tj|_t�|d|d�}|jj
�
|�||_ntj|_|j|j&k�rld|v�rl|d|jv�rl|j|d}|du�r]||j_d|jv�rl|jd��|j_n�|jtjk�r�|tjk�r�tj|_t�|d|d�}|jj
�
|�||_ndtj|_n_|jtjk�r�|tjk�r�tj|_t�|d|d�}|jj
�
|�||_n9tj|_n4|jtjk�r�|tjk�r�tj|_t�|d|d�}|jj
�
|�||_ntj|_n	t$d�%|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 "{}")*r rr�
STATE_IGNOREDr�
STATE_NODE�STATE_INTERFACEr�	Interfacer�append�STATE_ANNOTATION�
Annotation�annotationsr#rA�
doc_stringr@�doc_string_briefr=rQ�STATE_METHOD�Methodr$�methods�STATE_SIGNAL�Signal�signals�STATE_PROPERTY�Property�
properties�	STATE_ARG�Arg�get�in_args�out_argsr�formatrN�argsr!r")r&rN�attrs�	old_state�old_cur_object�iface�annorPr	r
�prop�arg_namerrTr_r)r)r*r�s 






�

�


�



���

���


��z"DBusXMLParser.handle_start_elementcCs|j��|_|j��|_dSrM)r!�popr r"r)r&rNr)r)r*r'sz DBusXMLParser.handle_end_elementN)T)�__name__�
__module__�__qualname__rrXrYrardrgrjr\rWr+r5r;r?r<rrrrr)r)r)r*rs(
>%rcCst||�}|jSrM)rr)r'r(�parserr)r)r*�parse_dbus_xml,s
r})�xml.parsers.expatrrr�utilsrrr}r)r)r)r*�<module>s