Current File : //lib/python2.7/site-packages/pip/_vendor/html5lib/treewalkers/__init__.pyc |
�
r2Wc @` s� d Z d d l m Z m Z m Z d d d d d d d g Z d d
l Z d d l m Z d d
l m
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_literalsu
getTreeWalkeru pprintu domu etreeu genshistreamu lxmletreeu pulldomNi ( t constants( t
default_etreec K` s | j � } | t k r� | d k r[ d t | f } t | � t j | } | j t | <q� | d k r� 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(
u6 Get a TreeWalker class for various types of tree with built-in support
treeType - the name of the tree type required (case-insensitive). Supported
values are:
"dom" - The xml.dom.minidom DOM implementation
"pulldom" - The xml.dom.pulldom event stream
"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 - (Currently applies to the "etree" tree type only). A module
implementing the tree type e.g. xml.etree.ElementTree or
cElementTree.u domu pulldomu %s.%su genshii ( t genshistreamu lxml( t lxmletreeu etree( t etree( u domu pulldomN( t lowert treeWalkerCachet __name__t
__import__t syst modulest
TreeWalkert R R R t NoneR t getETreeModulet get( t treeTypet implementationt kwargst namet modR R R ( ( sM /usr/lib/python2.7/site-packages/pip/_vendor/html5lib/treewalkers/__init__.pyt
getTreeWalker s&