Mini Shell

Direktori : /usr/lib/python3.6/site-packages/dasbus/__pycache__/
Upload File :
Current File : //usr/lib/python3.6/site-packages/dasbus/__pycache__/xml.cpython-36.opt-1.pyc

3

��^��@sDddlmZddlmZddgZGdd�de�ZGdd�de�ZdS)�)�ElementTree)�minidom�	XMLParser�XMLGeneratorc@s�eZdZdZedd��Zedd��Zedd��Zedd	��Zed
d��Z	edd
��Z
edd��Zedd��Zedd��Z
edd��Zedd��Zedd��Zedd��ZdS)rzClass for parsing XML.cCs
tj|�S)N)rZ
fromstring)�xml�r�/usr/lib/python3.6/xml.py�xml_to_element$szXMLParser.xml_to_elementcCs
|jdkS)N�method�signal�property)r
rr)�tag)�member_noderrr�	is_member(szXMLParser.is_membercCs
|jdkS)N�	interface)r
)rrrr�is_interface,szXMLParser.is_interfacecCs
|jdkS)Nr)r
)rrrr�	is_signal0szXMLParser.is_signalcCs
|jdkS)Nr
)r
)rrrr�	is_method4szXMLParser.is_methodcCs
|jdkS)Nr)r
)rrrr�is_property8szXMLParser.is_propertycCs
|jdkS)N�arg)r
)rrrr�is_parameter<szXMLParser.is_parametercCs|jjdd�|kS)N�name�)�attrib�get)�nodeZ	node_namerrr�has_name@szXMLParser.has_namecCs
|jdS)Nr)r)rrrr�get_nameDszXMLParser.get_namecCs
|jdS)N�type)r)rrrr�get_typeHszXMLParser.get_typecCs
|jdS)N�access)r)rrrr�
get_accessLszXMLParser.get_accesscCs
|jdS)N�	direction)r)rrrr�
get_directionPszXMLParser.get_directioncCs,t�}x |jd�D]}|||jd<qW|S)z<Return a dictionary of interfaces defined in a node element.rr)�dictZiterfindr)Znode_elementZ
interfaces�elementrrr�get_interfaces_from_nodeTsz"XMLParser.get_interfaces_from_nodeN)�__name__�
__module__�__qualname__�__doc__�staticmethodr	rrrrrrrrrr!r#r&rrrrr!sc@s�eZdZdZedd��Zedd��Zedd��Zedd	��Zed
d��Z	edd
��Z
edd��Zedd��Zedd��Z
edd��ZdS)rzClass for generating XML.cCstj|ddd�S)zReturn XML of the element.rZunicode)r
�encoding)rZtostring)r%rrr�element_to_xmlbszXMLGenerator.element_to_xmlcCsFdjdd�|j�D��}tj|�jdd�}ttddd��}||d	d
�S)z�Return pretty printed normalized XML.

        Python 3.8 changed the order of the attributes and introduced
        the function canonicalize that should be used to normalize XML.
        rcSsg|]}|j��qSr)�strip)�.0�linerrr�
<listcomp>ssz-XMLGenerator.prettify_xml.<locals>.<listcomp>z  )�indent�canonicalizec_s|S)Nr)r�args�kwargsrrr�<lambda>zsz+XMLGenerator.prettify_xml.<locals>.<lambda>T)Z
with_comments)�join�
splitlinesrZparseStringZtoprettyxml�getattrr)rZxml_liner3rrr�prettify_xmlks
zXMLGenerator.prettify_xmlcCs|j|�dS)z/Append the child element to the parent element.N)�append)Zparent_elementZ
child_elementrrr�	add_childszXMLGenerator.add_childcCs|jtj|d��dS)N)�text)r;r�Comment)r%Zcommentrrr�add_comment�szXMLGenerator.add_commentcCs
tjd�S)z"Create a node element called node.r)r�Elementrrrr�create_node�szXMLGenerator.create_nodecCstjdd|i�S)zCreate an interface element.rr)rr@)rrrr�create_interface�szXMLGenerator.create_interfacecCstjdd|i�S)zCreate a signal element.rr)rr@)rrrr�
create_signal�szXMLGenerator.create_signalcCstjdd|i�S)zCreate a method element.r
r)rr@)rrrr�
create_method�szXMLGenerator.create_methodcCsd}|||d�}tj||�S)zCreate a parameter element.r)rrr")rr@)rZ
param_typer"r
�attrrrr�create_parameter�s
zXMLGenerator.create_parametercCsd}|||d�}tj||�S)zCreate a property element.r)rrr )rr@)rZ
property_typer r
rErrr�create_property�s
zXMLGenerator.create_propertyN)r'r(r)r*r+r-r:r<r?rArBrCrDrFrGrrrrr_s	N)Z	xml.etreerZxml.domr�__all__�objectrrrrrr�<module>s
>