Edit File: __init__.pyc
� ��abc�����������@`�s����d��Z��d�d�l�m�Z�m�Z�m�Z�d�d�l�m�Z�d�d�l�m�Z�d�d�d�d �d �d�g�Z �i��Z �d�d���Z�d ����Z �d����Z�d�S(���u���A collection of modules for iterating through different kinds of tree, generating tokens identical to those produced by the tokenizer module. To create a tree walker for a new type of tree, you need to do implement a tree walker object (called TreeWalker by convention) that implements a 'serialize' method taking a tree as sole argument and returning an iterator generating tokens. i����(���t���absolute_importt���divisiont���unicode_literalsi���(���t ���constants(���t ���default_etreeu ���getTreeWalkeru���pprintu���domu���etreeu���genshiu ���etree_lxmlc���������K`�s����|��j�����}��|��t�k�r��|��d�k�rD�d�d�l�m�}�|�j�t�|��<q��|��d�k�rp�d�d�l�m�}�|�j�t�|��<q��|��d�k�r��d�d�l�m�}�|�j�t�|��<q��|��d�k�r��d�d �l�m�}�|�d �k�r��t �}�n��|�j �|�|���j�Sn��t�j�|����S(���u���Get a TreeWalker class for various types of tree with built-in support Args: treeType (str): the name of the tree type required (case-insensitive). Supported values are: - "dom": The xml.dom.minidom DOM implementation - "etree": A generic walker for tree implementations exposing an elementtree-like interface (known to work with ElementTree, cElementTree and lxml.etree). - "lxml": Optimized walker for lxml.etree - "genshi": a Genshi stream Implementation: A module implementing the tree type e.g. xml.etree.ElementTree or cElementTree (Currently applies to the "etree" tree type only). u���domi���(���t���domu���genshi(���t���genshiu���lxml(���t ���etree_lxmlu���etree(���t���etreeN(���t���lowert���treeWalkerCachet����R���t ���TreeWalkerR���R���R���t���NoneR���t���getETreeModulet���get(���t���treeTypet���implementationt���kwargsR���R���R���R���(����(����sM���/usr/lib/python2.7/site-packages/pip/_vendor/html5lib/treewalkers/__init__.pyt ���getTreeWalker���s"���� c���������c`�s����g��}�xh�|��D]`�}�|�d�}�|�d�k�r=�|�j��|�d���q �|�rh�i�d�d�6d�j�|���d�6Vg��}�n��|�Vq �W|�r��i�d�d�6d�j�|���d�6Vn��d��S(���Nu���typeu ���Charactersu���SpaceCharactersu���datau����(���u ���Charactersu���SpaceCharacters(���t���appendt���join(���t���tokenst���pendingCharacterst���tokent���type(����(����sM���/usr/lib/python2.7/site-packages/pip/_vendor/html5lib/treewalkers/__init__.pyt���concatenateCharacterTokens<���s���� c���������C`�s��g��}�d�}�x�t��|����D]�}�|�d�}�|�d�k�r~|�d�r��|�d�t�j�d�k�r��|�d�t�j�k�r}�t�j�|�d�}�n �|�d�}�d�|�|�d�f�}�n �|�d�}�|�j�d �d �|�|�f���|�d�7}�|�d�}�x��t�|�j������D]t�\�\�}�} �} �|�r:|�t�j�k�r!t�j�|�}�n�|�}�d�|�| �f�}�n�| �}�|�j�d �d �|�|�| �f���q��W|�d�k�r�|�d�8}�q�q�|�d�k�r�|�d�8}�q�|�d�k�r�|�j�d�d �|�|�d�f���q�|�d�k�r�|�d�rz|�d�r%|�j�d�d �|�|�d�|�d�|�d�r|�d�n�d�f���q�|�d�rX|�j�d�d �|�|�d�|�d�f���q�|�j�d�d �|�|�d�f���q�|�j�d�d �|�f���q�|�d�k�r�|�j�d�d �|�|�d�f���q�|�d�k�r�t�s�t�d�����q�t �d�|�����q�Wd�j �|���S( ���u���Pretty printer for tree walkersi����u���typeu���StartTagu���EmptyTagu ���namespaceu���htmlu���%s %su���nameu���%s<%s>u��� i���u���datau ���%s%s="%s"u���EndTagu���Commentu ���%s<!-- %s -->u���Doctypeu���publicIdu���%s<!DOCTYPE %s "%s" "%s">u���systemIdu����u���%s<!DOCTYPE %s "" "%s">u���%s<!DOCTYPE %s>u ���%s<!DOCTYPE >u ���Charactersu���%s"%s"u���SpaceCharactersuB���concatenateCharacterTokens should have got rid of all Space tokensu���Unknown token type, %su��� (���u���StartTagu���EmptyTag(���R���R���t ���namespacest���prefixesR���t���sortedt���itemst���Falset���AssertionErrort ���ValueErrorR���(���t���walkert���outputt���indentR���R���t���nst���namet���attrst ���namespacet ���localnamet���value(����(����sM���/usr/lib/python2.7/site-packages/pip/_vendor/html5lib/treewalkers/__init__.pyt���pprintK���sd���� ! %" " " "N(���t���__doc__t ���__future__R����R���R���R���R���t���_utilsR���t���__all__R ���R ���R���R���R+���(����(����(����sM���/usr/lib/python2.7/site-packages/pip/_vendor/html5lib/treewalkers/__init__.pyt���<module> ���s���'