o
    ÿ%ße…  ã                   @   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)   úK/var/www/html/venv/lib/python3.10/site-packages/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    