a
    [f                     @   sB   d dl mZmZmZ d dlmZ ddlmZ G dd dejZ	dS )    )absolute_importdivisionunicode_literals)Node   )basec                   @   s,   e Zd Zdd Zdd Zdd Zdd Zd	S )

TreeWalkerc                 C   s   |j tjkr tj|j|j|jfS |j tjtj	fv r>tj
|jfS |j tjkri }t|j D ]8}||}|jr|j||j|jf< q\|j|d |jf< q\tj|j|j|| fS |j tjkrtj|jfS |j tjtjfv rtjfS tj|j fS d S N)ZnodeTyper   ZDOCUMENT_TYPE_NODEr   ZDOCTYPEnamepublicIdsystemIdZ	TEXT_NODEZCDATA_SECTION_NODEZTEXTZ	nodeValueZELEMENT_NODElist
attributeskeysZgetAttributeNodeZnamespaceURIvalueZ	localNameZELEMENTnodeNameZhasChildNodesZCOMMENT_NODECOMMENTZDOCUMENT_NODEZDOCUMENT_FRAGMENT_NODEZDOCUMENTUNKNOWN)selfnodeattrsattr r   vC:\Users\91910\OneDrive\Desktop\vts_admin_rebuild-master\vts\Lib\site-packages\pip/_vendor/html5lib/treewalkers/dom.pygetNodeDetails	   s&    
zTreeWalker.getNodeDetailsc                 C   s   |j S r	   )Z
firstChildr   r   r   r   r   getFirstChild$   s    zTreeWalker.getFirstChildc                 C   s   |j S r	   )ZnextSiblingr   r   r   r   getNextSibling'   s    zTreeWalker.getNextSiblingc                 C   s   |j S r	   )Z
parentNoder   r   r   r   getParentNode*   s    zTreeWalker.getParentNodeN)__name__
__module____qualname__r   r   r   r   r   r   r   r   r      s   r   N)

__future__r   r   r   xml.domr    r   ZNonRecursiveTreeWalkerr   r   r   r   r   <module>   s   