U e5du9 ã @ s¼ d dl Z d dlZdddddddd d ddd gZdad!dddœdd„Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ Z dd„ Z dd „ Zdd „ ZG dd„ dƒZ dd„ Zd"dd „Zdd„ Zed kr¸eƒ dS )#é NÚinputÚcloseÚnextfileÚfilenameÚlinenoÚ filelinenoÚfilenoÚisfirstlineÚisstdinÚ FileInputÚhook_compressedÚhook_encodedFÚ Úr©ÚmodeÚopenhookc C s( t rt jrtdƒ‚t| ||||d�a t S )Nzinput() already activer )Ú_stateÚ_fileÚRuntimeErrorr )ÚfilesÚinplaceÚbackupr r © r ú!/usr/lib64/python3.8/fileinput.pyr S s c C s t } d a | r| ¡ d S ©N)r r )Ústater r r r ` s c C s t stdƒ‚t ¡ S ©Nzno active input())r r r r r r r r h s c C s t stdƒ‚t ¡ S r )r r r r r r r r v s c C s t stdƒ‚t ¡ S r )r r r r r r r r s c C s t stdƒ‚t ¡ S r )r r r r r r r r ‰ s c C s t stdƒ‚t ¡ S r )r r r r r r r r “ s c C s t stdƒ‚t ¡ S r )r r r r r r r r œ s c C s t stdƒ‚t ¡ S r )r r r r r r r r ¥ s c @ sž e Zd Zd(dddœdd„Zdd „ Zd d„ Zdd „ Zdd„ Zdd„ Zdd„ Z dd„ Z dd„ Zdd„ Zdd„ Z dd„ Zdd„ Zd d!„ Zd"d#„ Zd$d%„ Zd&d'„ ZdS ))r NFr r r c C s t |tƒr|f}nBt |tjƒr,t |¡f}n(|d krBtjdd … }|sLd}nt|ƒ}|| _|| _ || _ d | _d | _d | _ d| _d| _d | _d| _d | _|dkr¦tdƒ‚d|krÄdd l}| dtd ¡ || _d|krÞ| d d¡nd| _|�r|rötdƒ‚t|ƒ�std ƒ‚|| _d S )Né )ú-r F)r ZrUÚUÚrbz=FileInput opening mode must be one of 'r', 'rU', 'U' and 'rb'r z'U' mode is deprecatedé r Úwz4FileInput cannot use an opening hook in inplace modez#FileInput openhook must be callable)Ú isinstanceÚstrÚosÚPathLikeÚfspathÚsysÚargvÚtupleÚ_filesÚ_inplaceÚ_backupÚ_savestdoutÚ_outputÚ _filenameÚ_startlinenoÚ_filelinenor Ú_isstdinÚ_backupfilenameÚ ValueErrorÚwarningsÚwarnÚDeprecationWarningÚ_modeÚreplaceÚ_write_modeÚcallableÚ _openhook)Úselfr r r r r r7 r r r Ú__init__» sH ÿ zFileInput.__init__c C s | ¡ d S r ©r ©r? r r r Ú__del__ä s zFileInput.__del__c C s z| ¡ W 5 d| _ X d S )Nr )r, r rB r r r r ç s zFileInput.closec C s | S r r rB r r r Ú __enter__í s zFileInput.__enter__c C s | ¡ d S r rA )r? ÚtypeÚvalueÚ tracebackr r r Ú__exit__ð s zFileInput.__exit__c C s | S r r rB r r r Ú__iter__ó s zFileInput.__iter__c C s6 | ¡ }|r| jd7 _|S | js(t‚| ¡ q d S ©Nr )Ú _readliner3 r Ú StopIterationr ©r? Úliner r r Ú__next__ö s zFileInput.__next__c C sX dd l }|jdtdd� || ¡ kr,tdƒ‚z | ¡ W S tk rR tdƒ‚Y nX d S )Nr zTSupport for indexing FileInput objects is deprecated. Use iterator protocol instead.r" )Ú stacklevelzaccessing lines out of orderzend of input reached)r7 r8 r9 r r rO rL Ú IndexError)r? Úir7 r r r Ú__getitem__ s ü zFileInput.__getitem__c C s¾ | j }d | _ |r|t_| j}d | _z|r0| ¡ W 5 | j}d | _z| `W n tk r\ Y nX z|rr| jsr| ¡ W 5 | j}d | _|r°| js°zt |¡ W n tk r® Y nX d| _X X d S )NF)r/ r) Ústdoutr0 r rK ÚAttributeErrorr5 r. r&