o
    ºj…  ã                   @   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)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   ú^C:\Users\bbmin\dev\vps-for-web\.venv\Lib\site-packages\pip/_vendor/html5lib/treewalkers/dom.pyÚgetNodeDetails	   s&   
ÿzTreeWalker.getNodeDetailsc                 C   ó   |j S r	   )Z
firstChild©r   r   r   r   r   ÚgetFirstChild$   ó   zTreeWalker.getFirstChildc                 C   r   r	   )ZnextSiblingr   r   r   r   ÚgetNextSibling'   r   zTreeWalker.getNextSiblingc                 C   r   r	   )Z
parentNoder   r   r   r   ÚgetParentNode*   r   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    