AlkantarClanX12

Your IP : 3.16.135.226


Current Path : /proc/self/root/lib64/python2.7/bsddb/
Upload File :
Current File : //proc/self/root/lib64/python2.7/bsddb/__init__.pyc

�
{fc@s}dZddlZejddkZejdkr�ejdkr�ddlZejrzedkrzejded�nej	d	d
ed�nybedkr�er�ddUnddl
Z
e
Zdd
lm
ZnddlZdd
lm
ZWn*ek
r!ddlZeje=�nXeZZejZejZddlZddlZddlmZejdkr�ddlZejZnddlZejZdefd��YZdefd��YZddddddddd�Z!ddddddddd�Z"ddddddddddd�
Z#d�Z$d�Z%yddl&Z'['Wnek
rxde_(nXdS(s�Support for Berkeley DB 4.3 through 5.3 with a simple interface.

For the full featured object oriented interface use the bsddb.db module
instead.  It mirrors the Oracle Berkeley DB C API.
i����Niiiitbsddb3sQin 3.x, the bsddb module has been removed; please use the pybsddb project insteadtignores.*CObject.*sbsddb.__init__sfrom . import _pybsddb(tDeadlockWrap(treft_iter_mixincBs,eZd�Zd�Zd�Zd�ZRS(cCsAt|jj�}t|�}t||j|��|j|<|S(N(t
_DeadlockWraptdbtcursortidRt_gen_cref_cleanert_cursor_refs(tselftcurtkey((s&/usr/lib64/python2.7/bsddb/__init__.pyt_make_iter_cursor_scs��fd�S(Ncs�jj�d�S(N(R
tpoptNone(R(R
R(s&/usr/lib64/python2.7/bsddb/__init__.pyt<lambda>it((RR
((R
Rs&/usr/lib64/python2.7/bsddb/__init__.pyR	esccsAt|_|jd7_y�y�|j�}t|jddd�d}|Vt|d�}x�y"t|ddd�d}|VWq]tjk
r�|jr�t	d��n|j�}t|j
|ddd�t|d�}q]Xq]WWn'tjk
r�ntjk
rnXWn|jd8_�nX|jd8_dS(Niitnexts'Database changed size during iteration.(tFalset_kill_iterationt_in_iterRRtfirsttgetattrt_bsddbtDBCursorClosedErrortRuntimeErrortsettDBNotFoundError(RRR
R((s&/usr/lib64/python2.7/bsddb/__init__.pyt__iter__ks4			ccsH|js
dSt|_|jd7_y�y�|j�}t|j�}|d}|Vt|d�}x�yt|�}|d}|VWqgtj	k
r�|jr�t
d��n|j�}t|j|ddd�t|d�}qgXqgWWn'tjk
rntj	k
rnXWn|jd8_�nX|jd8_dS(NiiRs'Database changed size during iteration.(
RRRRRRRRRRRRR(RRtkvR
R((s&/usr/lib64/python2.7/bsddb/__init__.pyt	iteritems�s<		

		(t__name__t
__module__RR	RR (((s&/usr/lib64/python2.7/bsddb/__init__.pyR^s			)t
_DBWithCursorcBs�eZdZd�Zd�Zd�Zdd�Zd�Zd�Zd�Z	e
jdkrid�Znd�Z
d
�Zd�Zd�Zd�Zd�Zd�Zd�Ze
jddkr�eZnd�Zd�Zd�Zd�ZRS(s�
    A simple wrapper around DB that makes it look like the bsddbobject in
    the old module.  It uses a cursor as needed to provide DB traversal.
    cCsJ||_|jjd�d|_d|_i|_d|_t|_dS(Ni(	Rtset_get_returns_noneRtdbct
saved_dbc_keyR
RRR(RR((s&/usr/lib64/python2.7/bsddb/__init__.pyt__init__�s	
				cCs|j�dS(N(tclose(R((s&/usr/lib64/python2.7/bsddb/__init__.pyt__del__�scCs\|jdkrXt|jj�|_|jdk	rXt|jj|j�d|_qXndS(N(R%RRRRR&R(R((s&/usr/lib64/python2.7/bsddb/__init__.pyt_checkCursor�s
icCs�|jrq|j}d|_|r^y#t|jddd�d|_Wq^tjk
rZq^Xnt|j�~nx<|jj	�D]+}|�}|dk	r�t|j�q�q�WdS(Ni(
R%RRtcurrentR&RtDBErrorR(R
tvalues(Rtsavetctcref((s&/usr/lib64/python2.7/bsddb/__init__.pyt
_closeCursors�s			#
	cCs|jdkrtd�ndS(Ns$BSDDB object has already been closed(RRterror(R((s&/usr/lib64/python2.7/bsddb/__init__.pyt
_checkOpen�scCs
|jdk	S(N(RR(R((s&/usr/lib64/python2.7/bsddb/__init__.pytisOpen�scs�j�t�fd��S(Ncs
t�j�S(N(tlenR((R(s&/usr/lib64/python2.7/bsddb/__init__.pyRR(R3R(R((Rs&/usr/lib64/python2.7/bsddb/__init__.pyt__len__s
iicCs5|j�r(ttt|jj���Stt��S(N(R4treprtdictRRtitems(R((s&/usr/lib64/python2.7/bsddb/__init__.pyt__repr__scs �j�t��fd��S(Ncs�j�S(N(R((R
R(s&/usr/lib64/python2.7/bsddb/__init__.pyRR(R3R(RR
((R
Rs&/usr/lib64/python2.7/bsddb/__init__.pyt__getitem__s
csX�j��j��jr5��kr5t�_n���fd�}t|�dS(Ncs��j�<dS(N(R((R
Rtvalue(s&/usr/lib64/python2.7/bsddb/__init__.pytwrapFs(R3R1RtTrueRR(RR
R<R=((R
RR<s&/usr/lib64/python2.7/bsddb/__init__.pyt__setitem__s

csU�j��j��jr5��kr5t�_n��fd�}t|�dS(Ncs�j�=dS(N(R((R
R(s&/usr/lib64/python2.7/bsddb/__init__.pyR=s(R3R1RR>RR(RR
R=((R
Rs&/usr/lib64/python2.7/bsddb/__init__.pyt__delitem__s

cCsr|jdd�|jdk	r2t|jj�nd}|jdk	r\t|jj�}nd|_d|_|S(NR.i(R1R%RRR(R(Rtv((s&/usr/lib64/python2.7/bsddb/__init__.pyR("s		cCs|j�t|jj�S(N(R3RRtkeys(R((s&/usr/lib64/python2.7/bsddb/__init__.pyRB-s
cCs|j�t|jj|�S(N(R3RRthas_key(RR
((s&/usr/lib64/python2.7/bsddb/__init__.pyRC1s
cCs'|j�|j�t|jj|�S(N(R3R*RR%t	set_range(RR
((s&/usr/lib64/python2.7/bsddb/__init__.pytset_location5s

cCs0|j�|j�tt|jd��}|S(NR(R3R*RRR%(Rtrv((s&/usr/lib64/python2.7/bsddb/__init__.pyR:s

iicCs*|j�|j�t|jj�}|S(N(R3R*RR%tprev(RRF((s&/usr/lib64/python2.7/bsddb/__init__.pytpreviousCs

cCs3|j�d|_|j�t|jj�}|S(N(R3RR&R*RR%R(RRF((s&/usr/lib64/python2.7/bsddb/__init__.pyRIs

	
cCs3|j�d|_|j�t|jj�}|S(N(R3RR&R*RR%tlast(RRF((s&/usr/lib64/python2.7/bsddb/__init__.pyRIQs

	
cCs|j�t|jj�S(N(R3RRtsync(R((s&/usr/lib64/python2.7/bsddb/__init__.pyRJYs
(ii(R!R"t__doc__R'R)R*R1R3R4R6tsystversion_infoR:R;R?R@R(RBRCRERt__next__RHRRIRJ(((s&/usr/lib64/python2.7/bsddb/__init__.pyR#�s0																				R/i�c	Cs�t||�}	t|�}
tj|
�}|j|�|dk	rS|j|�n|dk	ro|j|�n|dk	r�|j|�n|dk	r�|j	|�n|j
|tj|	|�t|�S(N(
t
_checkflagt
_openDBEnvRtDBt	set_flagsRtset_pagesizet
set_lordert
set_h_ffactortset_h_nelemtopentDB_HASHR#(tfiletflagtmodetpgsizetffactortnelemt	cachesizetlorderthflagstflagstetd((s&/usr/lib64/python2.7/bsddb/__init__.pythashopenas
c	Cs�t||�}	t|�}
tj|
�}|dk	rF|j|�n|dk	rb|j|�n|j|�|dk	r�|j|�n|dk	r�|j	|�n|j
|tj|	|�t|�S(N(
RORPRRQRRSRTRRt
set_bt_minkeyt
set_bt_maxkeyRWtDB_BTREER#(RYRZR[tbtflagsR_t
maxkeypaget
minkeypageR\R`RbRcRd((s&/usr/lib64/python2.7/bsddb/__init__.pytbtopenqs
cCst||�}t|�}tj|�}
|dk	rF|
j|�n|dk	rb|
j|�n|
j|�|dk	r�|
j|�n|dk	r�|
j	|�n|	dk	r�|
j
|	�n|
dk	r�|
j|
�n|
j|tj
||�t|
�S(N(RORPRRQRRSRTRRtset_re_delimt
set_re_lent
set_re_sourcet
set_re_padRWtDB_RECNOR#(RYRZR[trnflagsR_R\R`trlentdelimtsourcetpadRbRcRd((s&/usr/lib64/python2.7/bsddb/__init__.pytrnopen�s$
cCs�tj�}|dk	rC|dkr7|jd|�qCtd�n|jtj�|jdtjtj	Btj
BtjBtjB�|S(NiPiscachesize must be >= 20480t.(
RtDBEnvRt
set_cachesizeR2t
set_lk_detecttDB_LOCK_DEFAULTRWt
DB_PRIVATEt	DB_CREATEt	DB_THREADtDB_INIT_LOCKt
DB_INIT_MPOOL(R_Rc((s&/usr/lib64/python2.7/bsddb/__init__.pyRP�s/cCs�|dkrtj}n�|dkr-d}n|dkrEtj}ng|dkr]tj}nO|dkr�tj}|dk	r�tjj|�r�tj|�q�n	td�|tj	BS(NtrtrwitwR/tns+flags should be one of 'r', 'w', 'c' or 'n'(
Rt	DB_RDONLYR~RtostpathtisfiletunlinkR2R(RZRYRb((s&/usr/lib64/python2.7/bsddb/__init__.pyRO�s			(ii(ii(ii()RKRLRMtabsolute_importtwarningstpy3kwarningR!twarnpy3ktDeprecationWarningtfilterwarningst_pybsddbRtbsddb3.dbutilsRRt
bsddb.dbutilstImportErrortmodulesRt_dbt__version__R,R2R�tweakrefRtUserDictt	DictMixintMutableMappingtcollectionsRR#RReRlRwRPROtthreadtTR(((s&/usr/lib64/python2.7/bsddb/__init__.pyt<module>(sb	




			b�