Plan 9 from Bell Labs’s /usr/web/sources/contrib/jas/root/sys/lib/python2.7/site-packages/mercurial/fileset.pyc

Copyright © 2021 Plan 9 Foundation.
Distributed under the MIT License.
Download the Plan 9 distribution.


��c@s�ddlZddlZddlZddlZddlZddlmZidd`dafd6d	dbdcfd
6dddfd6ddefd6d	ddffd6d	ddgfd6dddhfd6dddifd6dddjfd6dddkfd6dld6ddmdfd6ddndfd6dod6Ze	dddg�Z
dZd�Zejee�j
Z
d �Zd!�Zd"�Zd#�Zd$�Zd%�Zd&�Zd'�Zd(�Zd)�Zd*�Zd+�Zd,�Zd-�Zd.�Zd/�Zd0�Zd1�Zd2�Z d3�Z!d4�Z"d5�Z#d6�Z$d7�Z%d8�Z&e'd9dpd:dqd;drd<dsd=dtd>dud?dvdAdw�Z(dB�Z)dC�Z*dD�Z+dE�Z,dF�Z-dG�Z.dH�Z/iedI6e dJ6edK6e.dL6edM6e,dN6e-dO6e!dP6e&dQ6edR6e%dS6edT6edU6e#dV6e+dW6e"dX6edY6e$dZ6e/d[6Z0i	ed6ed6ed6ed6ed6ed6ed6ed6ed6Z1d\e2fd]��YZ3d^�Z4dJdPdQdWdXgZ5d_�Z6e0j7�Z8dS(xi�N(t_itgroupit)tfunct(itnegateitminust-i
tnott!tandt&itort|t+itlistt,itsymboltstringtends	.*{}[]?/\ccsadt|�}}x9||krN||}|j�r;n|dkrX|d|fVn�dks�|dkrU|||d!dkrU|dkr�|d7}||}d	�}n	d
�}|d7}|}xr||kr9||}|dkr|d7}q�n||kr,d||||!�|fVPn|d7}q�Wtjtd
�|��n�j�s|tkst|�dkr)|}|d7}xR||kr�|}|j�p�|tkp�t|�dks�Pn|d7}q�W|||!}|t	kr|d|fVnd||fV|d8}ntjtd�|��|d7}qWdd|fVdS(Nis(),-|&+!s"'trisr'sr"icSs|S(N((tx((s5/sys/lib/python2.7/site-packages/mercurial/fileset.pyt<lambda>-scSs
|jd�S(Ns
string-escape(tdecode(R((s5/sys/lib/python2.7/site-packages/mercurial/fileset.pyR/ss\Rsunterminated stringiRssyntax errorR(sr'sr"(
tlentisspacetNoneterrort
ParseErrorRtisalnumt	globcharstordtkeywords(tprogramtpostltcRtstdtsym((s5/sys/lib/python2.7/site-packages/mercurial/fileset.pyttokenize sT


	


*

*

cCsA|r.|ddks&|ddkr.|dStj|��dS(NiRRi(RR(Rterr((s5/sys/lib/python2.7/site-packages/mercurial/fileset.pyt	getstringSs&cCs7|stjtd���nt|d||d�S(Nsmissing argumentii(RRRtmethods(tmctxR((s5/sys/lib/python2.7/site-packages/mercurial/fileset.pytgetsetXscCs8|j|g�}g|jD]}||�r|^qS(N(tmatchertsubset(R,Rtmtf((s5/sys/lib/python2.7/site-packages/mercurial/fileset.pyt	stringset]scCst|jt||��|�S(N(R-tnarrow(R,Rty((s5/sys/lib/python2.7/site-packages/mercurial/fileset.pytandsetascCsEt||�}t||�}|g|D]}||kr(|^q(S(N(R-(R,RR4txltylR1((s5/sys/lib/python2.7/site-packages/mercurial/fileset.pytorsetdscCs;tt||��}g|jD]}||kr|^qS(N(tsetR-R/(R,RR%R((s5/sys/lib/python2.7/site-packages/mercurial/fileset.pytnotsetjscCsGt||�}tt||��}g|D]}||kr+|^q+S(N(R-R9(R,RR4R6R7R1((s5/sys/lib/python2.7/site-packages/mercurial/fileset.pytminussetnscCstjtd���dS(Ns can't use a list in this context(RRR(R,tatb((s5/sys/lib/python2.7/site-packages/mercurial/fileset.pytlistsetsscCsOt|ddtd��|j�d}g|jD]}||kr3|^q3S(sB``modified()``
    File that is modified according to status.
    ismodified takes no arguments(tgetargsRtstatusR/(R,RR%R1((s5/sys/lib/python2.7/site-packages/mercurial/fileset.pytmodifiedvscCsOt|ddtd��|j�d}g|jD]}||kr3|^q3S(s<``added()``
    File that is added according to status.
    isadded takes no argumentsi(R?RR@R/(R,RR%R1((s5/sys/lib/python2.7/site-packages/mercurial/fileset.pytaddedscCsOt|ddtd��|j�d}g|jD]}||kr3|^q3S(s@``removed()``
    File that is removed according to status.
    isremoved takes no argumentsi(R?RR@R/(R,RR%R1((s5/sys/lib/python2.7/site-packages/mercurial/fileset.pytremoved�scCsOt|ddtd��|j�d}g|jD]}||kr3|^q3S(s@``deleted()``
    File that is deleted according to status.
    isdeleted takes no argumentsi(R?RR@R/(R,RR%R1((s5/sys/lib/python2.7/site-packages/mercurial/fileset.pytdeleted�scCsOt|ddtd��|j�d}g|jD]}||kr3|^q3S(s�``unknown()``
    File that is unknown according to status. These files will only be
    considered if this predicate is used.
    isunknown takes no argumentsi(R?RR@R/(R,RR%R1((s5/sys/lib/python2.7/site-packages/mercurial/fileset.pytunknown�scCsOt|ddtd��|j�d}g|jD]}||kr3|^q3S(s�``ignored()``
    File that is ignored according to status. These files will only be
    considered if this predicate is used.
    isignored takes no argumentsi(R?RR@R/(R,RR%R1((s5/sys/lib/python2.7/site-packages/mercurial/fileset.pytignored�scCsOt|ddtd��|j�d}g|jD]}||kr3|^q3S(s<``clean()``
    File that is clean according to status.
    isclean takes no argumentsi(R?RR@R/(R,RR%R1((s5/sys/lib/python2.7/site-packages/mercurial/fileset.pytclean�scCsV|ddkr5|dtkr5t|d||�Stjtd�|d��dS(NiRisnot a function: %s(tsymbolsRRR(R,R<R=((s5/sys/lib/python2.7/site-packages/mercurial/fileset.pyR�s cCs:|s
gS|ddkr3t|d�|dgS|gS(NiRii(tgetlist(R((s5/sys/lib/python2.7/site-packages/mercurial/fileset.pyRI�s
cCsFt|�}t|�|ks0t|�|krBtj|��n|S(N(RIRRR(RtmintmaxR)R#((s5/sys/lib/python2.7/site-packages/mercurial/fileset.pyR?�s$cCsRt|ddtd��g|j�D](}tj|j|j��r&|^q&S(sJ``binary()``
    File that appears to be binary (contains NUL bytes).
    isbinary takes no arguments(R?Rtexistingtutiltbinarytctxtdata(R,RR1((s5/sys/lib/python2.7/site-packages/mercurial/fileset.pyRN�scCsNt|ddtd��g|j�D]$}|jj|�dkr&|^q&S(s6``exec()``
    File that is marked as executable.
    isexec takes no argumentsR(R?RRLROtflags(R,RR1((s5/sys/lib/python2.7/site-packages/mercurial/fileset.pytexec_�scCsNt|ddtd��g|j�D]$}|jj|�dkr&|^q&S(s8``symlink()``
    File that is marked as a symlink.
    issymlink takes no argumentsR#(R?RRLRORQ(R,RR1((s5/sys/lib/python2.7/site-packages/mercurial/fileset.pytsymlink�scCs}t|ddtd��|jj�dk	r2gStj|jj�}g|jD](}||krQ||dkrQ|^qQS(sT``resolved()``
    File that is marked resolved according to the resolve state.
    isresolved takes no argumentsRN(	R?RROtrevRtmerget
mergestatet_repoR/(R,RtmsR1((s5/sys/lib/python2.7/site-packages/mercurial/fileset.pytresolved�s
cCs}t|ddtd��|jj�dk	r2gStj|jj�}g|jD](}||krQ||dkrQ|^qQS(sX``unresolved()``
    File that is marked unresolved according to the resolve state.
    isunresolved takes no argumentstuN(	R?RRORTRRURVRWR/(R,RRXR1((s5/sys/lib/python2.7/site-packages/mercurial/fileset.pyt
unresolved�s
cCsQt|ddtd��|jjjj}g|jD]}||�r5|^q5S(sG``hgignore()``
    File that matches the active .hgignore pattern.
    ishgignore takes no arguments(R?RRORWtdirstatet_ignoreR/(R,RtignoreR1((s5/sys/lib/python2.7/site-packages/mercurial/fileset.pythgignore�scCs�y"tjt|td���}Wn/tjk
rS}tjtd�|��nXg|j�D](}|j|j|j	��ra|^qaS(sD``grep(regex)``
    File contains the given regular expression.
    sgrep requires a patternsinvalid match pattern: %s(
tretcompileR*RRRRLtsearchRORP(R,RRteR1((s5/sys/lib/python2.7/site-packages/mercurial/fileset.pytgrep�s
"tktKtkBtKBtMtMBtGitGBcCs�ye|j�}xHtj�D]:\}}|j|�rtt|t|� �|�SqWt|�SWn*tk
r�tj	t
d�|��nXdS(Nscouldn't parse size: %s(tstript_unitstitemstendswithtinttfloatRt
ValueErrorRRR(R%Retv((s5/sys/lib/python2.7/site-packages/mercurial/fileset.pyt
_sizetoint
s#
cCs�y�|j�}x�tj�D]~\}}|j|�r|t|� }d}d|kr~|dt|jd�d�:}ntt|�||�dSqWt|�SWn*tk
r�t	j
td�|��nXdS(Ng�.i
iscouldn't parse size: %s(RmRnRoRpRtsplitRqRrRsRRR(R%ReRttntinc((s5/sys/lib/python2.7/site-packages/mercurial/fileset.pyt
_sizetomaxs$ 
cs�t|td��j�}d|krl|jdd�\��t���t�����fd�}n'|jd�r�t|d���fd�}n�jd�r�t|d���fd	�}n�|jd
�r�|d���fd�}n�|jd�r0t|d���fd
�}nc|djsM|ddkrzt|��t|����fd�}ntj	td�|��g|j
�D]%}||j|j��r�|^q�S(s``size(expression)``
    File size matches the given expression. Examples:

    - 1k (files from 1024 to 2047 bytes)
    - < 20k (files less than 20480 bytes)
    - >= .5MB (files at least 524288 bytes)
    - 4k - 1MB (files from 4096 bytes to 1048576 bytes)
    ssize requires an expressionRics|�ko|�kS(N((R(R<R=(s5/sys/lib/python2.7/site-packages/mercurial/fileset.pyR7ss<=ics
|�kS(N((R(R<(s5/sys/lib/python2.7/site-packages/mercurial/fileset.pyR:st<cs
|�kS(N((R(R<(s5/sys/lib/python2.7/site-packages/mercurial/fileset.pyR=ss>=cs
|�kS(N((R(R<(s5/sys/lib/python2.7/site-packages/mercurial/fileset.pyR@st>cs
|�kS(N((R(R<(s5/sys/lib/python2.7/site-packages/mercurial/fileset.pyRCsiRvcs|�ko|�kS(N((R(R<R=(s5/sys/lib/python2.7/site-packages/mercurial/fileset.pyRGsscouldn't parse size: %s(
R*RRmRwRut
startswithtisdigitRzRRRLROtsize(R,RtexprR0R1((R<R=s5/sys/lib/python2.7/site-packages/mercurial/fileset.pyR's0cCs�t|td��}g}x�|j�D]w}|j|j�}y|j|�Wn=tk
r~tjtd�|��nt	k
r�q(nX|j
|�q(W|S(s�``encoding(name)``
    File can be successfully decoded with the given character
    encoding. May not be useful for encodings other than ASCII and
    UTF-8.
    s"encoding requires an encoding namesunknown encoding '%s'(R*RRLRORPRtLookupErrorRMtAborttUnicodeDecodeErrortappend(R,RtencR%R1R&((s5/sys/lib/python2.7/site-packages/mercurial/fileset.pytencodingMs

cCs�t|td��}g}x�|j�D]�}|j|j�}tj|�rVq(n|dksn|dkr�d|kr�|j|�q(|dkr�tj	d|�r�|j|�q(|dkr(tj	d|�r(|j|�q(q(W|S(	s�``eol(style)``
    File contains newlines of the given style (dos, unix, mac). Binary
    files are excluded, files with mixed line endings match multiple
    styles.
    s"encoding requires an encoding nametdostwins
tunixs(?<!
)
tmacs
(?!
)(
R*RRLRORPRMRNR�R`Rb(R,RR�R%R1R&((s5/sys/lib/python2.7/site-packages/mercurial/fileset.pyteolds$cCsvt|ddtd��g}xP|jD]E}|j|j�}|r)|dj�|kr)|j|�q)q)W|S(s<``copied()``
    File that is recorded as being copied.
    iscopied takes no arguments(R?RR/ROtparentstpathR�(R,RR%R1tp((s5/sys/lib/python2.7/site-packages/mercurial/fileset.pytcopied{scs�t|ddtd��|j}t|j�}|r�t|td���ddl}|j��}|r��fd�}n$|j|jj	d�gd	|�}g|D]}||�r�|^q�Sg|D]}|^q�SdS(
sT``subrepo([pattern])``
    Subrepositories whose paths match the given pattern.
    iis"subrepo takes at most one arguments*subrepo requires a pattern or no argumentsi�Ncs
|�kS(N((R%(tpat(s5/sys/lib/python2.7/site-packages/mercurial/fileset.pyR0�stRO(
R?RROtsortedtsubstateR*tmatchtpatkindRWtroot(R,RROtsstatetmatchmodtfastR0tsub((R�s5/sys/lib/python2.7/site-packages/mercurial/fileset.pytsubrepo�s	$#RBRNRGR�RDR�R�texecRdRFR_RARCRYRRSRER[R�tmatchctxcBsDeZddd�Zd�Zd�Zd�Zd�Zd�ZRS(cCs||_||_||_dS(N(ROR/t_status(tselfROR/R@((s5/sys/lib/python2.7/site-packages/mercurial/fileset.pyt__init__�s		cCs|jS(N(R�(R�((s5/sys/lib/python2.7/site-packages/mercurial/fileset.pyR@�scCs|jj|�S(N(ROR�(R�tpatterns((s5/sys/lib/python2.7/site-packages/mercurial/fileset.pyR.�scCs&g|D]}||jkr|^qS(N(R/(R�tfilesR1((s5/sys/lib/python2.7/site-packages/mercurial/fileset.pytfilter�scsr�jdk	rCt�jd��t�jd�jd��nt��t�����fd��jD�S(Niiic3s<|]2}|�jkr$|�ks0|�kr|VqdS(N(RO(t.0R1(RCR�RE(s5/sys/lib/python2.7/site-packages/mercurial/fileset.pys	<genexpr>�s(R�RR9R/(R�((RCR�REs5/sys/lib/python2.7/site-packages/mercurial/fileset.pyRL�s!		cCst|j|j|�|j�S(N(R�ROR�R�(R�R�((s5/sys/lib/python2.7/site-packages/mercurial/fileset.pyR3�sN(	t__name__t
__module__RR�[email protected]�RLR3(((s5/sys/lib/python2.7/site-packages/mercurial/fileset.pyR��s					cCs}t|t�ry|ddkrN|dddkrN|dd|krNtSnx(|dD]}t||�rYtSqYWntS(NiRiR(t
isinstancettupletTruet_intreetFalse(tfuncsttreeR%((s5/sys/lib/python2.7/site-packages/mercurial/fileset.pyR��s$c
Cs?t|�\}}|t|�kr?tjtd�|��ntdddddddg|�s�|j�dkrtt|�rtdg|�}tdg|�}|j	}|j
|j�|d|d|dt�}g}xB|D]}	|j
|	�q�n$d}t|j|jg���}tt|||�|�S(	Ns
invalid tokenRARBRCRDRERFRG(tparseRRRRR�RTRt_existingcallersRWR@tp1R�textendRtwalkR�R-R�(
ROR�R�R"RERFRR@R/R$((s5/sys/lib/python2.7/site-packages/mercurial/fileset.pyt
getfileset�s"!	
(sgroupiR(sfunciR(snegatei(Ri(snoti
(snoti
(sandi(sandi(sori(sori(sori(slisti(iNN(ssymbol(sstring(iNNiiiiiii@i@(9tparserRRMRUR`ti18nRRtelementsR9R RR(R�R*R-R2R5R8R:R;R>RARBRCRDRERFRGRRIR?RNRRRSRYR[R_RdtdictRnRuRzRR�R�R�R�RHR+tobjectR�R�R�R�tvaluest
i18nfunctions(((s5/sys/lib/python2.7/site-packages/mercurial/fileset.pyt<module>s�<


	1																	
	
													
		&			
	

			

Bell Labs OSI certified Powered by Plan 9

(Return to Plan 9 Home Page)

Copyright © 2021 Plan 9 Foundation. All Rights Reserved.
Comments to [email protected].