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    
Size: Mime:
ó
‹EYc@sdZddlmZmZddlZddlmZddlZddlZej	dƒZ
ej	dƒZd	efd
„ƒYZ
d„Zejd„ƒZd
ejfd„ƒYZdejfd„ƒYZdefd„ƒYZdefd„ƒYZdefd„ƒYZdefd„ƒYZdefd„ƒYZdejfd„ƒYZdejefd„ƒYZdejfd „ƒYZdd!„Z dS("s4Foundational utilities common to many sql modules.

i(tutiltexciÿÿÿÿNi(t
ClauseVisitortPARSE_AUTOCOMMITtNO_ARGt	ImmutablecBs)eZdZd„Zd„Zd„ZRS(s@mark a ClauseElement as 'immutable' when expressions are cloned.cOstdƒ‚dS(Ns(Immutable objects do not support copying(tNotImplementedError(tselftoptionaldicttkwargs((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyt
unique_paramsscOstdƒ‚dS(Ns(Immutable objects do not support copying(R(RRR	((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pytparamsscCs|S(N((R((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyt_clone s(t__name__t
__module__t__doc__R
RR(((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyRs		cGs#tjg|D]}|j^q
ŒS(N(t	itertoolstchaint
_from_objects(telementstelement((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyR$scOs(|djƒ}|||d|Ž|S(sMark a method as generative.ii(t	_generate(tfntargstkwR((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyt_generative(st_DialectArgViewcBsMeZdZd„Zd„Zd„Zd„Zd„Zd„Zd„Z	RS(saA dictionary view of dialect-level arguments in the form
    <dialectname>_<argument_name>.

    cCs
||_dS(N(tobj(RR((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyt__init__7scCsJy|jddƒ\}}Wntk
r;t|ƒ‚nX||fSdS(Nt_i(tsplitt
ValueErrortKeyError(Rtkeytdialectt	value_key((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyt_key:s

cCsX|j|ƒ\}}y|jj|}Wn tjk
rKt|ƒ‚n	X||SdS(N(R$Rtdialect_optionsRtNoSuchModuleErrorR (RR!R"R#topt((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyt__getitem__BscCsTy|j|ƒ\}}Wn tk
r;tjdƒ‚nX||jj||<dS(Ns0Keys must be of the form <dialectname>_<argname>(R$R Rt
ArgumentErrorRR%(RR!tvalueR"R#((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyt__setitem__Ls

cCs*|j|ƒ\}}|jj||=dS(N(R$RR%(RR!R"R#((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyt__delitem__UscCs td„|jjjƒDƒƒS(Ncss|]}t|jƒVqdS(N(tlent
_non_defaults(t.0R((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pys	<genexpr>Zs(tsumRR%tvalues(R((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyt__len__Ys	cs‡fd†ˆjjDƒS(Nc3sB|]8}ˆjj|jD]}tjd||fƒVqqdS(s%s_%sN(RR%R.Rt
safe_kwarg(R/tdialect_namet
value_name(R(sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pys	<genexpr>_s(RR%(R((RsH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyt__iter__]s(
R
RRRR$R(R+R,R2R6(((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyR1s			
				t_DialectArgDictcBsDeZdZd„Zd„Zd„Zd„Zd„Zd„ZRS(s¼A dictionary view of dialect-level arguments for a specific
    dialect.

    Maintains a separate collection of user-specified arguments
    and dialect-specified default arguments.

    cCsi|_i|_dS(N(R.t	_defaults(R((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyRos	cCstt|jƒj|jƒƒS(N(R-tsetR.tunionR8(R((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyR2sscCstt|jƒj|jƒƒS(N(titerR9R.R:R8(R((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyR6vscCs)||jkr|j|S|j|SdS(N(R.R8(RR!((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyR(yscCs||j|<dS(N(R.(RR!R*((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyR+scCs|j|=dS(N(R.(RR!((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyR,‚s(	R
RRRR2R6R(R+R,(((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyR7fs					t
DialectKWArgscBs‰eZdZed„ƒZejd„ƒZed„ƒZ	ej
dƒd„ƒZejeƒZ
d„Zejd„ƒZd„ZRS(	s9Establish the ability for a class to have dialect-specific arguments
    with defaults and constructor validation.

    The :class:`.DialectKWArgs` interacts with the
    :attr:`.DefaultDialect.construct_arguments` present on a dialect.

    .. seealso::

        :attr:`.DefaultDialect.construct_arguments`

    cCsZtj|}|dkr/tjd|ƒ‚n||krHi||<n||||<dS(s€Add a new kind of dialect-specific keyword argument for this class.

        E.g.::

            Index.argument_for("mydialect", "length", None)

            some_index = Index('a', 'b', mydialect_length=5)

        The :meth:`.DialectKWArgs.argument_for` method is a per-argument
        way adding extra arguments to the
        :attr:`.DefaultDialect.construct_arguments` dictionary. This
        dictionary provides a list of argument names accepted by various
        schema-level constructs on behalf of a dialect.

        New dialects should typically specify this dictionary all at once as a
        data member of the dialect class.  The use case for ad-hoc addition of
        argument names is typically for end-user code that is also using
        a custom compilation scheme which consumes the additional arguments.

        :param dialect_name: name of a dialect.  The dialect must be
         locatable, else a :class:`.NoSuchModuleError` is raised.   The
         dialect must also include an existing
         :attr:`.DefaultDialect.construct_arguments` collection, indicating
         that it participates in the keyword-argument validation and default
         system, else :class:`.ArgumentError` is raised.  If the dialect does
         not include this collection, then any keyword argument can be
         specified on behalf of this dialect already.  All dialects packaged
         within SQLAlchemy include this collection, however for third party
         dialects, support may vary.

        :param argument_name: name of the parameter.

        :param default: default value of the parameter.

        .. versionadded:: 0.9.4

        sRDialect '%s' does have keyword-argument validation and defaults enabled configuredN(R<t_kw_registrytNoneRR)(tclsR4t
argument_nametdefaulttconstruct_arg_dictionary((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pytargument_for“s(


cCs
t|ƒS(s9A collection of keyword arguments specified as dialect-specific
        options to this construct.

        The arguments are present here in their original ``<dialect>_<kwarg>``
        format.  Only arguments that were actually passed are included;
        unlike the :attr:`.DialectKWArgs.dialect_options` collection, which
        contains all options known by this dialect including defaults.

        The collection is also writable; keys are accepted of the
        form ``<dialect>_<kwarg>`` where the value will be assembled
        into the list of options.

        .. versionadded:: 0.9.2

        .. versionchanged:: 0.9.4 The :attr:`.DialectKWArgs.dialect_kwargs`
           collection is now writable.

        .. seealso::

            :attr:`.DialectKWArgs.dialect_options` - nested dictionary form

        (R(R((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pytdialect_kwargsÅscCs|jS(s4A synonym for :attr:`.DialectKWArgs.dialect_kwargs`.(RD(R((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyR	ßsssqlalchemy.dialectscCs2|jj|ƒ}|jdkr%dSt|jƒS(N(tregistrytloadtconstruct_argumentsR>tdict(tdialectsR4tdialect_cls((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyt_kw_reg_for_dialectäscCs€tj|}tƒ}|dkr<|jjidd6ƒn@x=t|jjƒD])}||krO|jj||ƒqOqOW|S(Nt*(	R<R=R7R>R8tupdatetreversedt	__class__t__mro__(RR4RBtdR?((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyt_kw_reg_for_dialect_clsìs
	cCstjtj|jƒƒS(sìA collection of keyword arguments specified as dialect-specific
        options to this construct.

        This is a two-level nested registry, keyed to ``<dialect_name>``
        and ``<argument_name>``.  For example, the ``postgresql_where``
        argument would be locatable as::

            arg = my_object.dialect_options['postgresql']['where']

        .. versionadded:: 0.9.2

        .. seealso::

            :attr:`.DialectKWArgs.dialect_kwargs` - flat dictionary form

        (RtPopulateDicttportable_instancemethodRR(R((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyR%øscCs%|s
dSx|D]}tjd|ƒ}|sBtd|ƒ‚n|jddƒ\}}y|j|}Wngtjk
rÔtjd||fƒt	ƒ|j|<}|j
jidd6ƒ|||j
|<qXd|kr||krtjd|||jfƒ‚q||||<qWdS(Ns^(.+?)_(.+)$sGAdditional arguments should be named <dialectname>_<argument>, got '%s'iisHCan't validate argument %r; can't locate any SQLAlchemy dialect named %rRLs9Argument %r is not accepted by dialect %r on behalf of %r(tretmatcht	TypeErrortgroupR%RR&RtwarnR7R8RMR>R.R)RO(RR	tktmR4targ_nameRBRQ((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyt_validate_dialect_kwargss2

(R
RRtclassmethodRCRtmemoized_propertyRDtpropertyR	tdependenciesRKRSR=RRR%R](((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyR<†s2	t
GenerativecBseZdZd„ZRS(sRAllow a ClauseElement to generate itself via the
    @_generative decorator.

    cCs+|jj|jƒ}|jjƒ|_|S(N(ROt__new__t__dict__tcopy(Rts((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyR:s(R
RRR(((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyRb4st
ExecutablecBsVeZdZeZejƒZdZ	e
d„ƒZd„Zd„Z
ed„ƒZRS(sãMark a ClauseElement as supporting execution.

    :class:`.Executable` is a superclass for all "statement" types
    of objects, including :func:`select`, :func:`delete`, :func:`update`,
    :func:`insert`, :func:`text`.

    cKsUd|krtjdƒ‚nd|kr<tjdƒ‚n|jj|ƒ|_dS(s0 Set non-SQL options for the statement which take effect during
        execution.

        Execution options can be set on a per-statement or
        per :class:`.Connection` basis.   Additionally, the
        :class:`.Engine` and ORM :class:`~.orm.query.Query` objects provide
        access to execution options which they in turn configure upon
        connections.

        The :meth:`execution_options` method is generative.  A new
        instance of this statement is returned that contains the options::

            statement = select([table.c.x, table.c.y])
            statement = statement.execution_options(autocommit=True)

        Note that only a subset of possible execution options can be applied
        to a statement - these include "autocommit" and "stream_results",
        but not "isolation_level" or "compiled_cache".
        See :meth:`.Connection.execution_options` for a full list of
        possible options.

        .. seealso::

            :meth:`.Connection.execution_options()`

            :meth:`.Query.execution_options()`

        tisolation_levels 'isolation_level' execution option may only be specified on Connection.execution_options(), or per-engine using the isolation_level argument to create_engine().tcompiled_cachesm'compiled_cache' execution option may only be specified on Connection.execution_options(), not per statement.N(RR)t_execution_optionsR:(RR((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pytexecution_optionsMscOs\|j}|dkrIt|d|jjƒ}d|}tj|ƒ‚n|j|||ƒS(s.Compile and execute this :class:`.Executable`.tdescriptions†This %s is not directly bound to a Connection or Engine.Use the .execute() method of a Connection or Engine to execute this construct.N(tbindR>tgetattrROR
RtUnboundExecutionErrort_execute_clauseelement(RtmultiparamsRtetlabeltmsg((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pytexecuteys	cOs|j||ŽjƒS(snCompile and execute this :class:`.Executable`, returning the
        result's scalar representation.

        (Rutscalar(RRqR((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyRv„scCs`|jdk	r|jSxCt|ƒD]1}||kr;q#n|j}|dk	r#|Sq#WdSdS(s5Returns the :class:`.Engine` or :class:`.Connection` to
        which this :class:`.Executable` is bound, or None if none found.

        This is a traversal which checks locally, then
        checks among the "from" clauses of associated objects
        until a bound engine or connection is found.

        N(t_bindR>RRm(Rtftengine((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyRm‹s
	N(R
RRtTruetsupports_executionRt
immutabledictRjR>RwRRkRuRvR`Rm(((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyRg@s,		tSchemaEventTargetcBs eZdZd„Zd„ZRS(sžBase class for elements that are the targets of :class:`.DDLEvents`
    events.

    This includes :class:`.SchemaItem` as well as :class:`.SchemaType`.

    cCs
tƒ‚dS(s0Associate with this SchemaEvent's parent object.N(R(Rtparent((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyt_set_parentªscCs7|jj||ƒ|j|ƒ|jj||ƒdS(N(tdispatchtbefore_parent_attachRtafter_parent_attach(RR~((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyt_set_parent_with_dispatch¯s
(R
RRRRƒ(((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyR}¢s	t
SchemaVisitorcBseZdZied6ZRS(s/Define the visiting for ``SchemaItem`` objects.tschema_visitor(R
RRRzt__traverse_options__(((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyR„µstColumnCollectioncBsÂeZdZdZd„Zd„Zd„Zd„Zd„Zd„Z	d„Z
d	„Zd
„Zd„Z
d„ZdZejd
ƒd„ƒZd„Zd„Zd„Zd„Zd„ZRS(s´An ordered dictionary that stores a list of ColumnElement
    instances.

    Overrides the ``__eq__()`` method to produce SQL clauses between
    sets of correlated columns.

    t_all_columnscGsHtt|ƒjƒtj|dgƒx|D]}|j|ƒq-WdS(NRˆ(tsuperR‡Rtobjectt__setattr__tadd(Rtcolumnstc((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyRÆs
cCs#tg|D]}t|ƒ^q
ƒS(N(treprtstr(RRŽ((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyt__str__ÌscCséd}|j|kr_|j|jkr_||j}|j|jkr_|}|j|j=q_n|j|jkr„|j|j}n||j|j<|dk	rÕg|jD]}||krÂ|n|^qª|j(n|jj|ƒdS(sadd the given column to this collection, removing unaliased
           versions of this column  as well as existing columns with the
           same key.

            e.g.::

                t = Table('sometable', metadata, Column('col1', Integer))
                t.columns.replace(Column('col1', Integer, key='columnone'))

            will remove the original 'col1' from the collection, and add
            the new column under the name 'columnname'.

           Used by schema.Column to override columns during table reflection.

        N(R>tnameR!t_dataRˆtappend(Rtcolumnt
remove_coltotherRŽ((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pytreplaceÏs!
2cCs,|jstjdƒ‚n|||j<dS(sAdd a column to this collection.

        The key attribute of the column will be used as the hash key
        for this dictionary.

        s-Can't add unnamed column to column collectionN(R!RR)(RR•((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyRŒðs	cCs
tƒ‚dS(N(R(RR!((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyR,üscCs
tƒ‚dS(N(R(RR!RŠ((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyR‹ÿscCs…||krd||}|j|ƒsNtjd|t|ddƒ|fƒntjj|dƒn|jj|ƒ||j	|<dS(NsqColumn %r on table %r being replaced by %r, which has the same key.  Consider use_labels for select() statements.ttablet	proxy_set(
tshares_lineageRRYRnR>R_tresetRˆR”R“(RR!R*texisting((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyR+s
	 cCs
tƒ‚dS(N(R(R((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pytclearscCs=|j|j=g|jD]}||k	r|^q|j(dS(N(R“R!Rˆ(RR•RŽ((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pytremoves
csYt|ƒ}t|jƒ‰|jj‡fd†|Dƒƒ|jjd„|DƒƒdS(Nc3s'|]\}}|ˆkr|VqdS(N((R/RsRŽ(tall_col_set(sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pys	<genexpr>$scss!|]\}}||fVqdS(N((R/RsRŽ((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pys	<genexpr>%s(tlistR9RˆtextendR“RM(RR;tcols((R sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyRM s
	csYt|ƒ}t|jƒ‰|jj‡fd†|Dƒƒ|jjd„|DƒƒdS(Nc3s!|]}|ˆkr|VqdS(N((R/RŽ(R (sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pys	<genexpr>*scss|]}|j|fVqdS(N(R!(R/RŽ((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pys	<genexpr>+s(R¡R9RˆR¢R“RM(RR;R£((R sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyR¢'s ssqlalchemy.sql.elementscCsig}xSt|d|ƒD]?}x6|jD]+}|j|ƒr)|j||kƒq)q)WqW|j|ŒS(NRˆ(RnRˆR›R”tand_(RRR—tlRŽtlocal((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyt__eq__/scCs7t|tjƒs$tjdƒ‚ntjj||ƒS(Ns'__contains__ requires a string argument(t
isinstanceRtstring_typesRR)tOrderedPropertiest__contains__(RR—((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyR«8scCsi|jd6|jd6S(NR“Rˆ(R“Rˆ(R((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyt__getstate__=s
cCs2tj|d|dƒtj|d|dƒdS(NR“Rˆ(RŠR‹(Rtstate((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyt__setstate__AscCs|t|jƒkS(N(R9Rˆ(Rtcol((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pytcontains_columnEscCst|j|jƒS(N(tImmutableColumnCollectionR“Rˆ(R((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pytas_immutableHsN(R
RRt	__slots__RR‘R˜RŒR,R‹R+RžRŸRMR¢R>t__hash__RRaR§R«R¬R®R°R²(((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyR‡»s(			!													R±cBs!eZd„ZejjZZRS(cCs*tjj||ƒtj|d|ƒdS(NRˆ(RtImmutablePropertiesRRŠR‹(Rtdatatall_columns((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyRMs(R
RRRRµt
_immutableR¢RŸ(((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyR±Ls	t	ColumnSetcBsDeZd„Zd„Zd„Zejdƒd„ƒZd„ZRS(cCs
||kS(N((RR¯((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyR°UscCs"x|D]}|j|ƒqWdS(N(RŒ(RR£R¯((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyR¢Xs
cCst|ƒt|ƒS(N(R¡(RR—((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyt__add__\sssqlalchemy.sql.elementscCsZg}xD|D]<}x3|D]+}|j|ƒr|j||kƒqqWq
W|j|ŒS(N(R›R”R¤(RRR—R¥RŽR¦((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyR§_s

cCsttd„|DƒƒƒS(Ncss|]}|VqdS(N((R/tx((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pys	<genexpr>is(thashttuple(R((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyR´hs(	R
RR°R¢RºRRaR§R´(((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyR¹Ts
				cCs‹|j}|s‡|jj}t|dt|ddƒƒ}|rRd||f}n
d|}|dkrud|}ntj|ƒ‚n|S(NtfullnameR’s%s object %rs	%s objectsm%s is not bound to an Engine or Connection.  Execution can not proceed without a database to execute against.(RmROR
RnR>RRo(t
schemaitemRtRmR’Rstitem((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyt_bind_or_errorls		

(!RtRRRtvisitorsRRUtcollectionstsymbolRRRŠRRt	decoratorRtMutableMappingRR7R<RbRgR}R„RªR‡RµR±tordered_column_setR¹R>RÁ(((sH/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/sql/base.pyt<module>
s*
		5 ®b‘