o ?Og@s2 ddlmZGdddeZGdddeZdS))tokenc@seZdZ ddZddZdS) ParseErrorcCs4t|d||||f||_||_||_||_dS)Nz!%s: type=%r, value=%r, context=%r) Exception__init__msgtypevaluecontext)selfrrrr r :/opt/alt/python310/lib64/python3.10/lib2to3/pgen2/parse.pyrs  zParseError.__init__cCst||j|j|j|jffSN)rrrr )r r r r __reduce__szParseError.__reduce__N)__name__ __module__ __qualname__rrr r r r rs rc@sJeZdZ dddZdddZddZdd Zd d Zd d ZddZ dS)ParserNcCs ||_|p dd|_dS)NcSs|Sr r )grammarnoder r r Zsz!Parser.__init__..)rconvert)r rrr r r r<szParser.__init__cCsJ |dur |jj}|ddgf}|jj|d|f}|g|_d|_t|_dS)N)rstartdfasstackrootnodeset used_names)r rnewnodeZ stackentryr r r setup\s   z Parser.setupcCs< ||||} |jd\}}}|\}} ||} | D]e\} } |jj| \} }|| kr`|||| || }||d|fgkr]||jsHdS|jd\}}}|\}} ||d|fgks>dS| dkr|jj| }|\}}||vr|| |jj| | |nqd|f| vr||jstd|||ntd|||q )NTrFztoo much inputz bad input) classifyrrlabelsshiftpoprpushr)r rrr ilabeldfastaterZstatesfirstZarcsinewstatetvZitsdfaZ itsstatesZitsfirstr r r addtokentsF   zParser.addtokencCsZ |tjkr|j||jj|}|dur|S|jj|}|dur+td||||S)Nz bad token) rNAMEraddrkeywordsgettokensr)r rrr r'r r r r"s  zParser.classifyc CsV |jd\}}}|||df}||j|}|dur!|d||||f|jd<dSNr )rrrappend) r rrr,r r(r)rrr r r r$s z Parser.shiftc CsD |jd\}}}|d|gf}|||f|jd<|j|d|fdS)Nr r)rr6) r rZnewdfar,r r(r)rrr r r r&s  z Parser.pushcCsh |j\}}}||j|}|dur2|jr(|jd\}}}|d|dS||_|j|j_dSdSr5)rr%rrr6rr)r ZpopdfaZpopstateZpopnoderr(r)rr r r r%sz Parser.popr ) rrrrrr/r"r$r&r%r r r r rs  0 rN)rrrobjectrr r r r s