Sindbad~EG File Manager

Current Path : /lib/python3.6/site-packages/html5lib/__pycache__/
Upload File :
Current File : //lib/python3.6/site-packages/html5lib/__pycache__/_utils.cpython-36.pyc

3

B;�W��@s
ddlmZmZmZddlZddlmZddlmZyddl	j
jZWn e
k
rdddlj
jZYnXddddd	d
dgZejddko�ejd
dkZy,ed�Zeee�s�ed�Zeee�s�t�WndZYnXdZGdd�de�Zdd�Zdd�Zdd	�Zdd�ZdS)�)�absolute_import�division�unicode_literalsN)�
ModuleType)�	text_type�
default_etree�MethodDispatcher�isSurrogatePair�surrogatePairToCodepoint�moduleFactoryFactory�supports_lone_surrogates�PY27���z"\uD800"z	u"\uD800"FTc@s$eZdZdZffdd�Zdd�ZdS)rapDict with 2 special properties:

    On initiation, keys that are lists, sets or tuples are converted to
    multiple keys so accessing any one of the items in the original
    list-like object returns the matching value

    md = MethodDispatcher({("foo", "bar"):"baz"})
    md["foo"] == "baz"

    A default value which can be set through the default attribute.
    cCs~g}xN|D]F\}}t|ttttf�rBx*|D]}|j||f�q*Wq
|j||f�q
Wtj||�t|�t|�kstt	�d|_
dS)N)�
isinstance�list�tuple�	frozenset�set�append�dict�__init__�len�AssertionError�default)�self�itemsZ_dictEntries�name�value�item�r!�/usr/lib/python3.6/_utils.pyr4s
zMethodDispatcher.__init__cCstj|||j�S)N)r�getr)r�keyr!r!r"�__getitem__CszMethodDispatcher.__getitem__N)�__name__�
__module__�__qualname__�__doc__rr%r!r!r!r"r'scCsLt|�dkoJt|d�dkoJt|d�dkoJt|d�dkoJt|d�dkS)Nrri�i��ri�i��)r�ord)�datar!r!r"r	Js cCs,dt|d�ddt|d�d}|S)Niri�iri�)r*)r+Zchar_valr!r!r"r
Pscsi���fdd�}|S)Ncs�ttjtd��rd|j}n
d|j}t|j��}y�|||Stk
r�t|�}�|f|�|�}|jj|�d�kr�i�|<d�|kr�i�||<d�||kr�i�|||<|�|||<|SXdS)N�z_%s_factorys_%s_factoryr�args�kwargs)	rrr&�typerr�KeyError�__dict__�update)Z
baseModuler-r.rZkwargs_tuple�modZobjs)�factory�moduleCacher!r"�
moduleFactory\s$
z+moduleFactoryFactory.<locals>.moduleFactoryr!)r4r6r!)r4r5r"rYscsi���fdd�}|S)Ncs2t|�t|j��f}|�kr*�||��|<�|S)N)rr)r-r.r$)�cache�funcr!r"�wrappedyszmemoize.<locals>.wrappedr!)r8r9r!)r7r8r"�memoizevsr:)Z
__future__rrr�sys�typesrZsixrZxml.etree.cElementTreeZetreeZcElementTreer�ImportErrorZxml.etree.ElementTreeZElementTree�__all__�version_infor
�evalZ_xrrrrrr	r
rr:r!r!r!r"�<module>s0

#	

Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists