Viewing File: /opt/alt/python38/lib/python3.8/site-packages/click/__pycache__/_compat.cpython-38.pyc

U

WP@s0ddlZddlZddlZddlZddlZddlmZejddkZej	
dZdZe
dZddZd	d
ZddZd
dZGdddejZGdddeZer<eZeZeZeefZddZeZddZ e
dZ!erddl"Z"ddZ#nddZ#ddZ$ddZ%dd Z&d!d"Z'dld#d$Z(dmd%d&Z)dnd'd(Z*d)d*Z+nddlZeZe,ZefZe-Zd+dZ$d,dZd-dZ dod/d0Z.dpd1d2Z/d3d4Z0d5d6Z1d7d8Z2d9d:Z3d;d<Z4d=d>Z5d?dZ%d@d Z&dAd"Z'dqdBd$Z(drdCd&Z)dsdDd(Z*dEd*Z+dtdFdGZ6dudJdKZ7e8edLrej9Z:dMZ;nej<Z:eZ;GdNdOdOeZ=dZ>dZ?dZ@dPdQZAdvdRdSZBerdTZdUdVlCmDZDdWdXZEerdwdZd[Zzddl?Z?WneFk
rYnXeZGdxd\d]Z>d^d_Z@nd`dXZEdadZDdbdcZHdddeZIdfdgZJeJdhde(ZKeJdide)ZLeJdjde*ZMe%e&e'dkZNe(e)e*dkZOdS)yNWeakKeyDictionarywinPz\[((?:\d|;)*)([a-zA-Z])cCstptSN)sysgetfilesystemencodinggetdefaultencodingrr/_compat.pyget_filesystem_encodingsr
cCs,|dkrt|}|dkrd}t|||ddS)NreplaceT)line_buffering)get_best_encoding_NonClosingTextIOWrapper)streamencodingerrorsrrr_make_text_streamsrcCs.zt|jdkWStk
r(YdSXdS)z$Checks if a given encoding is ascii.asciiFN)codecslookupnameLookupError)rrrris_ascii_encodingsrcCs$t|ddpt}t|r dS|S)z1Returns the default stream encoding if not found.rNutf-8)getattrrr
rrrvrrrr&src@s8eZdZddZer$ddZddZddZd	d
ZdS)rcKs(t||_}tjj||||f|dSr)_FixupStream_streamio
TextIOWrapper__init__)selfrrrZextrarrrr$0sz!_NonClosingTextIOWrapper.__init__cCsRt|tst|rDz|Wntk
r2YnX|jt|Stj||Sr)	
isinstancestris_bytesflush	Exceptionbufferwriter"r#r%xrrrr,8sz_NonClosingTextIOWrapper.writecCs|D]}||qdSr)r,)r%lineslinerrr
writelinesAsz#_NonClosingTextIOWrapper.writelinescCs&z|Wntk
r YnXdSr)detachr*r%rrr__del__Esz _NonClosingTextIOWrapper.__del__cCs
|jSr)r!isattyr3rrrr5Ksz_NonClosingTextIOWrapper.isattyN)	__name__
__module____qualname__r$PY2r,r1r4r5rrrrr.s	rc@s@eZdZdZddZddZddZdd	Zd
dZdd
Z	dS)r zThe new io interface needs more from streams than streams
    traditionally implement.  As such, this fix-up code is necessary in
    some circumstances.
    cCs
||_dSr)r!)r%rrrrr$Vsz_FixupStream.__init__cCst|j|Sr)rr!r%rrrr__getattr__Ysz_FixupStream.__getattr__cCs:t|jdd}|dk	r||Str.|j|S|j|S)Nread1)rr!r9readlineread)r%sizefrrrr<\sz_FixupStream.read1cCsHt|jdd}|dk	r|Sz|jdWntk
rBYdSXdS)NreadablerFT)rr!r>r*r-rrrrAgsz_FixupStream.readablecCspt|jdd}|dk	r|Sz|jdWn>tk
rjz|jdWntk
rdYYdSXYnXdS)NwritableFT)rr!r,r*r-rrrrBqsz_FixupStream.writablecCsNt|jdd}|dk	r|Sz|j|jWntk
rHYdSXdS)NseekableFT)rr!seektellr*r-rrrrE~sz_FixupStream.seekableN)
r6r7r8__doc__r$r;r<rArBrErrrrr Ps

r cCs|Sr)	iteritemsr.rrr<lambda>rDrKcCst|ttfSr)r&r+	bytearrayrJrrrr(sr(z^[a-zA-Z_][a-zA-Z0-9_]*$cCs4z|}Wntk
r YnXt|tj|Sr)filenor*msvcrtZsetmodeosZO_BINARY)r@rMrrrset_binary_modesrPcCs|SrrrJrrrrKrDcCst|dk	Sr)_identifier_researchrJrrrisidentifiersrScCs
ttjSr)rPrstdinrrrrget_binary_stdinsrUcCs
ttjSr)rPrstdoutrrrrget_binary_stdoutsrWcCs
ttjSr)rPrstderrrrrrget_binary_stderrsrYcCs(ttj||}|dk	r|Sttj||Sr)_get_windows_console_streamrrTrrrrrrrget_text_stdinsr\cCs(ttj||}|dk	r|Sttj||Sr)rZrrVrr[rrrget_text_stdoutsr]cCs(ttj||}|dk	r|Sttj||Sr)rZrrXrr[rrrget_text_stderrsr^cCst|tr|td}|S)Nr)r&bytesdecoder
valuerrrfilename_to_uis
rccCs|Sr)rSrJrrrrKrDcCst|Sr)iteritemsrJrrrrKrDcCst|tttfSr)r&r_
memoryviewrLrJrrrr(sFcCs0zt|dtWStk
r*|YSXdSNr)r&r>r_r*rdefaultrrr_is_binary_readersrjcCsTz|dWn@tk
rNz|dWYdStk
rDYnX|YSXdS)NrDrCFT)r,r*rhrrr_is_binary_writers

rkcCs4t|dr|St|dd}|dk	r0t|dr0|SdSNFr+T)rjrrZbufrrr_find_binary_readers

rncCs4t|dr|St|dd}|dk	r0t|dr0|SdSrl)rkrrmrrr_find_binary_writers

rocCstt|ddpdS)z3A stream is misconfigured if its encoding is ASCII.rNr)rrrrrr_stream_is_misconfiguredsrqcCs@t|dd}t|dd}||kr,||kr,dS|dkr<|dk	SdS)NrrTF)r)rrrZstream_encodingZ
stream_errorsrrr_is_compatible_text_streamsrrcCs`t|dr|}n8|dkr$t|s$|St|||r4|St|}|dkrH|S|dkrTd}t|||SNFr)rjrqrrrnr)Ztext_readerrrZ
binary_readerrrr_force_correct_text_reader's
rtcCs`t|dr|}n8|dkr$t|s$|St|||r4|St|}|dkrH|S|dkrTd}t|||Srs)rkrqrrror)Ztext_writerrrZ
binary_writerrrr_force_correct_text_writerCs
rucCsttj}|dkrtd|S)Nz6Was not able to determine binary stream for sys.stdin.)rnrrTRuntimeError)readerrrrrU_s
cCsttj}|dkrtd|S)Nz7Was not able to determine binary stream for sys.stdout.)rorrVrvwriterrrrrWfs
cCsttj}|dkrtd|S)Nz7Was not able to determine binary stream for sys.stderr.)rorrXrvrxrrrrYms
cCs(ttj||}|dk	r|Sttj||Sr)rZrrTrtr[rrrr\tscCs(ttj||}|dk	r|Sttj||Sr)rZrrVrur[rrrr]zscCs(ttj||}|dk	r|Sttj||Sr)rZrrXrur[rrrr^scCs2t|tr|td}n|dddd}|S)Nrrsurrogateescape)r&r_r`r
encoderarrrrcs
cCsBt|dr|j}n|dk	r |}nt|}t|tr>|dd}|S)Nstrerrorrr)hasattrr|r'r&r_r`)erimsgrrr
get_streerrors

rrstrictc	Cs|dkrTd|kr2d|kr"tdfSt||ddfSd|krDtdfSt||ddfS|s|dkrnt||dfStj||||ddfSd|krtdd	|krtd
d|krtdddl}|jt	j
|d
d\}}|dk	rtj||||d}nt	||}t
|||dfS)N-wbF)rrTazAppending to an existing file is not supported, because that would involve an expensive `copy`-operation to a temporary file. Open the file in normal `w`-mode and copy explicitly if that's what you're after.r.z&Use the `overwrite`-parameter instead.z,Atomic writes only make sense with `w`-mode.rz.__atomic-write)dirprefix)rWr]rUr\openr"
ValueErrortempfileZmkstemprOpathdirnamefdopen_AtomicFile)	filenamemoderrZatomicrfdtmp_filenamer@rrropen_streams8


rrTc@sJeZdZddZeddZdddZdd	Zd
dZdd
Z	ddZ
dS)rcCs||_||_||_d|_dSNF)_f
_tmp_filename_real_filenameclosed)r%r@rZ
real_filenamerrrr$sz_AtomicFile.__init__cCs|jSr)rr3rrrrsz_AtomicFile.nameFcCsV|jr
dS|jts>zt|jWntk
r<YnXt|j	|jd|_dS)NT)
rrclose_can_replacerOremoverOSError_replacer)r%deleterrrrs
z_AtomicFile.closecCst|j|Sr)rrr:rrrr;sz_AtomicFile.__getattr__cCs|Srrr3rrr	__enter__sz_AtomicFile.__enter__cCs|j|dk	ddS)N)r)r)r%exc_type	exc_valuetbrrr__exit__sz_AtomicFile.__exit__cCs
t|jSr)reprrr3rrr__repr__sz_AtomicFile.__repr__N)F)r6r7r8r$propertyrrr;rrrrrrrrs

rcCstd|S)NrC)_ansi_resubrarrr
strip_ansisrcCs&|dkr |dkrtj}t|S|Sr)rrTr5)rcolorrrrshould_strip_ansis

rO)rZcCsddl}|Srg)localeZgetpreferredencoding)rrrr_get_argv_encodingsrrCcCs2tj|rt}||t}|dS)Nz
)rrXr)_default_text_stdoutr,_default_text_stdinr=rstrip)promptrVrTrrr	raw_inputs

rcszt|}Wntk
r&d}YnX|dk	r4|St||}tj||dj}|jfdd}||_z|t|<Wntk
rYnX|S)aThis function wraps a stream so that calls through colorama
            are issued to the win32 console API to recolor on demand.  It
            also ensures to reset the colors if a write call is interrupted
            to not destroy the console afterwards.
            N)stripcs&z
|WSYnXdSr)Z	reset_all)sZ_writeZansi_wrapperrr_safe_write9s

z'auto_wrap_for_ansi.<locals>._safe_write)_ansi_stream_wrappersgetr*rcoloramaZAnsiToWin32rr,)rrcachedrrrrrrauto_wrap_for_ansi(s"

rcCs*tjtjjj}|j|j|j|jfSr)	rZwin32ZGetConsoleScreenBufferInfoZSTDOUTZsrWindowZRightZLeftZBottomZTop)rrrrget_winterm_sizeGsrcCsttjddptS)Nr)rrrTr
rrrrrLscGsdSrrrJrrrrKOrDcCstt|Sr)lenrrJrrrterm_lenRsrcCs&z
|WStk
r YdSXdSr)r5r*rprrrr5Vs
r5cstfdd}|S)Ncsf}z|}Wntk
r,d}YnX|dk	r:|S}z||<Wntk
r`YnX|Sr)rr*rcachesrc_funcwrapper_funcrrfunc_s
z&_make_cached_stream_func.<locals>.funcr)rrrrrr_make_cached_stream_func]srcCstjSr)rrTrrrrrKqrDcCstjSr)rrVrrrrrKsrDcCstjSr)rrXrrrrrKurD)rTrVrX)NN)NN)NN)F)F)NN)NN)NN)N)rNrF)NN)rC)N)Prer"rOrrweakrefrversion_infor9platform
startswithZWINZDEFAULT_COLUMNScompilerr
rrrr#robjectr ZunicodeZ	text_typer'r_rZstring_typesrIZxrangeZ
range_typer(rQrNrPrSrUrWrYr\r]r^rcinputrangerjrkrnrorqrrrtrurrr}rrrrenamerrrrrrZ_winconsolerZrImportErrorrrr5rrrZ_default_text_stderrZbinary_streamsZtext_streamsrrrr<module>s
	"9

	








	


1%




Back to Directory File Manager