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dZddlmZmZddlmZmZmZddlm	Z	ddl
mZmZddl
mZddlmZddlmZmZdd	lmZdd
lmZddlmZdd
lmZddlZddlZddlmZeaad„Z d„Z!e"d„Z#d„Z$de%fd„ƒYZ&de&fd„ƒYZ'd„Z(d„Z)de)_*d„Z+dS(s(Internal implementation for declarative.i(tTabletColumn(tmappertclass_mappertsynonym(tMapperProperty(tColumnPropertytCompositeProperty(tQueryableAttribute(t_is_mapped_class(tutiltexc(ttopological(t
expression(teventi(tclsregistryiÿÿÿÿN(tinstrumentationcCs@tj|ƒrtj|ƒSt|ƒr8t|dtƒSdSdS(Nt	configure(t_DeferredMapperConfigthas_clstconfig_for_clsR	RtFalsetNone(tcls((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/ext/declarative/base.pyt_declared_mapping_infos

cCsd|tkrdSt|ddtƒr\x8|jD]"}t|ƒ}|dk	r/|Sq/WdSn|SdS(Nt__abstract__tstrict(tobjectRt_get_immediate_cls_attrtTruet	__bases__t_resolve_for_abstract(Rtsup((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/ext/declarative/base.pyR&scCsˆt|tƒsdSxn|jD]_}t|dƒ}||jkr||kso|rb||jkntr|rt||ƒSqWdSdS(sreturn an attribute of the class that is either present directly
    on the class, e.g. not on a superclass, or is from a superclass but
    this superclass is a mixin, that is, not a descendant of
    the declarative base.

    This is used to detect attributes that indicate something about
    a mapped class independently from any mapped classes that it may
    inherit from.

    t_decl_class_registryN(	t
issubclassRRt__mro__thasattrt__dict__RRtgetattr(RtattrnameRtbaset_is_declarative_inherits((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/ext/declarative/base.pyR5scCs^tdkr.ddlmattjfant|ddtƒrGdStj	|||ƒdS(Ni(t
declared_attrRR(
R*RtapiR
t
classpropertytdeclarative_propsRRt
_MapperConfigt
setup_mapping(Rt	classnametdict_((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/ext/declarative/base.pyt_as_declarativeOsR.cBszeZed„ƒZd„Zd„Zd„Zd„Zd„Zd„Z	d„Z
d„Zd	„Zd
„Z
d„ZRS(cCsMt|ddtƒp!t|dƒ}|r3t}nt}||||ƒdS(Nt_sa_decl_prepare_nocascadeRt_sa_decl_prepare(RRR$RR.(Rtcls_R0R1t	defer_maptcfg_cls((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/ext/declarative/base.pyR/]s	cCsº||_t|ƒ|_||_d|_tjƒ|_t	ƒ|_
i|_|jƒi|j_
|jƒtj|j|jƒ|jƒ|jƒ|jƒ|jƒ|jƒdS(N(RtdictR1R0Rtmapped_tableR
tOrderedDictt
propertiestsettdeclared_columnst
column_copiest_setup_declared_eventst_sa_declared_attr_regt_scan_attributesRt	add_classt_extract_mappable_attributest_extract_declared_columnst_setup_tablet_setup_inheritancet_early_mapping(tselfR5R0R1((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/ext/declarative/base.pyt__init__is 				





cCs|jƒdS(N(tmap(RH((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/ext/declarative/base.pyRG‰scsptˆjdƒr6tjtdƒ‡fd†ƒ}ntˆjdƒrltjtdƒ‡fd†ƒ}ndS(Nt__declare_last__tafter_configuredcsˆjjƒdS(N(RRK((RH(sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/ext/declarative/base.pyRLŽst__declare_first__tbefore_configuredcsˆjjƒdS(N(RRM((RH(sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/ext/declarative/base.pyRN“s(RRRtlistens_forR(RHRLRN((RHsT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/ext/declarative/base.pyR?Œs$c

s;|j‰|j}|j}d}d}}d}xÒˆjD]Ç}|ˆk	ort|ƒdk	ort|ddtƒ}|r˜|ˆk	r˜|j|ƒnxgt	|ƒj
ƒD]S\}	}
|	dkrõ|rþ|sàt|
tƒrþ‡fd†}qþq«|	dkr-|rþ|st|
tƒrþˆj
}qþq«|	dkrª|rþ|sVt|
tƒrþˆj}t|tttdƒfƒstjdƒ‚n|ˆk	r§t}q§qþq«|rèt|
tƒr«tjd|j|	|ˆfƒq«q«q«|ˆk	r«t|
tƒr	q«qþt|
tƒr*tjd	ƒ‚qþt|
tƒrþt|
tjƒ}|r|
jr|
j|
ˆƒ||	<||
<}tˆ|	|ƒn5|r¦tjd
ƒntˆ|	ƒ||	<||
<}t|ttfƒrû|j dkrû|
j!|_ qûqþq«q«Wq;W|r|rd}n||_"||_#||_$dS(NR3Rt__mapper_args__cs
tˆjƒS(N(R8RP((R(sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/ext/declarative/base.pyt<lambda>´st
__tablename__t__table_args__s3__table_args__ value must be a tuple, dict, or Nones‚Regular (i.e. not __special__) attribute '%s.%s' uses @declared_attr, but owning class %s is mapped - not applying to subclass %s.s”Mapper properties (i.e. deferred,column_property(), relationship(), etc.) must be declared as @declared_attr callables on declarative mixin classes.sJUse of sqlalchemy.util.classproperty on declarative classes is deprecated.(%RR1R>RR#RRRt_produce_column_copiestvarstitemst
isinstanceR-RRRSttupleR8ttypeRt
ArgumentErrorR
twarnt__name__RRtInvalidRequestErrorR,t
_cascadingt__get__tsetattrtwarn_deprecatedR&tdoct__doc__t
table_argst	tablenametmapper_args_fn(
RHR1R>RfRdtinherited_table_argsReR(tclass_mappedtnametobjtoldclassproptret((RsT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/ext/declarative/base.pyRA—s~			
		"

			cCsü|j}|j}|j}xÚt|ƒjƒD]Æ\}}t|tƒr.t||ƒ|k	rdq.qô|jrt	j
dƒ‚qô||krôd|ko°|jp£||djkrô|j
ƒ||<}|j|_t|||ƒ|||<qôq.q.WdS(NsvColumns with foreign keys to other columns must be declared as @declared_attr callables on declarative mixin classes. t	__table__(RR1R>RURVRWRR&tforeign_keysRR]Ritctcopyt_creation_orderR`(RHR(RR1R>RiRjtcopy_((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/ext/declarative/base.pyRTôs"				c	Cs—|j}|j}|j}xut|ƒD]g}|d
kr@q(n||}t|tƒrkt||ƒ}nOt|tƒrº|j|k	rº|j	|krºt
|j	ƒ}t|||ƒnt|tƒrt
|ƒdkrt|dttfƒrtjd|ƒq(nht|ttfƒsU|jdƒs(|j|ƒt|||ƒq(q(n|dkrstjd	ƒ‚ntj||ƒ}|||<q(WdS(NRmRRRPiis€Ignoring declarative-like tuple value of attribute %s: possibly a copy-and-paste error with a comma left at the end of the line?t__tmetadatasdAttribute name 'metadata' is reserved for the MetaData instance when using a declarative base class.(s	__table__s
__tablename__s__mapper_args__(RR1R;tlistRWR-R&Rtclass_tkeyRR`RXtlenRRR
R[t
startswithtpopRR]Rt_deferred_relationship(RHRR1t	our_stufftktvaluetprop((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/ext/declarative/base.pyRCs:			
!	
cs¥|j‰ˆjd‡fd†ƒ|j}tjtƒ}xtˆjƒƒD]ò\}}t|t	t
fƒræxÎ|jD]g}t|tƒrx|j
dkrxt||ƒt|t
ƒsÏ||jj|ƒn|j|ƒqxqxWqMt|tƒrMt||ƒ||jj|ƒ|j|ƒ||jkr?ˆ|=q?qMqMWx[|jƒD]M\}}t|ƒdkrPtjd|j|djt|ƒƒfƒqPqPWdS(NRwcsˆ|jS(N(Rq(Rw(R|(sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/ext/declarative/base.pyRQCsiszOn class %r, Column object %r named directly multiple times, only one will be used: %s. Consider using orm.synonym insteads, (R;tsortR=tcollectionstdefaultdictR<RuRVRWRRtcolumnsRttableRt_undefer_column_nameRitaddRwRxR
R[R0tjointsorted(RHR=tname_to_prop_keyRwRotcolRitkeys((R|sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/ext/declarative/base.pyRD?s0		


cCs·|j}|j}|j}|j}|j}t|dd„ƒ}|_d}t|dƒrstj	|j
ƒ}nt}d|kr\|dk	rªd
i}}	|rt|t
ƒr¼|}	qt|tƒrt|dt
ƒrù|dd!|d}}	q|}qn|jdƒ}
|
r't|	d<n|||jt|ƒt|ƒ|	Ž|_}qªnN|j}|rªx<|D]1}|jj|ƒsrtjd	|jƒ‚qrqrWn||_dS(NRwcSs|jS(N(Rq(Ro((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/ext/declarative/base.pyRQost
__table_cls__Rmiÿÿÿÿit__autoload__tautoloads8Can't add additional column %r when specifying __table__((RReRdR1R=RˆRR$R
tunbound_method_to_callableRŒRRWR8RXtgetRRtRmRotcontains_columnRRZRwtlocal_table(RHRReRdR1R=R„t	table_clstargsttable_kwRŽRo((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/ext/declarative/base.pyREgsH					
	
		
c		Cså|j}|j}|j}|j}xm|jD]Y}t|ƒ}|dkrRq.nt|ƒdk	r.t|ddt	ƒr.||_
Pq.q.Wd|_
|dkrÕ|j
dkrÕt|dƒrÕtjd|ƒ‚n|j
rát|j
ƒ}|j}|j
}|dkrá|r#tjdƒ‚nx¸|D]­}|jrKtjdƒ‚n|j|jkr¢|j|j|kryq*ntjd|||j|jfƒ‚n|j|ƒ|dk	r*||k	r*|j|ƒq*q*WqándS(NR3Rt__no_table__swClass %r does not have a __table__ or __tablename__ specified and does not inherit from an existing table-mapped class.s?Can't place __table_args__ on an inherited class with no table.sDCan't place primary key columns on an inherited class with no table.s;Column '%s' on class %s conflicts with existing column '%s'(R’RRdR=RRRRRRtinheritsRR]R9RZtprimary_keyRiRot
append_columnt_refresh_for_new_column(	RHR„RRdR=Rotinherited_mappertinherited_tabletinherited_mapped_table((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/ext/declarative/base.pyRF—sR						
			
	 
cCsæ|j}|jr!|jƒ}ni}x@dD]8}||kr.||}|jj||ƒ||<q.q.Wd|ks‚tdƒ‚|jr›|j|d<n|jrÃ|jdtƒrÃt|jƒ}|j}d|kr@t	g|j
D]}||jkrè|j^qèƒ|d<}|j
g|jD]}|j^q'ƒnx€t|jƒƒD]i\}}	t|	tjƒswqSn||jkrS|j|}
t|
tƒr¼|	g|
j||<q¼qSqSWn|jƒ}||d<||_dS(	Ntversion_id_coltpolymorphic_onR—s=Can't specify 'inherits' explicitly with declarative mappingstconcretetexclude_propertiesR;(sversion_id_colspolymorphic_on(R;RfR>RtAssertionErrorR—RRR’R<Rot_columntopropertyRwtdifference_updateR=RuRVRWR
t
ColumnElementt_propsRRƒRptmapper_args(RHR;R§R}tvR›RœRoR¡RŠtptresult_mapper_args((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/ext/declarative/base.pyt_prepare_mapper_argumentsÑs<		

 			)#
!
cCsl|jƒt|jdƒr4tj|jjƒ}nt}||j|j|j|j_	}|j`
|S(Nt__mapper_cls__(R«R$RR
RR¬RR’R§t
__mapper__R@(RHt
mapper_clstmp_((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/ext/declarative/base.pyRJs
	(R\t
__module__tclassmethodR/RIRGR?RARTRCRDRERFR«RJ(((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/ext/declarative/base.pyR.[s	 			]		1	(	0	:	6RcBs†eZejƒZd„Zed„ƒZejd„ƒZe	d„ƒZ
e	d„ƒZe	d„ƒZe	e
d„ƒZd„ZRS(cCsdS(N((RH((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/ext/declarative/base.pyRGscCs
|jƒS(N(t_cls(RH((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/ext/declarative/base.pyRscCs,tj||jƒ|_||j|j<dS(N(tweakreftreft_remove_config_clsR²t_configs(RHRv((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/ext/declarative/base.pyR"scCs|jj|dƒdS(N(R¶RzR(RR´((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/ext/declarative/base.pyRµ'scCs%t|tƒo$tj|ƒ|jkS(N(RWRYR³R´R¶(RRv((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/ext/declarative/base.pyR+scCs|jtj|ƒS(N(R¶R³R´(RRv((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/ext/declarative/base.pyR1scs¤g|jjƒD]}t|j|ƒr|^q}|s>|Std„|Dƒƒ‰g}x1ˆD])‰|j‡‡fd†ˆjDƒƒqaWttj	||ƒƒS(Ncss|]}|j|fVqdS(N(R(t.0tm((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/ext/declarative/base.pys	<genexpr>=sc3s/|]%}|ˆkrˆ|ˆˆfVqdS(N((R·tbase_cls(tall_m_by_clstm_cls(sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/ext/declarative/base.pys	<genexpr>Ds(
R¶tvaluesR"RR8textendRRuRR€(RR¹R€R¸tclasses_for_basettuples((RºR»sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/ext/declarative/base.pyR¾5s 

cCs)|jj|jdƒtt|ƒjƒS(N(R¶RzR²RtsuperRRJ(RH((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/ext/declarative/base.pyRJOs(R\R°R
R:R¶RGtpropertyRtsetterR±RµRRRR¾RJ(((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/ext/declarative/base.pyRs	cCsud|jkr^t|tƒrQt||ƒ|jj|ƒ|jj||ƒqqt|tƒrÈxO|j	D]D}t|tƒrj|j
dkrjt||ƒ|jj|ƒqjqjW|jj||ƒqqt|tƒrù|jj|t
j||ƒƒqqt|tƒrH|j|krHt|jƒ}|jj|t
j||ƒƒqqtj|||ƒntj|||ƒdS(s¹add an attribute to an existing declarative class.

    This runs through the logic to determine MapperProperty,
    adds it to the Mapper, adds a column to the mapped Table, etc.

    R­N(R%RWRR…RmR™R­tadd_propertyRRƒR„RRRR{RRwRRYt__setattr__(RRwR~RŠ((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/ext/declarative/base.pyt_add_attributeTs,

		cKs`t|ƒ}xM|D]E}t||ƒsDtd||jfƒ‚nt||||ƒqWdS(s=A simple constructor that allows initialization from kwargs.

    Sets attributes on the constructed instance using the names and
    values in ``kwargs``.

    Only keys that are present as
    attributes of the instance's class are allowed. These could be,
    for example, any mapped columns or relationships.
    s(%r is an invalid keyword argument for %sN(RYR$t	TypeErrorR\R`(RHtkwargsR5R}((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/ext/declarative/base.pyt_declarative_constructorzs

RIcCs:|jdkr||_n|jdkr6||_ndS(N(RwRRi(Rwtcolumn((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/ext/declarative/base.pyR…Žs(,RctschemaRRtormRRRtorm.interfacesRtorm.propertiesRRtorm.attributesRtorm.baseR	tR
RRtsqlR
RRRR³tsqlalchemy.ormRRR*R-RRRRR2RR.RRÅRÈR\R…(((sT/home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/ext/declarative/base.pyt<module>s4
			ÿ¾<	&