o
    ؁i                     @   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rWi }t|j D ]}||}|jrB|j||j|jf< q.|j|d |jf< q.tj|j|j|| fS |j tjkrctj|jfS |j tjtjfv rptjfS tj|j fS N)nodeTyper   DOCUMENT_TYPE_NODEr   DOCTYPEnamepublicIdsystemId	TEXT_NODECDATA_SECTION_NODETEXT	nodeValueELEMENT_NODElist
attributeskeysgetAttributeNodenamespaceURIvalue	localNameELEMENTnodeNamehasChildNodesCOMMENT_NODECOMMENTDOCUMENT_NODEDOCUMENT_FRAGMENT_NODEDOCUMENTUNKNOWN)selfnodeattrsattr r)   e/home/test-dt/pcm-url-check/venv/lib/python3.10/site-packages/pip/_vendor/html5lib/treewalkers/dom.pygetNodeDetails	   s&   
zTreeWalker.getNodeDetailsc                 C      |j S r	   )
firstChildr%   r&   r)   r)   r*   getFirstChild$      zTreeWalker.getFirstChildc                 C   r,   r	   )nextSiblingr.   r)   r)   r*   getNextSibling'   r0   zTreeWalker.getNextSiblingc                 C   r,   r	   )
parentNoder.   r)   r)   r*   getParentNode*   r0   zTreeWalker.getParentNodeN)__name__
__module____qualname__r+   r/   r2   r4   r)   r)   r)   r*   r      s
    r   N)

__future__r   r   r   xml.domr    r   NonRecursiveTreeWalkerr   r)   r)   r)   r*   <module>   s    