³ò ÷$•Jc @sddklZlZlZlZddklZddkZddkZddk Z ddk Z ddk Z ddk Z ddk Z e iZdefd„ƒYZdefd„ƒYZdefd „ƒYZd efd „ƒYZd efd „ƒYZdefd„ƒYZdS(iÿÿÿÿ(tnullidtnullrevtshortthex(t_Nt changectxcBs¯eZdZdd„Zd„Zd„Zd„Zd„Zd„Zd„Z d „Z e d „ƒZ e d „ƒZ e d „ƒZe d „ƒZe d„ƒZd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Z d„Z!d „Z"d!„Z#d"„Z$d#„Z%d$„Z&d%„Z'd&„Z(d'„Z)d,d,d(„Z+d)„Z,d*„Z-d+„Z.RS(-s]A changecontext object makes access to data related to a particular changeset convenient.tcCs|djo d}n||_t|ttfƒo%||_|iii|ƒ|_n1|ii|ƒ|_|iii |iƒ|_dS(s+changeid is a revision number, node, or tagRt.N( t_repot isinstancetlongtintt_revt changelogtnodet_nodetlookuptrev(tselftrepotchangeid((s$/sys/lib/python/mercurial/context.pyt__init__s    cCst|iƒƒS(N(RR(R((s$/sys/lib/python/mercurial/context.pyt__str__scCs |iƒS(N(R(R((s$/sys/lib/python/mercurial/context.pyt__int__!scCsdt|ƒS(Ns(tstr(R((s$/sys/lib/python/mercurial/context.pyt__repr__$scCs5yt|iƒSWntj ot|ƒSnXdS(N(thashR tAttributeErrortid(R((s$/sys/lib/python/mercurial/context.pyt__hash__'scCs2y|i|ijSWntj o tSnXdS(N(R RtFalse(Rtother((s$/sys/lib/python/mercurial/context.pyt__eq__-scCs ||j S(N((RR((s$/sys/lib/python/mercurial/context.pyt__ne__3scCs |itjS(N(R R(R((s$/sys/lib/python/mercurial/context.pyt __nonzero__6scCs|iii|iƒƒS(N(RR treadR(R((s$/sys/lib/python/mercurial/context.pyt _changeset9scCs|iii|idƒS(Ni(RtmanifestR#R$(R((s$/sys/lib/python/mercurial/context.pyt _manifest=scCs|iii|idƒS(Ni(RR%t readdeltaR$(R((s$/sys/lib/python/mercurial/context.pyt_manifestdeltaAscCsb|iii|iƒ}|dtjo|d }ng}|D]}|t|i|ƒqB~S(Niiÿÿÿÿ(RR t parentrevsR RR(Rtpt_[1]tx((s$/sys/lib/python/mercurial/context.pyt_parentsEscCs ti|ƒS(N(tsubrepotstate(R((s$/sys/lib/python/mercurial/context.pytsubstateLscCs ||ijS(N(R&(Rtkey((s$/sys/lib/python/mercurial/context.pyt __contains__PscCs |i|ƒS(N(tfilectx(RR1((s$/sys/lib/python/mercurial/context.pyt __getitem__Ssccs#xt|iƒD] }|VqWdS(N(tsortedR&(Rtf((s$/sys/lib/python/mercurial/context.pyt__iter__VscCs|iS(N(R$(R((s$/sys/lib/python/mercurial/context.pyt changesetZscCs|iS(N(R&(R((s$/sys/lib/python/mercurial/context.pyR%[scCs |idS(Ni(R$(R((s$/sys/lib/python/mercurial/context.pyt manifestnode\scCs|iS(N(R (R((s$/sys/lib/python/mercurial/context.pyR^scCs|iS(N(R(R((s$/sys/lib/python/mercurial/context.pyR_scCs t|iƒS(N(RR(R((s$/sys/lib/python/mercurial/context.pyR`scCs |idS(Ni(R$(R((s$/sys/lib/python/mercurial/context.pytuserascCs |idS(Ni(R$(R((s$/sys/lib/python/mercurial/context.pytdatebscCs |idS(Ni(R$(R((s$/sys/lib/python/mercurial/context.pytfilescscCs |idS(Ni(R$(R((s$/sys/lib/python/mercurial/context.pyt descriptiondscCs|ididƒS(Nitbranch(R$tget(R((s$/sys/lib/python/mercurial/context.pyR>escCs |idS(Ni(R$(R((s$/sys/lib/python/mercurial/context.pytextrafscCs|ii|iƒS(N(RtnodetagsR(R((s$/sys/lib/python/mercurial/context.pyttagsgscCs|iS(s)return contexts for each parent changeset(R-(R((s$/sys/lib/python/mercurial/context.pytparentsiscCs |idS(Ni(R-(R((s$/sys/lib/python/mercurial/context.pytp1mscCs5t|iƒdjo|idSnt|idƒS(Niiiÿÿÿÿ(tlenR-RR(R((s$/sys/lib/python/mercurial/context.pytp2pscCsC|iii|iƒ}g}|D]}|t|i|ƒq#~S(s(return contexts for each child changeset(RR tchildrenRR(RtcR+R,((s$/sys/lib/python/mercurial/context.pyRGusccs8x1|iii|iƒD]}t|i|ƒVqWdS(N(RR t ancestorsR R(Rta((s$/sys/lib/python/mercurial/context.pyRIzsccs8x1|iii|iƒD]}t|i|ƒVqWdS(N(RR t descendantsR R(Rtd((s$/sys/lib/python/mercurial/context.pyRK~scCsd|ijoYy!|i||ii|ƒfSWqitj o%ti|i|tdƒƒ‚qiXnd|ijp||iƒjo5||i jo!|i ||i i|ƒfSqÁn|i i i |i d|ƒ\}}|p"ti|i|tdƒƒ‚n||fS(NR&snot found in manifestR(i(t__dict__R&tflagstKeyErrorterrort LookupErrorRRR<R(RR%tfindR$(RtpathRtflag((s$/sys/lib/python/mercurial/context.pyt _fileinfo‚s!#%%cCs|i|ƒdS(Ni(RU(RRS((s$/sys/lib/python/mercurial/context.pytfilenode“scCs6y|i|ƒdSWntij o dSnXdS(NiR(RURPRQ(RRS((s$/sys/lib/python/mercurial/context.pyRN–sc CsB|djo|i|ƒ}nt|i|d|d|d|ƒS(s&get a file context from this changesettfileidRtfilelogN(tNoneRVR3R(RRSRWRX((s$/sys/lib/python/mercurial/context.pyR3œs cCs.|iii|i|iƒ}t|i|ƒS(s< return the ancestor context of self and c2 (RR tancestorRR(Rtc2tn((s$/sys/lib/python/mercurial/context.pyRZ£sccsØt|iƒƒ}|idƒxh|D]`}xA|D]9}||jp|id|ƒo|i|ƒPq3q3W||ƒo |Vq&q&WxGt|ƒD]9}|i|dt|ƒƒo||ƒo |Vq—q—WdS(NRs%s/sNo such file in rev (tsetR<tdiscardt startswithtremoveR5tbadR(Rtmatchtfsettfntffn((s$/sys/lib/python/mercurial/context.pytwalkªs !     *cCsti||ƒS(N(R.(RRS((s$/sys/lib/python/mercurial/context.pytsub»sN(/t__name__t __module__t__doc__RRRRRR R!R"t propertycacheR$R&R(R-R0R2R4R7R8R%R9RRRR:R;R<R=R>R@RBRCRDRFRGRIRKRURVRNRYR3RZRfRg(((s$/sys/lib/python/mercurial/context.pyRsV                                  R3cBsšeZdZd'd'd'd'd„Zed„ƒZed„ƒZed„ƒZed„ƒZ ed„ƒZ ed„ƒZ d„Z d „Z d „Zd „Zd „Zd „Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Z d„Z!d„Z"d„Z#d „Z$d!„Z%d"„Z&d#„Z'd$„Z(e)d'd%„Z*d&„Z+RS((saA filecontext object makes access to data related to a particular filerevision convenient.cCs¶||_||_|dj p1|dj p$|dj ptd|||f‚|o ||_n|dj o ||_n|dj o ||_n|dj o ||_ndS(sechangeid can be a changeset revision, node, or tag. fileid can be a file revision or node.s.bad args: changeid=%r, fileid=%r, changectx=%rN(Rt_pathRYtAssertionErrort_filelogt _changeidt _changectxt_fileid(RRRSRRWRXR((s$/sys/lib/python/mercurial/context.pyRÁs          cCst|i|iƒS(N(RRRo(R((s$/sys/lib/python/mercurial/context.pyRpØscCs|ii|iƒS(N(RtfileRl(R((s$/sys/lib/python/mercurial/context.pyRnÜscCs8d|ijo|iiƒSn|ii|iƒSdS(NRp(RMRpRRntlinkrevt_filerev(R((s$/sys/lib/python/mercurial/context.pyRoàscCs>d|ijo|ii|iƒSn|ii|iƒSdS(NRq(RMRnRRqRpRVRl(R((s$/sys/lib/python/mercurial/context.pyt _filenodeçscCs|ii|iƒS(N(RnRRu(R((s$/sys/lib/python/mercurial/context.pyRtîscCs|iS(N(Rl(R((s$/sys/lib/python/mercurial/context.pyt _repopathòscCs0y|itSWntij o tSnXdS(N(RutTrueRPRQR(R((s$/sys/lib/python/mercurial/context.pyR"ös cCs d|iƒt|iƒƒfS(Ns%s@%s(RSRR(R((s$/sys/lib/python/mercurial/context.pyRþscCsdt|ƒS(Ns (R(R((s$/sys/lib/python/mercurial/context.pyRscCs>yt|i|ifƒSWntj ot|ƒSnXdS(N(RRlRqRR(R((s$/sys/lib/python/mercurial/context.pyRscCsEy'|i|ijo|i|ijSWntj o tSnXdS(N(RlRqRR(RR((s$/sys/lib/python/mercurial/context.pyR s cCs ||j S(N((RR((s$/sys/lib/python/mercurial/context.pyR!scCs"t|i|id|d|iƒS(sMopens an arbitrary revision of the file without opening a new filelogRWRX(R3RRlRn(RRW((s$/sys/lib/python/mercurial/context.pyR3scCs|iS(N(Rt(R((s$/sys/lib/python/mercurial/context.pytfilerevscCs|iS(N(Ru(R((s$/sys/lib/python/mercurial/context.pyRVscCs|ii|iƒS(N(RpRNRl(R((s$/sys/lib/python/mercurial/context.pyRNscCs|iS(N(Rn(R((s$/sys/lib/python/mercurial/context.pyRXscCsUd|ijo|iiƒSnd|ijo|iiƒSn|ii|iƒS(NRpRo(RMRpRRnRsRt(R((s$/sys/lib/python/mercurial/context.pyRs cCs|ii|iƒS(N(RnRsRt(R((s$/sys/lib/python/mercurial/context.pyRs&scCs |iiƒS(N(RpR(R((s$/sys/lib/python/mercurial/context.pyR'scCst|iƒƒS(N(RR(R((s$/sys/lib/python/mercurial/context.pyR(scCs |iiƒS(N(RpR:(R((s$/sys/lib/python/mercurial/context.pyR:)scCs |iiƒS(N(RpR;(R((s$/sys/lib/python/mercurial/context.pyR;*scCs |iiƒS(N(RpR<(R((s$/sys/lib/python/mercurial/context.pyR<+scCs |iiƒS(N(RpR=(R((s$/sys/lib/python/mercurial/context.pyR=,scCs |iiƒS(N(RpR>(R((s$/sys/lib/python/mercurial/context.pyR>-scCs |iiƒS(N(RpR%(R((s$/sys/lib/python/mercurial/context.pyR%.scCs|iS(N(Rp(R((s$/sys/lib/python/mercurial/context.pyR/scCs|ii|iƒS(N(RnR#Ru(R((s$/sys/lib/python/mercurial/context.pytdata1scCs|iS(N(Rl(R((s$/sys/lib/python/mercurial/context.pyRS2scCs|ii|iƒS(N(RntsizeRt(R((s$/sys/lib/python/mercurial/context.pyRz3scCs|ii|i|ƒS(N(RntcmpRu(Rttext((s$/sys/lib/python/mercurial/context.pyR{5scCs³|ii|iƒ}|p|Sn|iƒ|iƒjo|Sn|iƒ}|i}xR|iiƒD]A}y"||i|ƒjodSnWqjt i j oqjXqjW|S(s#check if file was actually renamed in this changeset revision If rename logged in file revision, we report copy for changeset only if file revisions linkrev points back to the changeset in question or both changeset parents contain different file revisions. N( RntrenamedRuRRsRSRpRCRVRYRPRQ(RR}tnametfnodeR*((s$/sys/lib/python/mercurial/context.pyR}7s    c Cs×|i}|i}g}|ii|iƒD]}||||fq,~}|ii|iƒ}|o|d|ddf|dscsB|ˆijo ˆip ˆ|ƒ}tˆi|d|d|ƒS(NRWRX(RlRnR3R(RSRWtlog(Rtgetlog(s$/sys/lib/python/mercurial/context.pytgetctx‚s&cs|i}|idjo=g}|iƒD]}||iƒ|iƒfq*~}n7g}|ii|iƒD]}|||fqp~}ˆoF|iƒ}|o/|dˆ|dƒi |dƒf|dR%RRyRSRzR{R}RCRGRR§RZ(((s$/sys/lib/python/mercurial/context.pyR3¾sP                            ^t workingctxcBsIeZdZddddddd„Zd„Zd„Zd„Zed„ƒZ ed„ƒZ ed„ƒZ ed „ƒZ ed „ƒZ d „Zd „Zd „Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zdd„Zd„Zd„Z e!d„Z"RS( s¾A workingctx object makes access to data related to the current working directory convenient. parents - a pair of parent nodeids, or None to use the dirstate. date - any valid date string or (unixtime, offset), or None. user - username string, or None. extra - a dictionary of extra values, or None. changes - a list of file lists as returned by localrepo.status() or None to use the repository status. Rc Csp||_d|_d|_||_|oti|ƒ|_n|o ||_n|o4g}|D]} |t |i| ƒqg~|_ n|ot |ƒ|_ nh|_ |o|iƒ|_ nd|i joj|iiiƒ} y| idƒidƒ} Wn(tj otitdƒƒ‚nX| |i dsUTF-8sbranch name not in UTF-8!Rtdefault(RRYR Rt_textRšt parsedatet_datet_userRR-tlistt_statust_extratcopytdirstateR>tdecodetencodetUnicodeDecodeErrortAbortR( RRRCR|R:R;R@tchangesR+R*R>((s$/sys/lib/python/mercurial/context.pyRîs0     4 cCst|idƒdS(Nit+(RR-(R((s$/sys/lib/python/mercurial/context.pyR scCstS(N(Rw(R((s$/sys/lib/python/mercurial/context.pyR" scCs|ii|djS(Ns?r(RR¹(RR1((s$/sys/lib/python/mercurial/context.pyR2sc s8|idiƒiƒ‰|iiiƒ‰‡‡fd†}|iii|ƒ}|id \}}}}}x–d|fd|fd|ffD]s\}} xd| D]\} ˆiˆi| | ƒt ƒ|ˆ| scCs|ip|iiiƒS(N(R´RRÏRÐ(R((s$/sys/lib/python/mercurial/context.pyR:@scCs|iS(N(R³(R((s$/sys/lib/python/mercurial/context.pyR;AscCs|iS(N(R±(R((s$/sys/lib/python/mercurial/context.pyR=BscCs't|id|id|idƒS(Niii(R5R¶(R((s$/sys/lib/python/mercurial/context.pyR<CscCs |idS(Ni(R¶(R((s$/sys/lib/python/mercurial/context.pyRÉFscCs |idS(Ni(R¶(R((s$/sys/lib/python/mercurial/context.pyRÊGscCs |idS(Ni(R¶(R((s$/sys/lib/python/mercurial/context.pyRËHscCs |idS(Ni(R¶(R((s$/sys/lib/python/mercurial/context.pyRÌIscCs |idS(Ni(R¶(R((s$/sys/lib/python/mercurial/context.pyRÍJscCs |idS(Ni(R¶(R((s$/sys/lib/python/mercurial/context.pytcleanKscCs |idS(NR>(R·(R((s$/sys/lib/python/mercurial/context.pyR>LscCs|iS(N(R·(R((s$/sys/lib/python/mercurial/context.pyR@MscCs>g}g}|iƒD]}||i|iƒƒq~|S(N(RCRžRB(RttR+R*((s$/sys/lib/python/mercurial/context.pyRBOs4cCsgS(N((R((s$/sys/lib/python/mercurial/context.pyRGTsc sd|ijo2y|ii|ƒSWqBtj o dSqBXn|idiƒd}|iiiƒi ||ƒ}|ii i ||ƒ\}‰y,|iii ‡fd†ƒ}||ƒSWnt j onX| p&||iƒjp||iƒjodSnˆS(NR&Rics ˆpdS(R((R,(RT(s$/sys/lib/python/mercurial/context.pyR”bs(RMR&RNROR-R8RR¹RÄR?R%RRRÅRÆRÌRË(RRStpnodetorigRRÈ((RTs$/sys/lib/python/mercurial/context.pyRNWs  .cCst|i|d|d|ƒS(s-get a file context from the working directoryR¯RX(tworkingfilectxR(RRSRX((s$/sys/lib/python/mercurial/context.pyR3kscCs|idi|ƒS(s*return the ancestor context of self and c2i(R-RZ(RR[((s$/sys/lib/python/mercurial/context.pyRZpscCst|iii|ttƒƒS(N(R5RR¹RfRwR(RRb((s$/sys/lib/python/mercurial/context.pyRftscCsd|iƒpW|iƒ|iƒiƒjp8|iƒp+|iƒp|iƒp|o |iƒS(s-check whether a working directory is modified(RFR>RDRÉRÊRËRÌ(Rtmissing((s$/sys/lib/python/mercurial/context.pytdirtyws,'N(#RhRiRjRYRRR"R2RkR&R¶R´R³R-R%R:R;R=R<RÉRÊRËRÌRÍRÒR>R@RBRGRNR3RZRfRRØ(((s$/sys/lib/python/mercurial/context.pyR¯äs>                        RÖcBs}eZdZd d d„Zed„ƒZd„Zd„Zd„Z d„Z d„Z d„Z d „Z d „Zd „ZRS( suA workingfilectx object makes access to data related to a particular file in the working directory convenient.cCsW||_||_d|_d|_|_|o ||_n|o ||_ndS(sechangeid can be a changeset revision, node, or tag. fileid can be a file revision or node.N(RRlRYRoRtRuRnRp(RRRSRXR¯((s$/sys/lib/python/mercurial/context.pyRs    cCs t|iƒS(N(R¯R(R((s$/sys/lib/python/mercurial/context.pyRpŽscCstS(N(Rw(R((s$/sys/lib/python/mercurial/context.pyR"’scCsd|iƒ|ifS(Ns%s@%s(RSRp(R((s$/sys/lib/python/mercurial/context.pyR•scCs|ii|iƒS(N(RtwreadRl(R((s$/sys/lib/python/mercurial/context.pyRy˜scCsJ|iii|iƒ}|pdSn||iidii|t ƒfS(Ni( RR¹RÀRlRYRpR-R&R?R(Rtrp((s$/sys/lib/python/mercurial/context.pyR}™sc Csïd„}|i}|i}|ii}|iƒ}|o|dg}n |||d|ƒ|fg}x1|dD]%}|i||||ƒ|fƒquWg}|D]?\} } } | tjo#|t|i | d| d| ƒq©q©~S(s5return parent filectxs, following copies if necessarycSs|ii|tƒS(N(R&R?R(tctxRS((s$/sys/lib/python/mercurial/context.pyRV¡siiRWRXN(N( RlRnRpR-R}RYRRR3R( RRVRSR€tpclR}RtpcR+R*R\R„((s$/sys/lib/python/mercurial/context.pyRCŸs      #cCsgS(N((R((s$/sys/lib/python/mercurial/context.pyRG´scCsti|ii|iƒƒiS(N(toststatRtwjoinRltst_size(R((s$/sys/lib/python/mercurial/context.pyRz·scCs„|iiƒ\}}y/tti|ii|iƒƒiƒ|fSWn9t j o-}|i t i jo‚n||fSnXdS(N( RpR;R RÞtlstatRRàRltst_mtimeRÆterrnotENOENT(RRÓttzterr((s$/sys/lib/python/mercurial/context.pyR;¸s /cCs|ii|iƒ|jS(N(RRÙRl(RR|((s$/sys/lib/python/mercurial/context.pyR{ÀsN(RhRiRjRYRRkRpR"RRyR}RCRGRzR;R{(((s$/sys/lib/python/mercurial/context.pyRÖ~s         tmemctxcBsàeZdZdddd„Zd„Zd„Zd„Zd„Zd„Z d„Z d„Z d „Z d „Z d „Zd „Zd „Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zdd„ZRS(s;Use memctx to perform in-memory commits via localrepo.commitctx(). Revision information is supplied at initialization time while related files data and is made available through a callback mechanism. 'repo' is the current localrepo, 'parents' is a sequence of two parent revisions identifiers (pass None for every missing parent), 'text' is the commit message and 'files' lists names of files touched by the revision (normalized and relative to repository root). filectxfn(repo, memctx, path) is a callable receiving the repository, the current memctx object and the normalized path of requested file, relative to repository root. It is fired by the commit function for every file in 'files', but calls order is undefined. If the file is available in the revision being committed (updated or added), filectxfn returns a memfilectx object. If the file was removed, filectxfn raises an IOError. Moved files are represented by marking the source file removed and the new file added with copy information (see memfilectx). user receives the committer name and defaults to current repository username, date is the commit date in any format supported by util.parsedate() and defaults to current date, extra is a dictionary of metadata or is left empty. c  Cs\||_d|_d|_||_|oti|ƒp tiƒ|_||_ g} |D]} | | pt q^~ }|\} } g} | | fD]} | t |i| ƒq˜~ |_ t t|ƒƒ}|ggggg|_||_|o |iƒph|_d|ijod|idR°R(RRYR RR±RšR²RÑR³R´RRR-R5R]R¶t _filectxfnR¸R·R?(RRRCR|R<t filectxfnR:R;R@R+R*RDRFRƒ((s$/sys/lib/python/mercurial/context.pyRÝs"    & ( 6 cCst|idƒdS(NiR¿(RR-(R((s$/sys/lib/python/mercurial/context.pyRòscCs|iS(N(R (R((s$/sys/lib/python/mercurial/context.pyRõscCstS(N(Rw(R((s$/sys/lib/python/mercurial/context.pyR"øscCs |i|ƒS(N(R3(RR1((s$/sys/lib/python/mercurial/context.pyR4ûscCs |idS(Ni(R-(R((s$/sys/lib/python/mercurial/context.pyRDþscCs |idS(Ni(R-(R((s$/sys/lib/python/mercurial/context.pyRFÿscCs|ip|iiiƒS(N(R´RRÏRÐ(R((s$/sys/lib/python/mercurial/context.pyR:scCs|iS(N(R³(R((s$/sys/lib/python/mercurial/context.pyR;scCs|iS(N(R±(R((s$/sys/lib/python/mercurial/context.pyR=scCs |iƒS(N(RÉ(R((s$/sys/lib/python/mercurial/context.pyR<scCs |idS(Ni(R¶(R((s$/sys/lib/python/mercurial/context.pyRÉscCs |idS(Ni(R¶(R((s$/sys/lib/python/mercurial/context.pyRÊscCs |idS(Ni(R¶(R((s$/sys/lib/python/mercurial/context.pyRËscCs |idS(Ni(R¶(R((s$/sys/lib/python/mercurial/context.pyRÌscCs |idS(Ni(R¶(R((s$/sys/lib/python/mercurial/context.pyRÍ scCs |idS(Ni(R¶(R((s$/sys/lib/python/mercurial/context.pyRÒ scCs |idS(NR>(R·(R((s$/sys/lib/python/mercurial/context.pyR> scCs|iS(N(R·(R((s$/sys/lib/python/mercurial/context.pyR@ scCs||iƒS(N(RN(RR6((s$/sys/lib/python/mercurial/context.pyRN scCs|iS(s)return contexts for each parent changeset(R-(R((s$/sys/lib/python/mercurial/context.pyRCscCs|i|i||ƒS(s-get a file context from the working directory(RéR(RRSRX((s$/sys/lib/python/mercurial/context.pyR3sN(RhRiRjRYRRRR"R4RDRFR:R;R=R<RÉRÊRËRÌRÍRÒR>R@RNRCR3(((s$/sys/lib/python/mercurial/context.pyRèÂs0                    t memfilectxcBs_eZdZd„Zd„Zd„Zd„Zd„Zd„Zd„Z d„Z d „Z RS( sYmemfilectx represents an in-memory file to commit. See memctx for more details. cCsb||_||_|odpd|odpd|_d|_|o|tf|_ndS(sQ path is the normalized file path relative to repository root. data is the file content as a string. islink is True if the file is a symbolic link. isexec is True if the file is executable. copied is the source file path if current file was copied in the revision being committed, or None.R„RR,N(Rlt_datat_flagsRYt_copiedR(RRSRytislinktisexecRÀ((s$/sys/lib/python/mercurial/context.pyRs   ) cCstS(N(Rw(R((s$/sys/lib/python/mercurial/context.pyR"+scCsd|iƒ|ifS(Ns%s@%s(RSRp(R((s$/sys/lib/python/mercurial/context.pyR,scCs|iS(N(Rl(R((s$/sys/lib/python/mercurial/context.pyRS-scCs|iS(N(Rì(R((s$/sys/lib/python/mercurial/context.pyRy.scCs|iS(N(Rí(R((s$/sys/lib/python/mercurial/context.pyRN/scCs d|ijS(NR,(Rí(R((s$/sys/lib/python/mercurial/context.pyRð0scCs d|ijS(NR„(Rí(R((s$/sys/lib/python/mercurial/context.pyRï1scCs|iS(N(Rî(R((s$/sys/lib/python/mercurial/context.pyR}2s( RhRiRjRR"RRSRyRNRðRïR}(((s$/sys/lib/python/mercurial/context.pyRës        (RRRRRti18nRRZR‹RPRšR.RÞRäRktobjectRR3R¯RÖRèRë(((s$/sys/lib/python/mercurial/context.pyss"< ¯ÿ'šDU