B 0‘c~)ã@s¨ddlZddlZddlmZmZddddgZGdd„dƒZGdd„deƒZdd d„Ze d kr¤ddl Z e   ¡Z e j d d d de  ¡Zejs’ejjr˜dZndZeeƒdS)éN)ÚCommandCompilerÚcompile_commandÚInteractiveInterpreterÚInteractiveConsoleÚinteractrc@sBeZdZddd„Zddd„Zdd „Zdd d „Zd d „Zdd„ZdS)rNcCs$|dkrdddœ}||_tƒ|_dS)NZ __console__)Ú__name__Ú__doc__)ÚlocalsrÚcompile)Úselfr ©r ú)/opt/alt/python37/lib64/python3.7/code.pyÚ__init__s  zInteractiveInterpreter.__init__úÚsinglec CsRy| |||¡}Wn$tttfk r6| |¡dSX|dkrDdS| |¡dS)NFT)r Ú OverflowErrorÚ SyntaxErrorÚ ValueErrorÚshowsyntaxerrorÚruncode)r ÚsourceÚfilenameÚsymbolÚcoder r r Ú runsource&s  z InteractiveInterpreter.runsourcecCs>yt||jƒWn(tk r&‚Yn| ¡YnXdS)N)Úexecr Ú SystemExitÚ showtraceback)r rr r r rMs zInteractiveInterpreter.runcodec Cs¬t ¡\}}}|t_|t_|t_|rp|tkrpy|j\}\}}}} Wntk rVYnXt||||| fƒ}|t_tjtj kršt   ||¡} |  d  | ¡¡nt |||¡dS)NÚ)ÚsysÚexc_infoÚ last_typeÚ last_valueÚlast_tracebackrÚargsrÚ excepthookÚ__excepthook__Ú tracebackÚformat_exception_onlyÚwriteÚjoin) r rÚtypeÚvalueÚtbÚmsgZdummy_filenameÚlinenoÚoffsetÚlineÚlinesr r r r`s    z&InteractiveInterpreter.showsyntaxerrorcCs|t ¡\t_t_}}|t_zPt |d|d|j¡}tjtj krT|  d  |¡¡nt |d|d|¡Wdd}}XdS)Nrér) rr r!r"r#r'Úformat_exceptionÚtb_nextr%r&r)r*)r Zlast_tbZeir2r r r rƒs z$InteractiveInterpreter.showtracebackcCstj |¡dS)N)rÚstderrr))r Údatar r r r)˜szInteractiveInterpreter.write)N)rr)N) rÚ __module__Ú __qualname__rrrrrr)r r r r rs   ' #c@s:eZdZddd„Zdd„Zddd„Zd d „Zdd d „ZdS)rNú cCst ||¡||_| ¡dS)N)rrrÚ resetbuffer)r r rr r r rªs zInteractiveConsole.__init__cCs g|_dS)N)Úbuffer)r r r r r;¸szInteractiveConsole.resetbuffercCsPy tjWntk r$dt_YnXy tjWntk rJdt_YnXd}|dkrx| dtjtj||jjf¡n|rŽ| dt |ƒ¡d}x‚yP|r¢tj}ntj}y|  |¡}Wn t k rÖ| d¡PYn X|  |¡}Wq”t k r| d¡| ¡d}Yq”Xq”W|dkr4| d |jj¡n|d krL| d|¡dS) Nz>>> z... zFType "help", "copyright", "credits" or "license" for more information.zPython %s on %s %s (%s) z%s rÚ z KeyboardInterrupt znow exiting %s... r)rZps1ÚAttributeErrorZps2r)ÚversionÚplatformÚ __class__rÚstrÚ raw_inputÚEOFErrorÚpushÚKeyboardInterruptr;)r ÚbannerÚexitmsgZcprtÚmoreÚpromptr1r r r r¼sF         zInteractiveConsole.interactcCs6|j |¡d |j¡}| ||j¡}|s2| ¡|S)Nr=)r<Úappendr*rrr;)r r1rrIr r r rEòs   zInteractiveConsole.pushrcCst|ƒS)N)Úinput)r rJr r r rCs zInteractiveConsole.raw_input)Nr:)NN)r)rr8r9rr;rrErCr r r r r¢s   6cCsJt|ƒ}|dk r||_n"y ddl}Wntk r8YnX| ||¡dS)Nr)rrCÚreadlineÚ ImportErrorr)rGZreadfuncZlocalrHZconsolerMr r r rs Ú__main__z-qÚ store_truez*don't print version and copyright messages)ÚactionÚhelpr)NNNN)rr'ZcodeoprrÚ__all__rrrrÚargparseÚArgumentParserÚparserÚ add_argumentÚ parse_argsr$ÚqÚflagsÚquietrGr r r r Ús$t