Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
idna / lib / python2.7 / site-packages / sqlalchemy / orm / descriptor_props.pyc
Size: Mime:
ó
‹EYc@sNdZddlmZmZddlmZddlmZddlmZmZm	Z
mZmZddlm
Z
ddlmZdd	lmZd
efd„ƒYZejjdƒd
efd„ƒYƒZejjdƒdefd„ƒYƒZejjdƒdefd„ƒYƒZejjdƒdefd„ƒYƒZdS(sŸDescriptor properties are more "auxiliary" properties
that exist as configurational elements, but don't participate
as actively in the load/persist ORM loop.

i(tMapperPropertytPropComparator(t	_none_set(t
attributesi(tutiltsqltexcteventtschema(t
expression(t
properties(tquerytDescriptorPropertycBseZdZdZd„ZRS(sS:class:`.MapperProperty` which proxies access to a
        user-defined descriptor.c	s8ˆ‰dtf‡fd†ƒY}ˆjdkrgtˆjˆjdƒ}ˆj|ƒrg|ˆ_qgnˆjdkrćfd†}‡fd†}‡fd†}td|d|d|ƒˆ_ntj	ˆjƒˆj
jˆjˆj‡‡fd	†d
ˆjdˆƒ}|ˆjƒ|_ˆj
jˆj|ƒdS(Nt
_ProxyImplcsJeZeZeZeZd„ZeˆdƒrHe	j
‡fd†ZnRS(cSs
||_dS(N(tkey(tselfR((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/descriptor_props.pyt__init__%stget_historycsˆj|||ƒS(N(R(Rtstatetdict_tpassive(tprop(sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/descriptor_props.pyR)s(t__name__t
__module__tFalsetaccepts_scalar_loadertTruetexpire_missingt
collectionRthasattrRtPASSIVE_OFFR((R(sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/descriptor_props.pyR
 s	cst|ˆj|ƒdS(N(tsetattrtname(tobjtvalue(R(sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/descriptor_props.pytfset3scst|ˆjƒdS(N(tdelattrR (R!(R(sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/descriptor_props.pytfdel6scst|ˆjƒS(N(tgetattrR (R!(R(sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/descriptor_props.pytfget9sR'R#R%cs
ˆjˆƒS(N(t_comparator_factory((tmapperR(sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/descriptor_props.pyt<lambda>Gstdoctoriginal_property(tobjectt
descriptortNoneR&tclass_Rt_is_userland_descriptortpropertyRtcreate_proxied_attributetparentR+timplt
class_managertinstrument_attribute(RR)R
tdescR#R%R't
proxy_attr((R)RRsT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/descriptor_props.pytinstrument_classs0
				N(RRt__doc__R/R+R:(((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/descriptor_props.pyRsssqlalchemy.orm.propertiestCompositePropertycBsÙeZdZd„Zd„Zd„Zd„Zejd„ƒZ	ejd„ƒZ
ed„ƒZd„Z
d	„Zejd
„ƒZejd„Zd„Zd
ejfd„ƒYZdefd„ƒYZd„ZRS(söDefines a "composite" mapped attribute, representing a collection
    of columns as one attribute.

    :class:`.CompositeProperty` is constructed using the :func:`.composite`
    function.

    .. seealso::

        :ref:`mapper_composite`

    cOs»tt|ƒjƒ||_||_|jdtƒ|_|jdtƒ|_|jddƒ|_
|jd|jj
ƒ|_d|kr |jdƒ|_ntj|ƒ|jƒdS(s©Return a composite column-based property for use with a Mapper.

        See the mapping documentation section :ref:`mapper_composite` for a
        full usage example.

        The :class:`.MapperProperty` returned by :func:`.composite`
        is the :class:`.CompositeProperty`.

        :param class\_:
          The "composite type" class.

        :param \*cols:
          List of Column objects to be mapped.

        :param active_history=False:
          When ``True``, indicates that the "previous" value for a
          scalar attribute should be loaded when replaced, if not
          already loaded.  See the same flag on :func:`.column_property`.

          .. versionchanged:: 0.7
              This flag specifically becomes meaningful
              - previously it was a placeholder.

        :param group:
          A group name for this property when marked as deferred.

        :param deferred:
          When True, the column property is "deferred", meaning that it does
          not load immediately, and is instead loaded when the attribute is
          first accessed on an instance.  See also
          :func:`~sqlalchemy.orm.deferred`.

        :param comparator_factory:  a class which extends
          :class:`.CompositeProperty.Comparator` which provides custom SQL
          clause generation for comparison operations.

        :param doc:
          optional string that will be applied as the doc on the
          class-bound descriptor.

        :param info: Optional data dictionary which will be populated into the
            :attr:`.MapperProperty.info` attribute of this object.

            .. versionadded:: 0.8

        :param extension:
          an :class:`.AttributeExtension` instance,
          or list of extensions, which will be prepended to the list of
          attribute listeners for the resulting descriptor placed on the
          class.  **Deprecated.**  Please see :class:`.AttributeEvents`.

        tactive_historytdeferredtgrouptcomparator_factorytinfoN(tsuperR<Rtattrstcomposite_classtgetRR=R>R/R?tpopt	__class__t
ComparatorR@RARtset_creation_ordert_create_descriptor(RR0RCtkwargs((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/descriptor_props.pyR]s5			
cCs$tt|ƒj|ƒ|jƒdS(N(RBR<R:t_setup_event_handlers(RR)((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/descriptor_props.pyR:¡scCs|jƒdS(sInitialization which occurs after the :class:`.CompositeProperty`
        has been associated with its parent mapper.

        N(t_setup_arguments_on_columns(R((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/descriptor_props.pytdo_init¥scsF‡fd†}‡fd†}‡fd†}t|||ƒˆ_dS(stCreate the Python descriptor that will serve as
        the access point on instances of the mapped class.

        csÎtj|ƒ}tj|ƒ}ˆj|kr»gˆjD]}t||ƒ^q7}ˆj|kr»|jdk	s€tj|ƒr»ˆj	|Œ|ˆj<|j
jj|dˆjgƒq»n|j
ˆjdƒS(N(Rt
instance_dicttinstance_stateRt_attribute_keysR&R/Rt
issupersetRDtmanagertdispatchtrefreshRE(tinstanceRRRtvalues(R(sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/descriptor_props.pyR'²s"%csòtj|ƒ}tj|ƒ}|jˆj}|jˆjtjƒ}x,|jjD]}|||||j	ƒ}qSW||ˆj<|dkrµx]ˆjD]}t||dƒq˜Wn9x6t
ˆj|jƒƒD]\}}t|||ƒqÎWdS(N(RRORPRSRREtNO_VALUERTtsetR5R/RQRtzipt__composite_values__(RVR"RRtattrtprevioustfnR(R(sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/descriptor_props.pyR#Ís
cs‡tj|ƒ}tj|ƒ}|jˆjtjƒ}|jˆj}|jj|||j	ƒx!ˆj
D]}t||dƒqiWdS(N(
RRPRORFRRXRSRTtremoveR5RQRR/(RVRRR]R\R(R(sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/descriptor_props.pyR%ÞsN(R2R.(RR'R#R%((RsT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/descriptor_props.pyRJ¬s	cCs,g|jD]}t|jj|jƒ^q
S(N(tpropsR&R4R0R(RR((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/descriptor_props.pyt_comparable_elementséscCs®g}x¡|jD]–}t|tƒr@|jj|dtƒ}nYt|tjƒre|jj|}n4t|t	j
ƒrƒ|j}ntj
d|fƒ‚|j|ƒqW|S(Nt_configure_mapperss[Composite expects Column objects or mapped attributes/attribute names as arguments, got: %r(RCt
isinstancetstrR4tget_propertyRRtColumnt_columntopropertyRtInstrumentedAttributeR2tsa_exct
ArgumentErrortappend(RR`R\R((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/descriptor_props.pyR`ðs	
cCs,g|jD]}t|tjƒr
|^q
S(N(RCRcRRf(Rta((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/descriptor_props.pytcolumnsscCsixb|jD]W}|j|_|jrU|j|_|jdtfdtfƒ|_n|j|_q
WdS(swPropagate configuration arguments made on this composite
        to the target columns, for those that apply.

        R>t
instrumentN(R`R=R>t_strategy_lookupRtstrategy_classR?(RR((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/descriptor_props.pyRMs		csχfd†}‡fd†}‡fd†}tjˆjd|dtƒtjˆjd|dtƒtjˆjd|dtdtƒtjˆjd	|dtdtƒtjˆjd
|dtdtƒdS(s>Establish events that populate/expire the composite attribute.csw|j}ˆj|krdSx!ˆjD]}||kr&dSq&WˆjgˆjD]}|j|^qPŒ|ˆj<dS(N(tdictRRQRD(RtargsRtkR(R(sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/descriptor_props.pytload_handlers	csA|dks$tˆjƒj|ƒr=|jjˆjdƒndS(N(R/RYRQtintersectionRqRFR(Rtkeys(R(sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/descriptor_props.pytexpire_handler+s$cs|jjˆjdƒdS(sêAfter an insert or update, some columns may be expired due
            to server side defaults, or re-populated due to client side
            defaults.  Pop out the composite value here so that it
            recreates.

            N(RqRFRR/(R)t
connectionR(R(sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/descriptor_props.pytinsert_update_handler/stafter_inserttrawtafter_updatetloadt	propagateRUtexpireN(RtlistenR4R(RRtRwRy((RsT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/descriptor_props.pyRLs


cCsg|jD]}|j^q
S(N(R`R(RR((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/descriptor_props.pyRQFscCsg}g}t}x£|jD]˜}|j}|j|jj||ƒ}	|	jƒr\t}n|	jƒ}
|
r~|j	|
ƒn
|j
dƒ|	jr§|j	|	jƒq|j
dƒqW|rét
j|j|Œgd|j|ŒgƒSt
jd|j|ŒgdƒSdS(s>Provided for userland code that uses attributes.get_history().N((((RR`RRSR5Rthas_changesRtnon_deletedtextendRkR/tdeletedRtHistoryRD(RRRRtaddedR„thas_historyRRthistR‚((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/descriptor_props.pyRLs,		
	cCs|j||ƒS(N(R@(RR)((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/descriptor_props.pyR(nstCompositeBundlecBseZd„Zd„ZRS(cCs,||_ttj|ƒj|j|ŒdS(N(R2RBR<R‰RR(RR2texpr((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/descriptor_props.pyRrs	cs‡‡fd†}|S(Ncs)ˆjjgˆD]}||ƒ^qŒS(N(R2RD(trowtproc(tprocsR(sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/descriptor_props.pyRŒxs	((RRRtlabelsRŒ((RRsT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/descriptor_props.pytcreate_row_processorws(RRRR(((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/descriptor_props.pyR‰qs	RHcBsYeZdZdZed„ƒZd„Zd„Ze	j
d„ƒZd„Zd„Z
RS(s¬Produce boolean, comparison, and other operators for
        :class:`.CompositeProperty` attributes.

        See the example in :ref:`composite_operations` for an overview
        of usage , as well as the documentation for :class:`.PropComparator`.

        See also:

        :class:`.PropComparator`

        :class:`.ColumnOperators`

        :ref:`types_operators`

        :attr:`.TypeEngine.comparator_factory`

        cCs
|jƒS(N(t__clause_element__(R((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/descriptor_props.pytclauses’scCstjdt|jŒS(NR?(R	t
ClauseListRRa(R((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/descriptor_props.pyR–s	cCstj|j|jƒƒS(N(R<R‰RR(R((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/descriptor_props.pyt_query_clause_elementšscCsF|jr8g|jjD]}t|jj|jƒ^qS|jjSdS(N(t_adapt_to_entityRRaR&tentityR(RR((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/descriptor_props.pyRažs	,cCs£|dkr(dgt|jjƒ}n|jƒ}gt|jj|ƒD]\}}||k^qJ}|jr–g|D]}|j|ƒ^qx}ntj	|ŒS(N(
R/tlenRRaR[RZR”tadapterRtand_(RtotherRWRltbtcomparisonstx((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/descriptor_props.pyt__eq__ªs1	%cCstj|j|ƒƒS(N(Rtnot_R(RR™((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/descriptor_props.pyt__ne__·sN(RRR;R/t__hash__R2R‘RR“Rtmemoized_propertyRaRRŸ(((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/descriptor_props.pyRH}s			
cCst|jjjƒd|jS(Nt.(RdR4R0RR(R((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/descriptor_props.pyt__str__ºs(RRR;RR:RNRJRR¡RaR`R2RmRMRLRQRRRR(RtBundleR‰RRHR£(((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/descriptor_props.pyR<Os 	D			=		1"	=tConcreteInheritedPropertycBs eZdZd„Zd„ZRS(s4A 'do nothing' :class:`.MapperProperty` that disables
    an attribute on a concrete subclass that is only present
    on the inherited mapper, not the concrete classes' mapper.

    Cases where this occurs include:

    * When the superclass mapper is mapped against a
      "polymorphic union", which includes all attributes from
      all subclasses.
    * When a relationship() is configured on an inherited mapper,
      but not on the subclass mapper.  Concrete mappers require
      that relationship() is configured explicitly on each
      subclass.

    cCsPd}xC|jjƒD]2}|j|j}t|tƒs|j}PqqW|S(N(R/R4titerate_to_roott_propsRRcR¥R@(RR)tcomparator_callabletmtp((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/descriptor_props.pyR(Ðs	csQttˆƒjƒ‡fd†‰dtf‡‡fd†ƒY}|ƒˆ_dS(Ncs&tdˆjˆjˆjfƒ‚dS(NsgConcrete %s does not implement attribute %r at the instance level.  Add this property explicitly to %s.(tAttributeErrorR4R((R(sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/descriptor_props.pytwarnÜstNoninheritedConcretePropcs8eZ‡fd†Z‡fd†Z‡‡fd†ZRS(csˆƒdS(N((tsR!R"(R¬(sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/descriptor_props.pyt__set__ãscsˆƒdS(N((R®R!(R¬(sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/descriptor_props.pyt
__delete__æscs|dkrˆjSˆƒdS(N(R/R.(R®R!towner(RR¬(sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/descriptor_props.pyt__get__és(RRR¯R°R²((RR¬(sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/descriptor_props.pyR­âs(RBR¥RR-R.(RR­((RR¬sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/descriptor_props.pyRÚs(RRR;R(R(((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/descriptor_props.pyR¥¾s	
tSynonymPropertycBsDeZdddddd„Zejd„ƒZd„Zd„ZRS(cCsxtt|ƒjƒ||_||_||_||_|pO|rL|jpOd|_	|rg||_
ntj|ƒdS(sÓ	Denote an attribute name as a synonym to a mapped property,
        in that the attribute will mirror the value and expression behavior
        of another attribute.

        :param name: the name of the existing mapped property.  This
          can refer to the string name of any :class:`.MapperProperty`
          configured on the class, including column-bound attributes
          and relationships.

        :param descriptor: a Python :term:`descriptor` that will be used
          as a getter (and potentially a setter) when this attribute is
          accessed at the instance level.

        :param map_column: if ``True``, the :func:`.synonym` construct will
          locate the existing named :class:`.MapperProperty` based on the
          attribute name of this :func:`.synonym`, and assign it to a new
          attribute linked to the name of this :func:`.synonym`.
          That is, given a mapping like::

                class MyClass(Base):
                    __tablename__ = 'my_table'

                    id = Column(Integer, primary_key=True)
                    job_status = Column(String(50))

                    job_status = synonym("_job_status", map_column=True)

          The above class ``MyClass`` will now have the ``job_status``
          :class:`.Column` object mapped to the attribute named
          ``_job_status``, and the attribute named ``job_status`` will refer
          to the synonym itself.  This feature is typically used in
          conjunction with the ``descriptor`` argument in order to link a
          user-defined descriptor as a "wrapper" for an existing column.

        :param info: Optional data dictionary which will be populated into the
            :attr:`.InspectionAttr.info` attribute of this object.

            .. versionadded:: 1.0.0

        :param comparator_factory: A subclass of :class:`.PropComparator`
          that will provide custom comparison behavior at the SQL expression
          level.

          .. note::

            For the use case of providing an attribute which redefines both
            Python-level and SQL-expression level behavior of an attribute,
            please refer to the Hybrid attribute introduced at
            :ref:`mapper_hybrids` for a more effective technique.

        .. seealso::

            :ref:`synonyms` - examples of functionality.

            :ref:`mapper_hybrids` - Hybrids provide a better approach for
            more complicated attribute-wrapping schemes than synonyms.

        N(
RBR³RR t
map_columnR.R@R;R/R+RARRI(RR R´R.R@R+RA((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/descriptor_props.pyRós=				cCst|jj|jƒjS(N(R&R4R0R R2(R((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/descriptor_props.pyt_proxied_property?scCs=|j}|jr'|j||ƒ}n|j||ƒ}|S(N(RµR@(RR)Rtcomp((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/descriptor_props.pyR(Cs
		cCs|jr|j|jjkrItjd|j|jj|jfƒ‚np|jj|j|jkr¹|j|jj|jj|jkr¹tjd|j|j|j|jfƒ‚nt	j
|jj|jƒ}|j|j|d|dtƒ|j|_
n||_dS(Ns>Can't compile synonym '%s': no column on table '%s' named '%s'spCan't call map_column=True for synonym %r=%r, a ColumnProperty already exists keyed to the name %r for column %rtinitt	setparent(R´Rtmapped_tabletcRiRjR tdescriptionRgR
tColumnPropertyt_configure_propertyRt_mapped_by_synonymR4(RR4R·Rª((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/descriptor_props.pyt
set_parentLs(	"%N(	RRR/RRR¡RµR(R¿(((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/descriptor_props.pyR³ðsJ		tComparablePropertycBs)eZdZdddd„Zd„ZRS(s;Instruments a Python property for use in query expressions.cCsftt|ƒjƒ||_||_|p=|r:|jp=d|_|rU||_nt	j
|ƒdS(so
Provides a method of applying a :class:`.PropComparator`
        to any Python descriptor attribute.

        .. versionchanged:: 0.7
            :func:`.comparable_property` is superseded by
            the :mod:`~sqlalchemy.ext.hybrid` extension.  See the example
            at :ref:`hybrid_custom_comparators`.

        Allows any Python descriptor to behave like a SQL-enabled
        attribute when used at the class level in queries, allowing
        redefinition of expression operator behavior.

        In the example below we redefine :meth:`.PropComparator.operate`
        to wrap both sides of an expression in ``func.lower()`` to produce
        case-insensitive comparison::

            from sqlalchemy.orm import comparable_property
            from sqlalchemy.orm.interfaces import PropComparator
            from sqlalchemy.sql import func
            from sqlalchemy import Integer, String, Column
            from sqlalchemy.ext.declarative import declarative_base

            class CaseInsensitiveComparator(PropComparator):
                def __clause_element__(self):
                    return self.prop

                def operate(self, op, other):
                    return op(
                        func.lower(self.__clause_element__()),
                        func.lower(other)
                    )

            Base = declarative_base()

            class SearchWord(Base):
                __tablename__ = 'search_word'
                id = Column(Integer, primary_key=True)
                word = Column(String)
                word_insensitive = comparable_property(lambda prop, mapper:
                                CaseInsensitiveComparator(
                                    mapper.c.word, mapper)
                            )


        A mapping like the above allows the ``word_insensitive`` attribute
        to render an expression like::

            >>> print SearchWord.word_insensitive == "Trucks"
            lower(search_word.word) = lower(:lower_1)

        :param comparator_factory:
          A PropComparator subclass or factory that defines operator behavior
          for this property.

        :param descriptor:
          Optional when used in a ``properties={}`` declaration.  The Python
          descriptor or property to layer comparison behavior on top of.

          The like-named descriptor will be automatically retrieved from the
          mapped class if left blank in a ``properties`` declaration.

        :param info: Optional data dictionary which will be populated into the
            :attr:`.InspectionAttr.info` attribute of this object.

            .. versionadded:: 1.0.0

        N(RBRÀRR.R@R;R/R+RARRI(RR@R.R+RA((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/descriptor_props.pyRmsE		cCs|j||ƒS(N(R@(RR)((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/descriptor_props.pyR(ºsN(RRR;R/RR((((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/descriptor_props.pyRÀisLN(R;t
interfacesRRRRtRRRRiRRR	R
RRtlanghelperstdependency_forR<R¥R³RÀ(((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/descriptor_props.pyt<module>s"(8ÿo1x