%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/
Upload File :
Create Path :
Current File : //opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyo

�
��4]c@@s�dZddlmZddlZddlZddlZddlmZddlmZddlm	Z	ddlm
Z
dd	lmZdd
lmZe
�Zdefd��YZd
efd��YZdefd��YZdefd��YZdeefd��YZdefd��YZdefd��YZdeefd��YZdefd��YZdefd��YZdefd ��YZd!efd"��YZd#efd$��YZd%efd&��YZ eZ!eZ"eZ#e Z$e ej%�Z&e d'��Z'dd(�Z)d)efd*��YZ*d+�Z+dd,�Z,d-�Z-d.�Z.d/�Z/dd0�Z0d1�Z1d2efd3��YZ2e2d4�Z3d5�Z4d6efd7��YZ5d8e5fd9��YZ6d:�Z7d;�Z8dS(<sCollection classes and helpers.i(tabsolute_importNi(tbinary_types(tcollections_abc(titertools_filterfalse(tpy2k(tstring_types(t	threadingtAbstractKeyedTuplecB@seZdZd�ZRS(cC@s
t|j�S(s�Return a list of string key names for this :class:`.KeyedTuple`.

        .. seealso::

            :attr:`.KeyedTuple._fields`

        (tlistt_fields(tself((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pytkeyss	((t__name__t
__module__t	__slots__R(((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyRst
KeyedTuplecB@s;eZdZdd�Zed��Zd�Zd�ZRS(s``tuple`` subclass that adds labeled names.

    E.g.::

        >>> k = KeyedTuple([1, 2, 3], labels=["one", "two", "three"])
        >>> k.one
        1
        >>> k.two
        2

    Result rows returned by :class:`.Query` that contain multiple
    ORM entities and/or column expressions make use of this
    class to return rows.

    The :class:`.KeyedTuple` exhibits similar behavior to the
    ``collections.namedtuple()`` construct provided in the Python
    standard library, however is architected very differently.
    Unlike ``collections.namedtuple()``, :class:`.KeyedTuple` is
    does not rely on creation of custom subtypes in order to represent
    a new series of keys, instead each :class:`.KeyedTuple` instance
    receives its list of keys in place.   The subtype approach
    of ``collections.namedtuple()`` introduces significant complexity
    and performance overhead, which is not necessary for the
    :class:`.Query` object's use case.

    .. seealso::

        :ref:`ormtutorial_querying`

    cC@sKtj||�}|r4|jjt||��ng}||jd<|S(Nt_labels(ttuplet__new__t__dict__tupdatetzip(tclstvalstlabelstt((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyRJs
cC@s,tg|jD]}|dk	r
|^q
�S(s�Return a tuple of string key names for this :class:`.KeyedTuple`.

        This method provides compatibility with ``collections.namedtuple()``.

        .. seealso::

            :meth:`.KeyedTuple.keys`

        N(RRtNone(R
tl((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR	SscC@std|��dS(NsCan't set attribute: %s(tAttributeError(R
tkeytvalue((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyt__setattr__`sc@s�fd��j�D�S(s�Return the contents of this :class:`.KeyedTuple` as a dictionary.

        This method provides compatibility with ``collections.namedtuple()``,
        with the exception that the dictionary returned is **not** ordered.

        c@s i|]}�j||�qS((R(t.0R(R
(sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pys
<dictcomp>js	(R(R
((R
sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyt_asdictcsN(	RR
t__doc__RRtpropertyR	RR!(((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR*s
	
	t_LWcB@s)eZdZd�Zd�Zd�ZRS(cC@stj||�S(N(RR(RR((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyRpscC@stt|�|jffS(N(RRt_real_fields(R
((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyt
__reduce__sscC@s,tt|j|��}|jdd�|S(sAReturn the contents of this :class:`.KeyedTuple` as a dictionary.N(tdictRR%tpopR(R
td((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR!ys((RR
RRR&R!(((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR$ms		tImmutableContainercB@seZd�ZeZZZRS(cO@std|jj��dS(Ns%s object is immutable(t	TypeErrort	__class__R(R
targtkw((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyt
_immutable�s(RR
R/t__delitem__t__setitem__R(((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR*�s	t
immutabledictcB@sNeZejZZZZZd�Z	d�Z
d�Zd�Zd�Z
RS(cG@s#tj|�}tj||�|S(N(R'Rt__init__(Rtargstnew((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR�scG@sdS(N((R
R4((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR3�scC@stt|�ffS(N(R2R'(R
((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR&�scC@sT|s
|S|s0t|t�r#|St|�Sn t|�}tj||�|SdS(N(t
isinstanceR2R'R(R
R)td2((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pytunion�s
cC@sdtj|�S(Nsimmutabledict(%s)(R't__repr__(R
((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR9�s(RR
R*R/tclearR(tpopitemt
setdefaultRRR3R&R8R9(((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR2�s				
t
PropertiescB@s�eZdZdZd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Zd
�Zd�Zd�Zd�Zdd�Zd�Zd�Zd�Zd�Zd�ZRS(s8Provide a __getattr__/__setattr__ interface over a dict.t_datacC@stj|d|�dS(NR>(tobjectR(R
tdata((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR3�scC@s
t|j�S(N(tlenR>(R
((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyt__len__�scC@stt|jj���S(N(titerRR>tvalues(R
((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyt__iter__�scC@s9ttt|��g|jj�D]}t|�^q"S(N(tdirtsuperR=R>Rtstr(R
tk((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyt__dir__�scC@st|�t|�S(N(R(R
tother((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyt__add__�scC@s||j|<dS(N(R>(R
Rtobj((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR1�scC@s|j|S(N(R>(R
R((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyt__getitem__�scC@s|j|=dS(N(R>(R
R((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR0�scC@s||j|<dS(N(R>(R
RRM((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR�scC@si|jd6S(NR>(R>(R
((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyt__getstate__�scC@stj|d|d�dS(NR>(R?R(R
tstate((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyt__setstate__�scC@s3y|j|SWntk
r.t|��nXdS(N(R>tKeyErrorR(R
R((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyt__getattr__�s
cC@s
||jkS(N(R>(R
R((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyt__contains__�scC@s
t|j�S(s8Return an immutable proxy for this :class:`.Properties`.(tImmutablePropertiesR>(R
((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pytas_immutable�scC@s|jj|�dS(N(R>R(R
R((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR�scC@s||kr||S|SdS(N((R
Rtdefault((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pytget�scC@s
t|j�S(N(RR>(R
((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR�scC@st|jj��S(N(RR>RD(R
((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyRD�scC@st|jj��S(N(RR>titems(R
((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyRY�scC@s
||jkS(N(R>(R
R((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pythas_key�scC@s|jj�dS(N(R>R:(R
((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR:�s(R>N(RR
R"RR3RBRERJRLR1RNR0RRORQRSRTRVRRRXRRDRYRZR:(((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR=�s.																			tOrderedPropertiescB@seZdZdZd�ZRS(sUProvide a __getattr__/__setattr__ interface with an OrderedDict
    as backing store.cC@stj|t��dS(N(R=R3tOrderedDict(R
((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR3�s((RR
R"RR3(((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR[�sRUcB@seZdZdZRS(sDProvide immutable dict/object attribute to an underlying dictionary.((RR
R"R(((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyRUsR\cB@s�eZdZdZd�Zdd�Zd�Zd�Zd�Z	d�Z
dd�Zd	�Zd
�Z
d�Zd�Zd
�Zer�d�Zd�Zd�Znd�Zd�Zd�Zd�ZRS(sCA dict that returns keys/values/items in the order they were added.t_listcC@st|j�ffS(N(R\RY(R
((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR&scK@sBg|_|dkr.|r>|j|�q>n|j||�dS(N(R]RR(R
t_OrderedDict____sequencetkwargs((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR3s
	cC@sg|_tj|�dS(N(R]R'R:(R
((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR:s	cC@s
|j�S(N(t__copy__(R
((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pytcopyscC@s
t|�S(N(R\(R
((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR`scO@s|jj||�dS(N(R]tsort(R
R-R.((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyRb!scK@s�|dk	rmt|d�rIxL|j�D]}|j|||�q(Wqmx!|D]\}}|||<qPWn|r�|j|�ndS(NR(RthasattrRR1R(R
R^R_RR((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR$scC@s1||kr |j||�|S|j|�SdS(N(R1RN(R
RR((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR</scC@s
t|j�S(N(RCR](R
((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyRE6scC@s
t|�S(N(R(R
((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR9scC@sg|jD]}||^q
S(N(R](R
R((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyRD<scC@s$g|jD]}|||f^q
S(N(R](R
R((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyRY?scC@st|j��S(N(RCRD(R
((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyt
itervaluesDscC@s
t|�S(N(RC(R
((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pytiterkeysGscC@st|j��S(N(RCRY(R
((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyt	iteritemsJscC@sZ||krCy|jj|�WqCtk
r?|g|_qCXntj|||�dS(N(R]tappendRR'R1(R
RRM((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR1Ms
cC@s$tj||�|jj|�dS(N(R'R0R]tremove(R
R((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR0WscG@s>||k}tj|||�}|r:|jj|�n|S(N(R'R(R]Rh(R
RRWtpresentR((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR([s
cC@s'tj|�}|jj|d�|S(Ni(R'R;R]Rh(R
titem((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR;bs(R]N(RR
R"RR&RR3R:RaR`RbRR<RERRDRYRRdReRfR1R0R(R;(((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR\s,													
		t
OrderedSetcB@s�eZdd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d�Zd	�ZeZ
d
�ZeZd�ZeZd�ZeZd
�ZeZd�ZeZd�ZeZd�ZeZd�ZeZRS(cC@sTtj|�g|_|dk	rGt|�|_tj||j�n	g|_dS(N(tsetR3R]Rtunique_listR(R
R)((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR3is
	cC@s3||kr|jj|�ntj||�dS(N(R]RgRltadd(R
telement((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyRnrscC@s$tj||�|jj|�dS(N(RlRhR](R
Ro((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyRhwscC@s6||kr"|jj||�ntj||�dS(N(R]tinsertRlRn(R
tposRo((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyRp{scC@s3||kr/|jj|�tj||�ndS(N(R]RhRl(R
Ro((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pytdiscard�scC@stj|�g|_dS(N(RlR:R](R
((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR:�s
cC@s|j|S(N(R](R
R((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyRN�scC@s
t|j�S(N(RCR](R
((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyRE�scC@s
|j|�S(N(R8(R
RK((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyRL�scC@sd|jj|jfS(Ns%s(%r)(R,RR](R
((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR9�scC@sDx=|D]5}||kr|jj|�tj||�qqW|S(N(R]RgRlRn(R
titerablete((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR�s

cC@s |j|�}|j|�|S(N(R,R(R
RKtresult((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR8�s
c@s)t���|j�fd�|D��S(Nc3@s!|]}|�kr|VqdS(N((R ta(RK(sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pys	<genexpr>�s(RlR,(R
RK((RKsO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pytintersection�sc@sLt����j�fd��D��}|j�fd��D��|S(Nc3@s!|]}|�kr|VqdS(N((R Rv(RK(sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pys	<genexpr>�sc3@s!|]}|�kr|VqdS(N((R Rv(R
(sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pys	<genexpr>�s(RlR,R(R
RKRu((RKR
sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pytsymmetric_difference�sc@s)t���|j�fd�|D��S(Nc3@s!|]}|�kr|VqdS(N((R Rv(RK(sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pys	<genexpr>�s(RlR,(R
RK((RKsO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyt
difference�scC@sKt|�}tj||�g|jD]}||kr&|^q&|_|S(N(Rltintersection_updateR](R
RKRv((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyRz�s+cC@sptj||�g|jD]}||kr|^q|_|jg|jD]}||krL|^qL7_|S(N(Rltsymmetric_difference_updateR](R
RKRv((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR{�s+1cC@s?tj||�g|jD]}||kr|^q|_|S(N(Rltdifference_updateR](R
RKRv((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR|�s+N(RR
RR3RnRhRpRrR:RNRERLR9t__str__Rt__ior__R8t__or__Rwt__and__Rxt__xor__Ryt__sub__Rzt__iand__R{t__ixor__R|t__isub__(((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyRkhs6																		tIdentitySetcB@sseZdZeZd'd�Zd�Zd�Zd�Z	d�Z
d�Zd�Zd�Z
d	�Zd
�Zd�Zd�Zd
�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Z d�Z!d�Z"d�Z#d�Z$d �Z%d!�Z&d"�Z'e'Z(d#�Z)d$�Z*d%�Z+d&�Z,RS((s�A set that considers only object id() for uniqueness.

    This strategy has edge cases for builtin types- it's possible to have
    two 'foo' strings in one of these sets, for example.  Use sparingly.

    cC@s7t�|_|r3x|D]}|j|�qWndS(N(R't_membersRn(R
Rsto((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR3�s
cC@s||jt|�<dS(N(R�tid(R
R((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyRn�scC@st|�|jkS(N(R�R�(R
R((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyRT�scC@s|jt|�=dS(N(R�R�(R
R((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyRh�scC@s)y|j|�Wntk
r$nXdS(N(RhRR(R
R((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyRr�s
cC@s?y|jj�}|dSWntk
r:td��nXdS(Nispop from an empty set(R�R;RR(R
tpair((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR(�s

cC@s|jj�dS(N(R�R:(R
((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR:�scC@std��dS(Nscannot compare sets using cmp()(R+(R
RK((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyt__cmp__�scC@s't|t�r|j|jkStSdS(N(R6R�R�tFalse(R
RK((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyt__eq__�scC@s't|t�r|j|jkStSdS(N(R6R�R�tTrue(R
RK((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyt__ne__scC@sbt|�|�}t|�t|�kr.tSx-t|jjt|jj���D]}tSWtS(N(	ttypeRAR�RR�RTRCRR�(R
RsRKtm((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pytissubsets%cC@s t|t�stS|j|�S(N(R6R�tNotImplementedR�(R
RK((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyt__le__scC@s8t|t�stSt|�t|�ko7|j|�S(N(R6R�R�RAR�(R
RK((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyt__lt__scC@sbt|�|�}t|�t|�kr.tSx-t|jjt|jj���D]}tSWtS(N(	R�RAR�RR�RTRCRR�(R
RsRKR�((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyt
issuperset s%cC@s t|t�stS|j|�S(N(R6R�R�R�(R
RK((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyt__ge__,scC@s8t|t�stSt|�t|�ko7|j|�S(N(R6R�R�RAR�(R
RK((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyt__gt__1scC@sMt|��}|j�}t|�}|jj|j|�j|��|S(N(R�t_member_id_tuplest_iter_idR�Rt_working_setR8(R
RsRutmembersRK((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR86s
"cC@s t|t�stS|j|�S(N(R6R�R�R8(R
RK((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR>scC@s|j|�j|_dS(N(R8R�(R
Rs((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyRCscC@s$t|t�stS|j|�|S(N(R6R�R�R(R
RK((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR~Fs
cC@sMt|��}|j�}t|�}|jj|j|�j|��|S(N(R�R�R�R�RR�Ry(R
RsRuR�RK((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyRyLs
"cC@s t|t�stS|j|�S(N(R6R�R�Ry(R
RK((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR�TscC@s|j|�j|_dS(N(RyR�(R
Rs((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR|YscC@s$t|t�stS|j|�|S(N(R6R�R�R|(R
RK((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR�\s
cC@sMt|��}|j�}t|�}|jj|j|�j|��|S(N(R�R�R�R�RR�Rw(R
RsRuR�RK((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyRwbs
"cC@s t|t�stS|j|�S(N(R6R�R�Rw(R
RK((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR�jscC@s|j|�j|_dS(N(RwR�(R
Rs((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyRzoscC@s$t|t�stS|j|�|S(N(R6R�R�Rz(R
RK((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR�rs
cC@sMt|��}|j�}t|�}|jj|j|�j|��|S(N(R�R�R�R�RR�Rx(R
RsRuR�RK((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyRxxs	cC@sd�|jj�D�S(Ncs@s!|]}t|�|fVqdS(N(R�(R tv((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pys	<genexpr>�s(R�RD(R
((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR��scC@s t|t�stS|j|�S(N(R6R�R�Rx(R
RK((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR��scC@s|j|�j|_dS(N(RxR�(R
Rs((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR{�scC@s$t|t�stS|j|�|S(N(R6R�R�Rx(R
RK((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR��s
cC@st|�t|jj���S(N(R�RCR�RD(R
((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyRa�scC@s
t|j�S(N(RAR�(R
((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyRB�scC@st|jj��S(N(RCR�RD(R
((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyRE�scC@std��dS(Nsset objects are unhashable(R+(R
((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyt__hash__�scC@s&dt|�jt|jj��fS(Ns%s(%r)(R�RRR�RD(R
((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR9�sN(-RR
R"RlR�RR3RnRTRhRrR(R:R�R�R�R�R�R�R�R�R�R8RRR~RyR�R|R�RwR�RzR�RxR�R�R{R�RaR`RBRER�R9(((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR��sR																												
								tWeakSequencecB@sAeZdd�Zd�Zd�Zd�Zd�Zd�ZRS(cC@s/g|D]}tj||j�^q|_dS(N(tweakreftreft_removet_storage(R
t_WeakSequence__elementsRo((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR3�scC@s#|jjtj||j��dS(N(R�RgR�R�R�(R
Rj((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyRg�scC@s|jj|�dS(N(R�Rh(R
R�((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR��scC@s
t|j�S(N(RAR�(R
((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyRB�scC@sd�d�|jD�D�S(Ncs@s!|]}|dk	r|VqdS(N(R(R RM((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pys	<genexpr>�scs@s|]}|�VqdS(N((R R�((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pys	<genexpr>�s(R�(R
((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyRE�scC@s@y|j|}Wn!tk
r4td|��nX|�SdS(NsIndex %s out of range(R�RRt
IndexError(R
tindexRM((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyRN�s

((RR
R3RgR�RBRERN(((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR��s				tOrderedIdentitySetcB@s*eZdefd��YZdd�ZRS(R�cB@seZeZRS((RR
R�t__sa_hash_exempt__(((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR��scC@sDtj|�t�|_|r@x|D]}|j|�q&WndS(N(R�R3R\R�Rn(R
RsR�((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR3�s


N(RR
RkR�RR3(((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR��stPopulateDictcB@s eZdZd�Zd�ZRS(s�A dict which populates missing values via a creation function.

    Note the creation function takes a key, unlike
    collections.defaultdict.

    cC@s
||_dS(N(tcreator(R
R�((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR3�scC@s|j|�||<}|S(N(R�(R
Rtval((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyt__missing__�s(RR
R"R3R�(((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR��s	cC@sttj|��S(N(R#toperatort
itemgetter(tidx((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyt<lambda>�tcC@s�t�}|j}|sHg|D]%}||kr||�r|^qSg|D]1}||�|krO|||��rO|^qOSdS(N(RlRn(tseqthashfunctseentseen_addtx((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyRm�s		0
tUniqueAppendercB@s,eZdZdd�Zd�Zd�ZRS(s�Appends items to a collection ensuring uniqueness.

    Additional appends() of the same object are ignored.  Membership is
    determined by identity (``is a``) not equality (``==``).
    cC@sm||_i|_|r-t||�|_n<t|d�rK|j|_nt|d�ri|j|_ndS(NRgRn(R@t_uniquetgetattrt_data_appenderRcRgRn(R
R@tvia((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR3s		cC@s<t|�}||jkr8|j|�t|j|<ndS(N(R�R�R�R�(R
Rjtid_((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyRgs
cC@s
t|j�S(N(RCR@(R
((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyREsN(RR
R"RR3RgRE(((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR�s
	cC@s>t|�dkr6t|dtj�r6t|d�S|SdS(Nii(RAR6ttypest
GeneratorTypeR(R-((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pytcoerce_generator_args(cC@s^|dkr|St|tj�s6t|tt�r=|gSt|t�rP|St|�SdS(N(RR6RtIterableRRR(R�RW((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pytto_list"scC@s/t|jg|D]}|jr|^q��S(s�return True if any items of set\_ are present in iterable.

    Goes through special effort to ensure __hash__ is not called
    on items in iterable that don't support it.

    (tboolRwR�(tset_Rsti((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pythas_intersection/scC@s:|dkrt�St|t�s2tt|��S|SdS(N(RRlR6R�(R�((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pytto_set:s
cC@s:|dkrt�St|t�s2tt|��S|SdS(N(Rt
column_setR6R�(R�((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyt
to_column_setCs
cK@s3|j�}|r"|j|�n|j|�|S(s5Copy the given dict and update with the given values.(RaR(R)t_newR.((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pytupdate_copyLs

cc@sXxQ|D]I}t|t�rKt|d�rKx!t|�D]}|Vq9Wq|VqWdS(s�Given an iterator of which further sub-elements may also be
    iterators, flatten the sub-elements into a single iterator.

    REN(R6RHRctflatten_iterator(R�telemty((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR�Vs

tLRUCachecB@sweZdZdZdddd�Zd	�Zdd
�Zd�Zd�Z	d
�Z
d�Zed��Z
d�ZRS(s�Dictionary with 'squishy' removal of least
    recently used items.

    Note that either get() or [] should be used here, but
    generally its not safe to do an "in" check first as the dictionary
    can change subsequent to that call.

    tcapacityt	thresholdt
size_alertt_countert_mutexidg�?cC@s7||_||_||_d|_tj�|_dS(Ni(R�R�R�R�RtLockR�(R
R�R�R�((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR3os
				cC@s|jd7_|jS(Ni(R�(R
((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyt_inc_countervscC@sAtj|||�}||k	r9|j�|d<|dS|SdS(Nii(R'RXR�(R
RRWRj((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyRXzs
cC@s*tj||�}|j�|d<|dS(Nii(R'RNR�(R
RRj((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyRN�scC@s$gtj|�D]}|d^qS(Ni(R'RD(R
R�((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyRD�scC@s&||kr||S|||<|SdS(N((R
RR((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR<�s
cC@satj||�}|dkrI|||j�g}tj|||�n
||d<|j�dS(Ni(R'RXRR�R1t_manage_size(R
RRRj((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR1�s
cC@s|j|j|jS(N(R�R�(R
((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pytsize_threshold�scC@s�|jjt�sdSz�t|j�}x�t|�|j|j|jkr�|rjt}|j|�ntt	j
|�dtjd�dt
�}x;||jD],}y||d=Wq�tk
r�q�q�Xq�Wq+WWd|jj�XdS(NRitreversei(R�tacquireR�R�R�RAR�R�tsortedR'RDR�R�R�RRtrelease(R
R�t
by_counterRj((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR��s &'
(R�R�R�R�R�N(RR
R"RRR3R�RXRNRDR<R1R#R�R�(((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR�cs						idc	C@s�|ft|�}tj|�}|r,|St|tftgt|�D](\}}|dk	rH|t|f^qHddfg��}||_	tg|D]}|dk	r�|^q��|_
|t|<|S(NR((Rt
_lw_tuplesRXR�R$R't	enumerateRt_property_gettersR%R	(tnametfieldsthash_ttp_clsR�tfieldtf((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pytlightweight_named_tuple�s 	.
tScopedRegistrycB@s;eZdZd�Zd�Zd�Zd�Zd�ZRS(s�A Registry that can store one or multiple instances of a single
    class on the basis of a "scope" function.

    The object implements ``__call__`` as the "getter", so by
    calling ``myregistry()`` the contained object is returned
    for the current scope.

    :param createfunc:
      a callable that returns a new object to be placed in the registry

    :param scopefunc:
      a callable that will return a key to store/retrieve an object.
    cC@s||_||_i|_dS(sVConstruct a new :class:`.ScopedRegistry`.

        :param createfunc:  A creation function that will generate
          a new value for the current scope, if none is present.

        :param scopefunc:  A function that returns a hashable
          token representing the current scope (such as, current
          thread identifier).

        N(t
createfunct	scopefunctregistry(R
R�R�((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR3�s		cC@sI|j�}y|j|SWn'tk
rD|jj||j��SXdS(N(R�R�RRR<R�(R
R((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyt__call__�s

cC@s|j�|jkS(s9Return True if an object is present in the current scope.(R�R�(R
((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pythas�scC@s||j|j�<dS(s$Set the value for the current scope.N(R�R�(R
RM((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyRl�scC@s,y|j|j�=Wntk
r'nXdS(s Clear the current scope, if any.N(R�R�RR(R
((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR:s
(RR
R"R3R�R�RlR:(((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR��s
				tThreadLocalRegistrycB@s;eZdZd�Zd�Zd�Zd�Zd�ZRS(s\A :class:`.ScopedRegistry` that uses a ``threading.local()``
    variable for storage.

    cC@s||_tj�|_dS(N(R�RtlocalR�(R
R�((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR3s	cC@s=y|jjSWn(tk
r8|j�}|j_|SXdS(N(R�RRR�(R
R�((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR�s

cC@st|jd�S(NR(RcR�(R
((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR�scC@s||j_dS(N(R�R(R
RM((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyRlscC@s%y
|j`Wntk
r nXdS(N(R�RR(R
((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR: s

(RR
R"R3R�R�RlR:(((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR�	s				cc@s&x|D]}t|�|fVqWdS(s*Generator: ((id(o), o) for o in iterable).N(R�(RsRj((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyR�'s
cC@sDd}x7|D]/}||kr
|d7}|dkr<tSq
q
WtS(srGiven a sequence and search object, return True if there's more
    than one, False if zero or one of them.


    ii(R�R�(tsequencettargettcRj((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyt	has_dupes.s


(9R"t
__future__RR�R�R�tcompatRRRRRRt	frozensett	EMPTY_SETRRRR$R?R*R'R2R=R[RUR\RlRkR�R�R�R�R�tcolumn_dicttordered_column_settpopulate_column_dictR�t_gettersR�RRmR�R�R�R�R�R�R�R�R�R�R�R�R�R�R�(((sO/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/util/_collections.pyt<module>s`	C O
ak�
	
					
	
Q	8	

Zerion Mini Shell 1.0