�2Nc@sYddlZddlZejd�Zd�Zdd�Zdejfd��YZdS(i�Ns
cCs�|d dkrdStj|d�j�}|d|!}i}g}xC|j�D]5}|jdd�\}}|||<|j|�qRW|||dfS(s,return (metadatadict, keylist, metadatasize)is
s: iN(NNN(tNonet_mdretsearchtstartt
splitlinestsplittappend(ttexttstmtexttmetatkeystltktv((s5/sys/lib/python2.7/site-packages/mercurial/filelog.pyt
_parsemetas
cs8|st�j��}ndj�fd�|D��S(Ntc3s#|]}d|�|fVqdS(s%s: %s
N((t.0R
(R
(s5/sys/lib/python2.7/site-packages/mercurial/filelog.pys <genexpr>s(tsortedtiterkeystjoin(R
R((R
s5/sys/lib/python2.7/site-packages/mercurial/filelog.pyt _packmetastfilelogcBsMeZd�Zd�Zddd�Zd�Zd�Zd�Zd�Z RS(cCs-tjj||djd|df��dS(Nt/tdatas.i(trevlogt__init__R(tselftopenertpath((s5/sys/lib/python2.7/site-packages/mercurial/filelog.pyR!scCs@|j|�}|jd�s"|S|jdd�}||dS(Ns
i(trevisiont
startswithtindex(RtnodettR((s5/sys/lib/python2.7/site-packages/mercurial/filelog.pytread%s
cCsG|s|jd�r.dt|�|f}n|j|||||�S(Ns
s
%s
%s(RRtaddrevision(RRR
ttransactiontlinktp1tp2((s5/sys/lib/python2.7/site-packages/mercurial/filelog.pytadd,scCsp|j|�dtjkr tS|j|�}t|�d}|rld|krl|dtj|d�fStS(Nitcopytcopyrev(tparentsRtnullidtFalseRRtbin(RR!R"tm((s5/sys/lib/python2.7/site-packages/mercurial/filelog.pytrenamed1scCsD|j|�}|j|�r1t|j|��Stjj||�S(s#return the size of a given revision(R!R1tlenR#Rtsize(RtrevR!((s5/sys/lib/python2.7/site-packages/mercurial/filelog.pyR3:scCsq|}|jd�r"d|}ntjj|||�}|rEtS|j|�rm|j|�}||kStS(spcompare text with a given file revision
returns True if text is different than what is stored.
s
s
(RRtcmpR.R1R#tTrue(RR!RR"t
samehashestt2((s5/sys/lib/python2.7/site-packages/mercurial/filelog.pyR5Es
cCst|j|�S(N(RR(Rtf((s5/sys/lib/python2.7/site-packages/mercurial/filelog.pyt_file[sN(
t__name__t
__module__RR#RR)R1R3R5R:(((s5/sys/lib/python2.7/site-packages/mercurial/filelog.pyR s (RtretcompileRRRRR(((s5/sys/lib/python2.7/site-packages/mercurial/filelog.pyt<module>s
|