Sindbad~EG File Manager
3
B;�W� � @ s� d dl mZmZmZ d dlZd dlmZ d dlmZ yd dl j
jZW n e
k
rd d dlj
jZY nX ddddd d
dgZejd dko�ejd
dkZyed�Zeee�s�ed�ZW n dZY nX dZG dd� 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$ e Zd ZdZf fdd�Zdd� ZdS )r ap Dict 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.
c C sj g }xN|D ]F\}}t |ttttf�rBx*|D ]}|j||f� q*W q
|j||f� q
W tj| |� d | _d S )N) �
isinstance�list�tuple� frozenset�set�append�dict�__init__�default)�self�itemsZ_dictEntries�name�value�item� r �/usr/lib/python3.6/_utils.pyr 4 s
zMethodDispatcher.__init__c C s t j| || j�S )N)r �getr )r �keyr r r �__getitem__C s zMethodDispatcher.__getitem__N)�__name__�
__module__�__qualname__�__doc__r r# r r r r r '