HEX

Warning: set_time_limit() [function.set-time-limit]: Cannot set time limit - prohibited by configuration in /home/u547966/brikov.ru/www/wp-content/plugins/admin-menu-editor/menu-editor.php on line 745
Server: Apache
System: Linux 4.19.0-0.bpo.9-amd64 x86_64 at red40
User: u547966 (5490)
PHP: 5.3.29-mh2
Disabled: syslog, dl, popen, proc_open, proc_nice, proc_get_status, proc_close, proc_terminate, posix_mkfifo, chown, chgrp, accelerator_reset, opcache_reset, accelerator_get_status, opcache_get_status, pcntl_alarm, pcntl_fork, pcntl_waitpid, pcntl_wait, pcntl_wifexited, pcntl_wifstopped, pcntl_wifsignaled, pcntl_wifcontinued, pcntl_wexitstatus, pcntl_wtermsig, pcntl_wstopsig, pcntl_signal, pcntl_signal_dispatch, pcntl_get_last_error, pcntl_strerror, pcntl_sigprocmask, pcntl_sigwaitinfo, pcntl_sigtimedwait, pcntl_exec, pcntl_getpriority, pcntl_setpriority
Upload Files
File: //usr/lib/python2.7/dist-packages/mercurial/dagutil.pyc
σ
ΫXc@@s₯ddlmZddlmZddlmZdefd„ƒYZdefd„ƒYZd	efd
„ƒYZ	de	fd„ƒYZ
d
e	efd„ƒYZdS(i(tabsolute_importi(t_(tnullrevtbasedagcB@sƒeZdZd„Zd„Zd„Zd„Zd„Zd
d„Z	d
d„Z
d„Zd	„Zd
„Z
d„Zed„ZRS(sπgeneric interface for DAGs

    terms:
    "ix" (short for index) identifies a nodes internally,
    "id" identifies one externally.

    All params are ixs unless explicitly suffixed otherwise.
    Pluralized params are lists or sets.
    cC@s
d|_dS(N(tNonet_inverse(tself((s5/usr/lib/python2.7/dist-packages/mercurial/dagutil.pyt__init__scC@s
t‚dS(sset of all node ixsN(tNotImplementedError(R((s5/usr/lib/python2.7/dist-packages/mercurial/dagutil.pytnodesetscC@s
t‚dS(slist of head ixsN(R(R((s5/usr/lib/python2.7/dist-packages/mercurial/dagutil.pytheads scC@s
t‚dS(slist of parents ixs of ixN(R(Rtix((s5/usr/lib/python2.7/dist-packages/mercurial/dagutil.pytparents$scC@s
t‚dS(s1inverse DAG, where parents becomes children, etc.N(R(R((s5/usr/lib/python2.7/dist-packages/mercurial/dagutil.pytinverse(scC@s
t‚dS(sV
        set of all ancestors of starts (incl), but stop walk at stops (excl)
        N(R(Rtstartststops((s5/usr/lib/python2.7/dist-packages/mercurial/dagutil.pytancestorset,scC@s|jƒj||ƒS(sX
        set of all descendants of starts (incl), but stop walk at stops (excl)
        (R
R(RRR((s5/usr/lib/python2.7/dist-packages/mercurial/dagutil.pyt
descendantset2scC@s
t‚dS(sι
        subset of connected list of ixs so that no node has a descendant in it

        By "connected list" we mean that if an ancestor and a descendant are in
        the list, then so is at least one path connecting them.
        N(R(Rtixs((s5/usr/lib/python2.7/dist-packages/mercurial/dagutil.pytheadsetofconnecteds8scC@s
|j|ƒS(sreturn a node id(t_externalize(RR((s5/usr/lib/python2.7/dist-packages/mercurial/dagutil.pytexternalizeAscC@s2|j|ƒ}t|tƒr(t|ƒSt|ƒS(s4return a list of (or set if given a set) of node ids(t_externalizeallt
isinstancetsettlist(RRtids((s5/usr/lib/python2.7/dist-packages/mercurial/dagutil.pytexternalizeallEs
cC@s
|j|ƒS(sreturn a node ix(t_internalize(Rtid((s5/usr/lib/python2.7/dist-packages/mercurial/dagutil.pytinternalizeLscC@s5|j||ƒ}t|tƒr+t|ƒSt|ƒS(s4return a list of (or set if given a set) of node ixs(t_internalizeallRRR(RRt
filterunknownR((s5/usr/lib/python2.7/dist-packages/mercurial/dagutil.pytinternalizeallPs
N(t__name__t
__module__t__doc__RR	R
RR
RRRRRRRtFalseR!(((s5/usr/lib/python2.7/dist-packages/mercurial/dagutil.pyRs											t
genericdagcB@s#eZdZdd„Zd„ZRS(s generic implementations for DAGscC@sŽ|rt|ƒ}n	tƒ}tƒ}t|ƒ}xT|r‰|jƒ}||kr6||kr6|j|ƒ|j|j|ƒƒq6q6W|S(N(RRtpoptaddtextendR(RRRtseentpendingtn((s5/usr/lib/python2.7/dist-packages/mercurial/dagutil.pyR[s			
cC@s^t|ƒ}|s|Sx5|D]-}x$|j|ƒD]}|j|ƒq3WqW|sZt‚|S(N(RRtdiscardtAssertionError(RRthdsR,tp((s5/usr/lib/python2.7/dist-packages/mercurial/dagutil.pyRis
N(R"R#R$RRR(((s5/usr/lib/python2.7/dist-packages/mercurial/dagutil.pyR&XstrevlogbaseddagcB@sMeZdZd„Zd„Zd„Zd„Zd„Zd„Zd„Z	RS(s!generic dag interface to a revlogcC@s,tj|ƒ||_d|_||_dS(N(RRt_revlogRt_headst_nodeset(RtrevlogR	((s5/usr/lib/python2.7/dist-packages/mercurial/dagutil.pyRws
		cC@s|jS(N(R4(R((s5/usr/lib/python2.7/dist-packages/mercurial/dagutil.pyR	}scC@s(|jdkr!|jƒ|_n|jS(N(R3Rt	_getheads(R((s5/usr/lib/python2.7/dist-packages/mercurial/dagutil.pyR
€scC@s|jj|dS(Ni(R2tindex(RR((s5/usr/lib/python2.7/dist-packages/mercurial/dagutil.pyR…scC@s+|jj}g|D]}||d^qS(Ni(R2R7(RRtidxti((s5/usr/lib/python2.7/dist-packages/mercurial/dagutil.pyR‡scC@sC|jj|ƒ}|tkr?t||jjtdƒƒ‚n|S(Ntnullid(R2trevRtLookupErrort	indexfileR(RRR((s5/usr/lib/python2.7/dist-packages/mercurial/dagutil.pyR‹s!cC@sl|j}|r\gt|jj|ƒD]3}|dk	r%|tkr%||jkr%|^q%St|j|ƒS(N(R2tmaptnodemaptgetRRtfilteredrevsR(RRR trltr((s5/usr/lib/python2.7/dist-packages/mercurial/dagutil.pyRs	(
R"R#R$RR	R
RRRR(((s5/usr/lib/python2.7/dist-packages/mercurial/dagutil.pyR1ts						t	revlogdagcB@sPeZdZd„Zd„Zd„Zd„Zdd„Zd„Z	d„Z
RS(	sdag interface to a revlogcC@stj||t|ƒƒdS(N(R1RR(RR5((s5/usr/lib/python2.7/dist-packages/mercurial/dagutil.pyRscC@s,g|jjƒD]}|tkr|^qS(N(R2theadrevsR(RRC((s5/usr/lib/python2.7/dist-packages/mercurial/dagutil.pyR6 scC@sz|j}|j}||}|d}|tkrY|d}|tkrO|gS||gS|d}|tkrv|gSgS(Nii(R2R7R(RRtrlogR8trevdatatprevtprev2((s5/usr/lib/python2.7/dist-packages/mercurial/dagutil.pyR£s		




cC@s(|jdkr!t|ƒ|_n|jS(N(RRtinverserevlogdag(R((s5/usr/lib/python2.7/dist-packages/mercurial/dagutil.pyR
²scC@sΡ|j}|j}|r't|ƒ}n	tƒ}tƒ}t|ƒ}x…|rΜ|jƒ}||krH||krH|j|ƒ||}x=ddgD],}	||	}
|
tkr–|j|
ƒq–q–WqHqHW|S(Nii(R2R7RRR'R(Rtappend(RRRRFR8R*R+R;RGR9RH((s5/usr/lib/python2.7/dist-packages/mercurial/dagutil.pyR·s"					


c	C@s“|s
tƒS|j}|j}t|ƒ}xU|D]M}||}x:ddgD],}||}|tkrO|j|ƒqOqOWq2W|st‚|S(Nii(RR2R7RR-R.(	RRRFR8RER;RGR9RH((s5/usr/lib/python2.7/dist-packages/mercurial/dagutil.pyRΛs		


cC@sg}t|j|ƒƒ}|jdtƒtƒ}x©|rί|jƒ}|dkrŒ|d}||krά|j|ƒ|j|ƒqάq7|j|dƒ|g|j|ƒD]$}||kr±||kr±|^q±7}q7Wt	|ƒt	|ƒksώt
‚|S(s­linearize and topologically sort a list of revisions

        The linearization process tries to create long runs of revs where
        a child rev comes immediately after its first parent. This is done by
        visiting the heads of the given revs in inverse topological order,
        and for each visited rev, visiting its second parent, then its first
        parent, then adding the rev itself to the output list.
        treverseii(RRtsorttTrueRR'RKR(RtlenR.(RRtsortedtvisittfinishedtcurR0((s5/usr/lib/python2.7/dist-packages/mercurial/dagutil.pyt	linearizeΪs 			
)N(R"R#R$RR6RR
RRRRT(((s5/usr/lib/python2.7/dist-packages/mercurial/dagutil.pyRDšs					RJcB@s;eZdZd„Zd„Zd„Zd„Zd„ZRS(s:inverse of an existing revlog dag; see revlogdag.inverse()cC@sNtj||j|jƒ||_i|_g|_t|jƒd|_dS(Ni(	R1RR2R4t_origt	_childrent_rootsROt	_walkfrom(Rtorig((s5/usr/lib/python2.7/dist-packages/mercurial/dagutil.pyRϊs
			c	C@sΔ|j}|j}|j}|jj}x||krΆ||}t}xJ|d|dgD]4}|tkr[|j|gƒj|ƒt	}q[q[W|r©|j|ƒn|d8}q*W||_dS(Niii(
RXRVRWR2R7RNRt
setdefaultRKR%(	RtwalktoR;tcstrootsR8tdatatisrootRH((s5/usr/lib/python2.7/dist-packages/mercurial/dagutil.pyt_walktos			

cC@s|jtƒ|jS(N(R`RRW(R((s5/usr/lib/python2.7/dist-packages/mercurial/dagutil.pyR6s
cC@sB|dkrgS||jkr/|j|ƒn|jj|gƒS(N(RRXR`RVR@(RR((s5/usr/lib/python2.7/dist-packages/mercurial/dagutil.pyRs
cC@s|jS(N(RU(R((s5/usr/lib/python2.7/dist-packages/mercurial/dagutil.pyR
s(R"R#R$RR`R6RR
(((s5/usr/lib/python2.7/dist-packages/mercurial/dagutil.pyRJχs				N(t
__future__Rti18nRtnodeRtobjectRR&R1RDRJ(((s5/usr/lib/python2.7/dist-packages/mercurial/dagutil.pyt<module>	sJ&]