Viewing File: /usr/lib/python3.6/site-packages/pip/_vendor/html5lib/_trie/__pycache__/py.cpython-36.pyc

3

�Pf��@sLddlmZmZmZddlmZddlmZddlm	Z
Gdd�de
�Z	dS)	�)�absolute_import�division�unicode_literals)�	text_type)�bisect_left�)�Triec@sFeZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zddd
�Zdd�Z	dS)rcCsJtdd�|j�D��std��||_t|j��|_d|_dt|�f|_dS)Ncss|]}t|t�VqdS)N)�
isinstancer)�.0�x�r�/usr/lib/python3.6/py.py�	<genexpr>sz Trie.__init__.<locals>.<genexpr>zAll keys must be strings�r)	�all�keys�	TypeError�_data�sorted�_keys�	_cachestr�len�_cachepoints)�self�datarrr
�__init__
sz
Trie.__init__cCs
||jkS)N)r)r�keyrrr
�__contains__szTrie.__contains__cCs
t|j�S)N)rr)rrrr
�__len__szTrie.__len__cCs
t|j�S)N)�iterr)rrrr
�__iter__sz
Trie.__iter__cCs
|j|S)N)r)rrrrr
�__getitem__szTrie.__getitem__NcCs�|dks|dks|jr"t|j�S|j|j�rN|j\}}t|j|||�}}nt|j|�}}t�}|t|j�krv|Sx,|j|j|�r�|j|j|�|d7}qxW||_||f|_|S)Nrr)r�set�
startswithrrrr�add)r�prefix�lo�hi�start�irrrr
rs


z	Trie.keyscCsd||jkrdS|j|j�r6|j\}}t|j|||�}nt|j|�}|t|j�krTdS|j|j|�S)NTF)rr#rrrrr)rr%r&r'r)rrr
�has_keys_with_prefix6s

zTrie.has_keys_with_prefix)N)
�__name__�
__module__�__qualname__rrrr r!rr*rrrr
r	s	
rN)Z
__future__rrrZpip._vendor.sixrZbisectrZ_baserZABCTrierrrr
�<module>s
Back to Directory File Manager
<