Viewing File: /opt/alt/python35/lib64/python3.5/__pycache__/ntpath.cpython-35.opt-2.pyc



]	Y'@sddlZddlZddlZddlZddlTddddddd	d
ddd
ddddddddddddddddddd d!d"d#d$d%d&d'd(d)g'Zd*Zd+Zd*Zd,Zd-Z	d.Z
d/Zd0ejkrd1Zd2Z
d3d4Zd5dZd6dZd7dZd8dZd9dZd:dZd;dZejje_d<d	Zd=d
Zd>dZd?dZydd@lmZWnek
rdZYnXdAdZdBdZ dCdZ!dDdZ"yddElm#Z#Wnek
r,dFdZ$Yn
XdGdZ$e$Z%e&edHoaej'dIdJkZ(ddKd%Z)dLd)Z*y9ej'ddJdRkrddNlm+Z+neWn$e,efk
rdOdPZ+YnXyddQlm-Z.Wnek
rYnXdS)SN)*normcaseisabsjoin
splitdrivesplitsplitextbasenamedirnamecommonprefixgetsizegetmtimegetatimegetctimeislinkexistslexistsisdirisfileismount
expanduser
expandvarsnormpathabspathsplitunccurdirpardirseppathsepdefpathaltsepextsepdevnullrealpathsupports_unicode_filenamesrelpathsamefilesameopenfilesamestat
commonpath.z..\;/z.;C:\binZcez\WindowsZnulcCst|trdSdSdS)Ns\/z\/)
isinstancebytes)pathr1+/opt/alt/python35/lib64/python3.5/ntpath.py
_get_bothseps#sr3cCsy?t|tr(|jddjS|jddjSWnIttfk
rt|ttfstd|jjdYnXdS)N/s\r-r+z0normcase() argument must be str or bytes, not %r)	r.r/replacelower	TypeErrorAttributeErrorstr	__class____name__)sr1r1r2r-scCs6t|d}t|dko5|dt|kS)Nr)rlenr3)r<r1r1r2rCsc

Gst|tr$d}d}d}nd}d}d}y5|sQ|dd|t|\}}x|D]}t|\}}	|	r|	d|kr|s|r|}|	}qjn?|r||kr|j|jkr|}|	}qj|}|r|d
|kr||}||	}qjW|rb|d|krb|rb|dd|krb|||S||SWn1tttfk
rtjd	||YnXdS)Ns\s\/:r+z\/:rr=rrA)	r.r/rr6r7r8BytesWarninggenericpath_check_arg_types)
r0pathsrsepscolonZresult_driveZresult_pathpZp_driveZp_pathr1r1r2rJsD	


cCstt|dkr`t|tr6d}d}d}nd}d}d}|j||}|dd|dkr,|dd	|kr,|j|d}|dkr|dd|fS|j||d
}||d
kr|dd|fS|dkrt|}|d|||dfS|d
d|kr`|dd|ddfS|dd|fS)
Ns\r4r?r+r-r@rr=rArA)r>r.r/r5find)rHrr rGZnormpindexZindex2r1r1r2rxs,	0cCsaddl}|jdtdt|\}}t|dkrW|dd|fS||fS)Nrz<ntpath.splitunc is deprecated, use ntpath.splitdrive insteadrI)warningswarnDeprecationWarningrr>)rHrMdriver0r1r1r2rs	
cCst|}t|\}}t|}x(|rT||d|krT|d8}q-W|d|||d}}|j|p|}|||fS)Nr=)r3rr>rstrip)rHrFdiheadtailr1r1r2rs!cCs?t|tr%tj|dddStj|dddSdS)Ns\r4.r+r-r*)r.r/rC	_splitext)rHr1r1r2rscCst|dS)Nr=)r)rHr1r1r2r	scCst|dS)Nr)r)rHr1r1r2r
scCsBytj|}Wnttfk
r1dSYnXtj|jS)NF)oslstatOSErrorr8statS_ISLNKst_mode)r0str1r1r2rs
	cCs0ytj|}Wntk
r+dSYnXdS)NFT)rXrYrZ)r0r^r1r1r2rs

	)_getvolumepathnamecCst|}t|}t|\}}|rQ|d|krQ|pP||kS||kradStr|j|t|j|kSdSdS)NrTF)r3rrr_rQ)r0rFrootrestr1r1r2rs"c
Cset|trd}nd}|j|s1|Sdt|}}x0||krv||t|krv|d7}qGWdtjkrtjd}ntdtjkrtjd}nUdtjkr|Sytjd}Wntk
rd}YnXt|tjd}t|tr(tj	|}|dkrStt
||d|}|||dS)	N~~r=HOMEZUSERPROFILEZHOMEPATHZ	HOMEDRIVE)r.r/
startswithr>r3rXenvironKeyErrorrfsencoder
)r0tilderSnuserhomerPr1r1r2r0s0	%
cCst|trd|kr+d|kr+|Sddl}t|j|jdd}d}d}d}d}d}ttd	d}ncd
|krd|kr|Sddl}|j|jd}d}d}d
}d}d
}tj}|dd}	d}
t|}x
|
|kr||
|
d}||kr||
dd}t|}y/|j	|}
|	||d|
d7}	Wqt
k
r|	||7}	|d}
YqXnQ||kr||
d|
d|kr|	|7}	|
d7}
q||
dd}t|}y|j	|}
Wn*t
k
rZ|	||7}	|d}
YqX|d|
}
y<|dkrtjtjtj|
}n
||
}Wn t
k
r||
|}YnX|	|7}	n4||kr||
d|
d|kr|	|7}	|
d7}
q||
d|
d|kr||
dd}t|}y|j	|}
Wn.t
k
r|	|||7}	|d}
YqX|d|
}
y<|dkrtjtjtj|
}n
||
}Wn$t
k
r|||
|}YnX|	|7}	q|dd}
|
d7}
||
|
d}x>|r||kr|
|7}
|
d7}
||
|
d}qKWy<|dkrtjtjtj|
}n
||
}Wnt
k
r||
}YnX|	|7}	|r|
d8}
n
|	|7}	|
d7}
qW|	S)N$%rz_-asciis'{}environb$%'{}r=rI)r.r/string
ascii_lettersdigitsgetattrrXrgr>rL
ValueErrorrifsdecoderh)r0rxZvarcharsquotepercentZbraceZrbraceZdollarrgresrLZpathlencvarvaluer1r1r2ras	 



"




"




"



c	Cst|tr0d}d}d}d}d}nd}d}d	}d
}d}|j|ra|S|j||}t|\}}|j|r||7}|j|}|j|}d
}x|t|kr||s|||kr||=q|||kr|d
krN||d|krN||d|d=|d8}q|d
krs|j|rs||=q|d7}q|d7}qW|r|r|j	|||j
|S)Ns\r4rVs..\\.\\\?\r+r-r*z..\\.\\\?\rr=)rr)rr)r.r/rfr5rlstriprr>endswithappendr)	r0rr rrZspecial_prefixesprefixcompsrSr1r1r2rsD	

 



)_getfullpathnamecCsOt|sEt|tr*tj}ntj}t||}t|S)N)rr.r/rXgetcwdbgetcwdrr)r0cwdr1r1r2rscCsb|r.yt|}WqXtk
r*YqXXn*t|trLtj}ntj}t|S)N)rrZr.r/rXrrr)r0r1r1r2rs
getwindowsversionrJrIcCst|tr$d}d}d}nd}d}d}|dkrH|}|sZtdy4tt|}tt|}t|\}}t|\}	}
t|t|	krtd|	|fd	d
|j|D}dd
|
j|D}d}
x@t||D]/\}}t|t|krFP|
d
7}
q!W|gt	||
||
d}|s|St
|SWn7tttt
tfk
rtjd||YnXdS)Ns\rVs..r+r*z..zno path specifiedz&path is on mount %r, start on mount %rcSsg|]}|r|qSr1r1).0xr1r1r2
<listcomp>@s	zrelpath.<locals>.<listcomp>cSsg|]}|r|qSr1r1)rrr1r1r2rAs	rr=r%)r.r/r|rrrrrzipr>rr7r8rBrOrCrD)r0startrrrZ	start_absZpath_absZstart_driveZ
start_restZ
path_driveZ	path_rest
start_list	path_listrSZe1Ze2rel_listr1r1r2r%&sB	%cs(|stdt|dtr:dddndddyfd	d
|D}fdd
|D}y&tfdd
|D\}Wn!tk
rtddYnXttdd
|Ddkrtdt|dj\}}|j}fdd
|D}fdd
|D}t|}t	|}xQt
|D]-\}	}
|
||	kr|d|	}PqW|dt|}|r|n|}|j|SWn+tt
fk
r#tjd|YnXdS)Nz%commonpath() arg is an empty sequencers\r4rVr+r-r*cs.g|]$}t|jjqSr1)rr5r6)rrH)r rr1r2rls	zcommonpath.<locals>.<listcomp>cs%g|]\}}|jqSr1)r)rrRrH)rr1r2rms	c3s+|]!\}}|ddkVqdS)Nr=r1)rrRrH)rr1r2	<genexpr>pszcommonpath.<locals>.<genexpr>z%Can't mix absolute and relative pathscss|]\}}|VqdS)Nr1)rrRrHr1r1r2rwsr=zPaths don't have the same drivecs(g|]}|r|kr|qSr1r1)rr)rr1r2r|s	cs)g|]}fdd|DqS)cs(g|]}|r|kr|qSr1r1)rr)rr1r2r~s	z)commonpath.<locals>.<listcomp>.<listcomp>r1)rr<)rr1r2r~s	r))r|r.r/setr>rr5rminmax	enumeraterr7r8rCrD)rEZdrivesplitssplit_pathsrrPr0commons1s2rSrrr1)r rrr2r)\sD	&
%")_getfinalpathnamecCstt|S)N)rr)fr1r1r2rsr)_isdir)rr)/rXsysr[rC__all__rrr!rrr rbuiltin_module_namesr"r3rrrrrrrrW__doc__r	r
rrntr_ImportErrorrrrrrrr#hasattrrr$r%r)rr8rrr1r1r1r2<module>s|

.3
1p2
64


Back to Directory File Manager