U e5d ã@sJddlZddlZddlZddlZddlZddlZddlZddlZddl Z ddl m Z Gdd„dej ƒZ Gdd„dejƒZedk�rFe ¡Ze e¡d eiZd D]Zeƒeee<q e eeƒZdad az ddlZWnek ræYnXeƒZd e_e ¡z e ¡Wn6e k �r>t�r6t !¡�s6t "¡d aYqüYqüX�qFqüdS) éNé)Úfuturescs$eZdZ‡fdd„Zdd„Z‡ZS)ÚAsyncIOInteractiveConsolecs*tƒ |¡|jjjtjO_||_dS)N)ÚsuperÚ__init__ÚcompileZcompilerÚflagsÚastZPyCF_ALLOW_TOP_LEVEL_AWAITÚloop)ÚselfÚlocalsr ©Ú __class__©ú(/usr/lib64/python3.8/asyncio/__main__.pyrs z"AsyncIOInteractiveConsole.__init__csttj ¡‰‡‡‡fdd„}t |¡z ˆ ¡WStk rD‚Yn,tk rntrbˆ  d¡nˆ  ¡YnXdS)Nc sdadat ˆˆj¡}z |ƒ}Wnztk r6‚Ynftk rj}zdaˆ |¡WY¢dSd}~XYn2tk rš}zˆ |¡WY¢dSd}~XYnXt   |¡s´ˆ  |¡dSzˆj   |¡at tˆ¡Wn.tk �rþ}zˆ |¡W5d}~XYnXdS)NFT)Ú repl_futureÚrepl_future_interruptedÚtypesÚ FunctionTyper Ú SystemExitÚKeyboardInterruptZ set_exceptionÚ BaseExceptionÚinspectZ iscoroutineZ set_resultr Z create_taskrZ _chain_future)ÚfuncÚcoroZexÚexc©ÚcodeZfuturer rrÚcallbacks,      z3AsyncIOInteractiveConsole.runcode..callbackz KeyboardInterrupt ) Ú concurrentrZFuturer Úcall_soon_threadsafeÚresultrrrÚwriteZ showtraceback)r rrrrrÚruncodes    z!AsyncIOInteractiveConsole.runcode)Ú__name__Ú __module__Ú __qualname__rr#Ú __classcell__rrr rrs rc@seZdZdd„ZdS)Ú REPLThreadc CsZz6dtj›dtj›dt tddƒ›d �}t j |d d �W5tjddtd�t tj¡XdS) NÚignorez ^coroutine .* was never awaited$)ÚmessageÚcategoryz asyncio REPL z on zy Use "await" directly instead of "asyncio.run()". Type "help", "copyright", "credits" or "license" for more information. Zps1z>>> zimport asynciozexiting asyncio REPL...)ÚbannerZexitmsg) ÚwarningsÚfilterwarningsÚRuntimeWarningr r ÚstopÚsysÚversionÚplatformÚgetattrÚconsoleZinteract)r r,rrrÚrunFs"ÿþ ýzREPLThread.runN)r$r%r&r6rrrrr(Dsr(Ú__main__Úasyncio>Ú __builtins__Ú__spec__r$Ú__file__Ú __loader__Ú __package__FT)#r r8rZconcurrent.futuresrrr1Z threadingrr-ÚrZInteractiveConsolerZThreadr(r$Znew_event_loopr Zset_event_loopZ repl_localsÚkeyr r5rrÚreadlineÚ ImportErrorZ repl_threadZdaemonÚstartZ run_foreverrZdoneZcancelrrrrÚsF 6