U fB@sddlZddlZddlmZmZmZmZmZmZm Z m Z d/e e ee dddZ e dZe dejdZe d Ze d Ze d Ze d Ze d Ze dZe dZe dZe dZe dZe dZe dZe dZGdddeZGdddeZGdddZ Gddde!Z"GdddZ#ee e e d d!d"Z$e#ee d#d$d%Z%e#e d#d&d'Z&e#e d#d(d)Z'e#ed#d*d+Z(ee eed,d-d.Z)dS)0N)IOIteratorMatch NamedTupleOptionalPatternSequenceTuple)string extra_flagsreturncCst|tj|BSN)recompileUNICODE)r r r>/opt/alt/python38/lib/python3.8/site-packages/dotenv/parser.py make_regexsrz (\r\n|\n|\r)z\s*)r z [^\S\r\n]*z(?:export[^\S\r\n]+)?z '([^']+)'z ([^=\#\s]+)z (=[^\S\r\n]*)z'((?:\\'|[^'])*)'z"((?:\\"|[^"])*)"z ([^\r\n]*)z(?:[^\S\r\n]*#[^\r\n]*)?z[^\S\r\n]*(?:\r\n|\n|\r|$)z[^\r\n]*(?:\r|\n|\r\n)?z\\[\\'\"abfnrtv]z\\[\\']c@seZdZUeed<eed<dS)Originalr lineN)__name__ __module__ __qualname__str__annotations__intrrrrrs rc@s6eZdZUeeed<eeed<eed<eed<dS)BindingkeyvalueoriginalerrorN)rrrrrrrboolrrrrr!s   rc@sPeZdZeeddddZeddddZdddd d Zedd d d Z dS)PositionN)charsrr cCs||_||_dSr r#r)selfr#rrrr__init__)szPosition.__init__r cCs |dddS)Nrr$r)clsrrrstart-szPosition.start)otherr cCs|j|_|j|_dSr r$)r%r+rrrset1sz Position.set)r r cCs0|jt|7_|jttt|7_dSr )r#lenrrfindall_newline)r%r rrradvance5szPosition.advance) rrrrr& classmethodr*r,rr0rrrrr"(s r"c@s eZdZdS)ErrorN)rrrrrrrr2:sr2c@seZdZeeddddZedddZdddd Ze dd d Z e ed d dZ e ed ddZ eeeedddZdS)ReaderNstreamr cCs"||_t|_t|_dSr )readr r"r*positionmark)r%r5rrrr&?s  zReader.__init__r'cCs|jjt|jkSr )r7r#r-r r%rrrhas_nextDszReader.has_nextcCs|j|jdSr )r8r,r7r9rrrset_markGszReader.set_markcCs"t|j|jj|jj|jjdS)N)r r)rr r8r#r7rr9rrr get_markedJszReader.get_marked)countr cCs|j|jj|jj|Sr )r r7r#)r%r=rrrpeekPsz Reader.peekcCs>|j|jj|jj|}t||kr.td|j||S)Nzread: End of string)r r7r#r-r2r0)r%r=resultrrrr6Ss   z Reader.read)regexr cCsH||j|jj}|dkr"td|j|j|||S)Nzread_regex: Pattern not found) matchr r7r#r2r0r*endgroups)r%r@rArrr read_regexZs zReader.read_regex)rrrrrr&r!r:r;rr<rr>r6rrrDrrrrr3>sr3)r@r r cCs tttddd}|||S)N)rAr cSst|ddS)Nrzunicode-escape)codecsdecodegroup)rArrr decode_matchcsz$decode_escapes..decode_match)rrsub)r@r rHrrrdecode_escapesbsrJ)readerr cCs<|d}|dkrdS|dkr,|t\}n |t\}|S)Nr(#')r>rD_single_quoted_key _unquoted_key)rKcharrrrr parse_keyis  rQcCs|t\}tdd|S)Nz\s+#.*)rD_unquoted_valuerrIrstrip)rKpartrrrparse_unquoted_valuets rVcCs^|d}|dkr(|t\}tt|S|dkrF|t\}tt|S|dkrRdSt|SdS)Nr(rM")rR  rR)r>rD_single_quoted_valuerJ_single_quote_escapes_double_quoted_value_double_quote_escapesrV)rKrPrrrr parse_valueys     r^c Cs|z|t|s2tdd|ddWS|tt|}|t| ddkrp|t t |}nd}|t |t t|||ddWStk r|ttdd|ddYSXdS)NF)rrrr r(=T)r;rD_multiline_whitespacer:rr<_exportrQ _whitespacer> _equal_signr^_comment _end_of_liner2 _rest_of_line)rKrrrrr parse_bindingsB        rgr4ccs t|}|rt|VqdSr )r3r:rg)r5rKrrr parse_streamsrh)r)*rErtypingrrrrrrrr rrrr/ MULTILINEr`rbrarNrOrcrZr\rSrdrerfr]r[rrr" Exceptionr2r3rJrQrVr^rgrhrrrrs:($ %