bgdZddlZddlZddlZddlmZddlmZmZm Z ddl m Z ddl m Z mZmZmZmZddlmZejdZejd Gd d ZGd deZeZdS)z&Defines any IO utilities used by isortN)contextmanager)BytesIOStringIO TextIOWrapper)Path)AnyCallableIteratorTextIOUnion)UnsupportedEncodings.^[ \t\f]*#.*?coding[:=][ \t]*([-_.a-zA-Z0-9]+)T)frozenc.eZdZUeed<eed<eed<edeeefde ge fdefdZ edededdfd Z e defd Zedeeefdefd Zeedeeefdedfd Zd S)Filestreampathencodingfilenamereadlinereturncr tj|dS#t$rt|wxYw)Nr)tokenizedetect_encoding Exceptionr )rrs Y/builddir/build/BUILD/cloudlinux-venv-1.0.7/venv/lib/python3.11/site-packages/isort/io.pyrzFile.detect_encodingsF 0+H55a8 8 0 0 0%h// / 0s6contentsct|t|dj}tt |t ||S)Nzutf-8rrr)rrrencoderrrresolve)rrrs r from_contentszFile.from_contentss^'''(//':R:R2S2S2\]]8H--DNN4J4J4L4LW_````c@|jjdS)N.)rsuffixlstrip)selfs r extensionzFile.extension!sy&&s+++r"c t|d} t||j}|dt ||dd}d|_|S#t$r|wxYw)z`Open a file in read only mode using the encoding detected by detect_encoding(). rbrT)line_bufferingnewliner) openrrrseekrmoderclose)rbufferrtexts r_openz File._open%s h%% ++HfoFFH KKNNN $PRSSSDDIK    LLNNN  s AA## Bc# Kt|}d} t|}t|||jV||dSdS#||wwxYw)Nr)rr rr5rr2)r file_pathrs rreadz File.read5sNN**,,  ZZ **Ff9vOOO O O O! "!v! "s 3A44B N)__name__ __module__ __qualname__r __annotations__rstr staticmethodr r bytesrr!propertyr(rr5rr r8r"rrrsW NNN JJJMMM0%T "20hr5y>Q0VY000\0 aasavaaa\a,3,,,X, c4i( ]   \ uS$Y'HV,<^\r"rc"eZdZdededdfdZdS)_EmptyIOargskwargsrNcdS)NrA)r'rDrEs rwritez_EmptyIO.writeCs r")r9r:r;rrGrAr"rrCrCBs= 3 # $      r"rC)__doc__ dataclassesrer contextlibriorrrpathlibrtypingrr r r r isort.exceptionsr compile_ENCODING_PATTERN dataclassrrCEmptyrAr"rrTs;,, %%%%%%//////////99999999999999000000BJQRRd###///////$#/d     x    r"